fmn.api.auth module

class fmn.api.auth.Identity(*, name: str, admin: bool, expires_at: float, user_info: dict[str, Any])[source]

Bases: BaseModel

class Config[source]

Bases: object

extra = 'ignore'
admin: bool
classmethod client() AsyncClient[source]
expires_at: float
async classmethod from_oidc_token(token: str) Identity[source]
name: str
user_info: dict[str, Any]
class fmn.api.auth.IdentityFactory(optional=False)[source]

Bases: object

async process_oidc_auth(creds: HTTPAuthorizationCredentials | None) Identity | None[source]
exception fmn.api.auth.TokenExpired[source]

Bases: ValueError

async fmn.api.auth.get_identity_admin(identity: Identity = Depends(IdentityFactory))[source]