odoo_xmlrpc_twisted.security

Security middleware and authentication for Odoo API Bridge.

Functions

rate_limiter(request)

Basic rate limiting

security_dependencies(request[, ...])

Combined security dependencies

verify_api_key([x_api_key])

Verify API key authentication

verify_iap_jwt(request)

Verify Google Cloud Identity-Aware Proxy JWT

verify_ip_whitelist(request)

Verify client IP is in whitelist (supports both IP ranges and domain names)

verify_jwt_token([credentials])

Verify JWT token from Authorization header

Classes

JWTAuth()

JWT-based authentication

SecurityConfig()

Security configuration and validation

class odoo_xmlrpc_twisted.security.JWTAuth[source]

Bases: object

JWT-based authentication

static create_token(data: dict, expires_delta: timedelta = datetime.timedelta(days=1))[source]

Create JWT token

static verify_token(token: str)[source]

Verify JWT token

class odoo_xmlrpc_twisted.security.SecurityConfig[source]

Bases: object

Security configuration and validation

generate_api_key() str[source]

Generate a new secure API key

async odoo_xmlrpc_twisted.security.rate_limiter(request: fastapi.Request)[source]

Basic rate limiting

async odoo_xmlrpc_twisted.security.security_dependencies(request: fastapi.Request, client_name: str = fastapi.Depends, ip_check=fastapi.Depends, rate_check=fastapi.Depends)[source]

Combined security dependencies

async odoo_xmlrpc_twisted.security.verify_api_key(x_api_key: str = fastapi.Header)[source]

Verify API key authentication

async odoo_xmlrpc_twisted.security.verify_iap_jwt(request: fastapi.Request)[source]

Verify Google Cloud Identity-Aware Proxy JWT

async odoo_xmlrpc_twisted.security.verify_ip_whitelist(request: fastapi.Request)[source]

Verify client IP is in whitelist (supports both IP ranges and domain names)

async odoo_xmlrpc_twisted.security.verify_jwt_token(credentials: fastapi.security.HTTPAuthorizationCredentials = fastapi.Depends)[source]

Verify JWT token from Authorization header