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.118.tar.gz (13.0 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.118-py3-none-any.whl (12.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: verge_auth_sdk-0.1.118.tar.gz
  • Upload date:
  • Size: 13.0 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.118.tar.gz
Algorithm Hash digest
SHA256 b14dbf0cfe94852fa8848ca942ed561183b33ef4071845c7ef2040c016726a67
MD5 883af317d4acead10607a96418e58340
BLAKE2b-256 10d84336ad987d245d09da0881d6ae2c8ce2dcc8997b89b165ca5a47c537b15e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for verge_auth_sdk-0.1.118-py3-none-any.whl
Algorithm Hash digest
SHA256 619dc3672b79aac6353c017b6a7bbba36e832a232bbf78b574891b48d14a351e
MD5 eb682eb1e3d2ea092f17a212ef8bffaf
BLAKE2b-256 9d6c262a733a5c7b6152fa896ccc4ce6451e039b7f68baaecaf1077585ea533c

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