Skip to main content

Ferrox-Py-Auth

1. Overview (What does this do?)

The ferrox-py-auth module is a specialized extension for the Ferrox ecosystem that provides a comprehensive Identity & Access Management (IAM) suite. It delivers pre-built functionalities for managing user registrations, Single Sign-On (SSO), Role-Based Access Control (RBAC), and compliance with European data privacy laws (GDPR).

2. Philosophy (Why does it exist?)

Authentication and authorization are complex and highly sensitive domains. Re-implementing secure login flows, password hashing, SSO integration, and GDPR-compliant data deletion mechanisms for every new project is not only inefficient but heavily prone to critical security vulnerabilities. This module exists to provide a battle-tested, standardized "plug-and-play" identity solution that adheres to strict zero-trust principles.

3. Target Audience (Who is it for?)

This module is intended for backend engineers and security architects building Enterprise SaaS, financial platforms, or any consumer-facing application where data privacy (like GDPR compliance) and secure access controls are legal or operational requirements.

4. Architecture (How does it work?)

ferrox-py-auth plugs directly into the 7-Layer Onion Request Pipeline of the core ferrox-py framework, specifically occupying Layers 3 (Threat Engine) and 4 (Auth Guards). It registers a set of domain Services (AuthService, GdprService) into the central IoC Container and exposes abstract Data Models (User, UserIdentity) that can be persisted via MongoDB or SQLAlchemy adapters provided by the ferrox-py Data Component.

5. Installation / Setup

This package requires the core ferrox-py framework to function. Install it via pip:

pip install ferrox-py-auth

Ensure you have configured a persistent database layer (either SQL or NoSQL) in your core application to store the user identities.

6. Quickstart (Usage)

from ferrox_py.core.app import FerroxApp
from ferrox_py.core.container import Container
from ferrox_py_auth import AuthModule

# Initialize the IoC container
container = Container()

# The AuthModule automatically registers the AuthService, GdprService, 
# and Auth Guards into the container and application lifecycle.
container.register_module(AuthModule)

app = FerroxApp(container)
app.start()

7. Ecosystem Integration

This module relies heavily on the Security component of the core ferrox-py framework for generating and parsing PASETO/JWT tokens. It also serves as a foundational dependency for ferrox-py-commerce, as a validated User context is required before initiating billing or subscription processes.

Metadata

Release files for ferrox-py-auth 1.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ferrox-py-auth 1.1.1
File Size Uploaded
ferrox_py_auth-1.1.1.tar.gz 10.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for ferrox-py-auth 1.1.1
File Interpreter ABI Platform
ferrox_py_auth-1.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 16.4 kB

Release files / ferrox_py_auth-1.1.1.tar.gz

Download URL ferrox_py_auth-1.1.1.tar.gz
Size 10.0 kB
Tags Source
SHA-256 checksum
How to use checksums
1f21fcdca1e5f2f55539c17984e18ecfc7eeb365ab501c7a8c9185a858f2886e
BLAKE2b-256 checksum
How to use checksums
b42cdfa1e33c8436193dae26428f56d79ef928fe6f6e05d27e950fd4f4dde300
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.2

Release files / ferrox_py_auth-1.1.1-py3-none-any.whl

Download URL ferrox_py_auth-1.1.1-py3-none-any.whl
Size 6.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
383da908a36d5f53a5b9d872e54fe6fe49786fac5f671e390597e567de7e6066
BLAKE2b-256 checksum
How to use checksums
ed59d806360f5c7052e0bf6b0730b75ce07b93fb3ee69044d8a46dc2165e2e0b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.2

Release history Release notifications | RSS feed

1.2.1

2 release files

This release

1.1.1 This release

2 release files

1.1.0

2 release files

1.0.1

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page