Skip to main content

Secure centralized authentication SDK for FastAPI microservices

Project description

Build PyPI version Python Versions License

Verge Auth SDK

Enterprise Authentication & RBAC for FastAPI Applications

Turn your FastAPI routes into enterprise-grade permissions automatically.

Verge Auth provides centralized authentication, role-based access control (RBAC), audit logging, and permission management with minimal integration effort.


Why Verge Auth?

Traditional authentication platforms solve login.

Verge Auth solves authentication, authorization, and permission management.

Key Features

  • Centralized Authentication
  • Route-Based Permission Generation
  • Enterprise RBAC
  • Group-Based Access Control
  • Audit Logging
  • Multi-Tenant Support
  • OIDC & SAML Ready
  • AI-Powered Security Insights
  • FastAPI Native Integration

Installation

pip install verge_auth_sdk

Quick Start

1. Add Verge Auth to Your Application

from fastapi import FastAPI
from verge_auth_sdk import add_central_auth

app = FastAPI()

# Your routes

add_central_auth(app)

2. Configure Environment Variables

AUTH_BASE_URL=https://api.vergeauth.in

VERGE_CLIENT_ID=<client-id>
VERGE_CLIENT_SECRET=<client-secret>
VERGE_SERVICE_SECRET=<service-secret>

SERVICE_NAME=hrms-service
SERVICE_BASE_URL=https://api.example.com
SERVICE_FRONTEND_URL=https://app.example.com

3. Start Your Application

When the application starts, Verge Auth automatically:

  • Registers your service
  • Discovers application routes
  • Generates route permissions
  • Synchronizes permissions with the Verge Auth platform
  • Configures JWT validation

Your application is now protected.


How Permission Generation Works

Verge Auth automatically discovers routes in your application and converts them into assignable permissions.

Example:

@app.get("/api/employees")
def list_employees():
    pass

@app.post("/api/employees")
def create_employee():
    pass

Automatically generates permissions:

hrms-service:/api/employees:get
hrms-service:/api/employees:post

Administrators can assign these permissions through the Verge Auth dashboard without modifying application code.


Authentication Flow

  1. User authenticates through Verge Auth.
  2. Verge Auth issues an authorization code.
  3. SDK exchanges the code for a secure access token.
  4. User session is established.
  5. Requests are automatically validated.
  6. Permissions are enforced on every route.

User Context

Authenticated user information is available inside requests:

from fastapi import Request

@app.get("/auth/me")
def current_user(request: Request):
    return request.state.auth

Example response:

{
  "auth_user_id": 1,
  "roles": ["HR Manager"],
  "permissions": [
    "hrms-service:/api/employees:get"
  ]
}

Supported Authentication Features

  • Local Authentication
  • Multi-Factor Authentication (MFA)
  • Passwordless Authentication
  • OIDC Federation
  • SAML Federation
  • Microsoft Entra ID Integration
  • Google Workspace Integration
  • Custom Identity Providers

Feature availability depends on your Verge Auth plan.


Security

Verge Auth implements enterprise-grade security practices:

  • RS256 JWT Verification
  • Automatic Key Rotation Support
  • HTTP-Only Secure Cookies
  • Service-to-Service Authentication
  • Fine-Grained Route Permissions
  • Audit Logging
  • Multi-Layer Access Control

Documentation

Platform Documentation:

https://vergeinfosoft.com/docs/

Product Guide:

https://vergeinfosoft.com/verge-auth-product-guide/


Support

Website:

https://vergeauth.in

Email:

contactus@vergeinfosoft.com


License

Copyright © Verge Infosoft.

All rights reserved.

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

verge_auth_sdk-0.1.117.tar.gz (12.7 kB view details)

Uploaded Source

Built Distribution

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

verge_auth_sdk-0.1.117-py3-none-any.whl (12.6 kB view details)

Uploaded Python 3

File details

Details for the file verge_auth_sdk-0.1.117.tar.gz.

File metadata

  • Download URL: verge_auth_sdk-0.1.117.tar.gz
  • Upload date:
  • Size: 12.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for verge_auth_sdk-0.1.117.tar.gz
Algorithm Hash digest
SHA256 e36006caff57da2f0d654795e3b68dfff5214b14b321ec67769eefd49ff10f4c
MD5 978bcd9dc0dcd3784f5d1cfce0358814
BLAKE2b-256 0d94ba3c2c5b9eb396b1b3b1fedd65d503abe4299c418c7813e5e5a380fe5eaa

See more details on using hashes here.

File details

Details for the file verge_auth_sdk-0.1.117-py3-none-any.whl.

File metadata

File hashes

Hashes for verge_auth_sdk-0.1.117-py3-none-any.whl
Algorithm Hash digest
SHA256 2734773931fa199dc0c0763104d1c8d0e8d619fd11d329fa2158ab7875570d41
MD5 bab3d1d7affa97ea5755d0bf578cd8fa
BLAKE2b-256 9e672e8238c769f7f6ebc0fcbb6bc23d05b32cc7e8b1f7fc2a3ab4f8d96f8738

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