Skip to main content

Convenience wrapper for exonware-xwauth - provides 'import xwauth' alias

Project description

xwauth

OAuth 2.0 / OIDC connector — authorization server primitives, tokens, sessions, federation core, and storage contracts. Concrete IdPs, WebAuthn/MFA, OAuth RP clients, and FastAPI login route mixins ship in sibling package exonware-xwlogin (pip install exonware-xwauth[xwlogin] pulls exonware-xwlogin[handlers]). Ties to xwentity, xwstorage, xwaction where you wire them. Docs in docs/; competitive notes in .references/.

Target dependency direction (0.x migration): xwauth consumes xwlogin; xwlogin must not depend on xwauth once foundation types move — see monorepo REF_41_DEPENDENCY_DIRECTIONS.md (pip cannot cycle both ways until that move completes). Attachment: exonware.xwauth.connectors.login_bridge documents in-process (load_login_package) vs remote (xwlogin-api / HTTP) via LoginRemoteConfig (REF_41 §6). For HTTP clients: pip install exonware-xwauth[login_remote] (pulls httpx).

Company: eXonware.com · Author: eXonware Backend Team · Email: connect@exonware.com

Status Python License


📦 Install

pip install exonware-xwauth
pip install exonware-xwauth[lazy]
pip install exonware-xwauth[full]
pip install exonware-xwauth[xwlogin]   # exonware-xwlogin (IdPs, clients, FastAPI login mixins)
pip install exonware-xwauth[login_remote]   # httpx — HTTP client to xwlogin-api (REF_41 §6)
pip install exonware-xwauth[stack]   # xwjson, xwnode, xwdata, xwentity, xwmodels, xwquery — xwschema is core (REF_41 §8)
pip install "exonware-xwauth[enterprise]"   # SAML + storage + login handlers (self-hosted AS embedding)

After [stack], optional: import exonware.xwauth.stack at process startup to eagerly import xwjsonxwquery (REF_41 §8).

SKUs and extras: docs/REF_39_EDITION_AND_SKUS.md.

Optional: xwauth-server for OAuth endpoints; see docs/ when present.


🚀 Quick start

from exonware.xwauth import *

# OAuth 2.0 flows, grant types, provider integration; entity-aware user/role persistence
# See docs/ and REF_* for full API and server setup

See docs/ for usage, REF_*, and GUIDE_01_USAGE when present.


✨ What you get

Area What's in it
Backend OAuth 2.0 / OpenID Connect; authorization code, client credentials, refresh; custom providers.
Integration xwentity (user/role), xwstorage, xwaction.
Server xwauth-server - OAuth endpoints, multi-tenant.
Security Token encryption, sessions, CSRF, rate limiting.

🌐 Exonware ecosystem advantage

XW-Auth is not only a standalone auth package. It is backed by the broader XW stack, so security, transport, storage, and API behavior stay consistent across services. You can still use xwauth standalone with its core install and your existing stack. Adopting more XW libraries is optional and primarily valuable when you need enterprise and mission-critical patterns with self-managed infrastructure control.

XW library behind XW-Auth Exact added value Competitive edge vs typical auth stacks
XWSystem Shared security contracts, principal normalization, OAuth error payload/status mapping, and codec/serialization plumbing. You avoid framework-locked auth glue and inconsistent claim/error handling across services.
XWStorage Pluggable auth persistence through one provider model (file/local today, extensible backends). You can switch storage strategy without rewriting auth logic around a single ORM or IdP store.
XWJSON Native structured serialization used with XWStorage-backed auth state. Safer, more consistent state handling than ad-hoc JSON blobs spread across handlers.
XWAction Declarative action/route integration for auth handlers and API endpoints. Cleaner endpoint composition than scattering manual route wiring in each framework module.
XWSchema Schema-level validation for security and authorization rule shapes. Stronger policy correctness than relying only on runtime checks and hand-written guards.
XWAPI Error-envelope parity between auth endpoints and the rest of your APIs. Clients get one predictable failure contract instead of separate auth-vs-app error formats.
XWEntity Domain-aligned user/role integration point for identity and authorization models. Your auth layer matches your business entity model instead of living in an isolated user silo.

This ecosystem alignment is the core differentiator: XW-Auth gives OAuth 2.0 features plus platform-level consistency from security primitives to storage and API contracts.


📖 Docs and tests


📜 License and links

Apache-2.0 - see LICENSE. Homepage: https://exonware.com · Repository: https://github.com/exonware/xwauth

⏱️ Async Support

  • xwauth includes asynchronous execution paths in production code.
  • Source validation: 560 async def definitions and 643 await usages under src/.
  • Use async APIs for I/O-heavy or concurrent workloads to improve throughput and responsiveness.

Version: 0.0.1.7 | Updated: 11-Apr-2026

Built with ❤️ by eXonware.com - Revolutionizing Python Development Since 2025

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

xwauth-0.0.1.7.tar.gz (306.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

xwauth-0.0.1.7-py3-none-any.whl (15.6 kB view details)

Uploaded Python 3

File details

Details for the file xwauth-0.0.1.7.tar.gz.

File metadata

  • Download URL: xwauth-0.0.1.7.tar.gz
  • Upload date:
  • Size: 306.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for xwauth-0.0.1.7.tar.gz
Algorithm Hash digest
SHA256 3f6253d9875f14c86f76c5eb9ba8fe06835b9c312f7b5f56885bd8e00b845c1f
MD5 019a0cd756e85c11d04ce728973a9972
BLAKE2b-256 63efed40ddf59cd449abbf5e6e831563bb1abb24e9ac7fa223540e0c5f731991

See more details on using hashes here.

File details

Details for the file xwauth-0.0.1.7-py3-none-any.whl.

File metadata

  • Download URL: xwauth-0.0.1.7-py3-none-any.whl
  • Upload date:
  • Size: 15.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for xwauth-0.0.1.7-py3-none-any.whl
Algorithm Hash digest
SHA256 b3334cdedb3864b178ad453f229ad56c27c21972760510eb1e50847a8957a9b9
MD5 0b29e069d0ca21b089d8c02d79dfb41f
BLAKE2b-256 bf5e8f3da97bc7b6965d214fcf6a220c92e8358a4ca2a6d0f00b161fd9d802c2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page