src.admin.security
Module Contents
- src.admin.security.admin_auth_config_error() str | None
Validate required admin authentication configuration.
- Parameters:
None.
- Returns:
Error message if configuration is missing, otherwise None.
- Return type:
str | None
- src.admin.security.encrypt_token(token: str) str
Encrypt a token using the configured Fernet key.
- Parameters:
token (str) – Plaintext token to encrypt.
- Returns:
Encrypted token encoded as a UTF-8 string.
- Return type:
str
- src.admin.security.decrypt_token(token: str) str
Decrypt an encrypted token string.
- Parameters:
token (str) – Encrypted token to decrypt.
- Returns:
Decrypted token value.
- Return type:
str
- src.admin.security.validate_admin_credentials(username: str, password: str) str
Validate administrator credentials against configured values.
Args: username (str): Admin username; password (str): Admin password. Returns: str: The validated admin username.
- src.admin.security.create_admin_session(username: str) str
Create a signed admin session token for a username.
- Parameters:
username (str) – Username to include in the session payload.
- Returns:
URL-safe signed session token.
- Return type:
str
- src.admin.security.read_admin_session(session_value: str | None) str | None
Validate and read a signed admin session token.
- Parameters:
session_value (str | None) – Encoded session payload and signature.
- Returns:
Admin username if valid and unexpired, otherwise None.
- Return type:
str | None
- src.admin.security.set_admin_session(response: fastapi.Response, username: str) None
Set the admin session cookie on the response.
- Parameters:
response (Response) – HTTP response to update; username (str): Admin username for the
session.
- Returns:
This function does not return a value.
- Return type:
None
- src.admin.security.clear_admin_session(response: fastapi.Response) None
Clear the admin session cookie from the response.
- Parameters:
response (Response) – HTTP response whose admin session cookie is deleted.
- Returns:
This function does not return a value.
- Return type:
None
- src.admin.security.require_admin(request: fastapi.Request) str
Validate the admin session and return the authenticated username.
- Parameters:
request (Request) – Incoming request containing admin session cookies.
- Returns:
Authenticated admin username.
- Return type:
str
- src.admin.security.ensure_csrf_token(request: fastapi.Request, response: fastapi.Response, csrf_token: str | None = None) str
Ensure a CSRF token exists and set it as a response cookie.
- Parameters:
request (Request) – Incoming request used to retrieve or create the token.
response (Response) – Response on which to set the CSRF cookie.
csrf_token (str | None) – Optional token to use instead of generating one.
- Returns:
The CSRF token set on the response.
- Return type:
str
- src.admin.security.get_or_create_csrf_token(request: fastapi.Request) str
Get an existing CSRF token from cookies or generate a new one. :param request: Incoming request containing cookie data. :type request: Request
- Returns:
Existing admin CSRF token or a newly generated token.
- Return type:
str
- async src.admin.security.verify_csrf(request: fastapi.Request, csrf_token: str = Form(default='')) None