netadm/authentication/user_manager.py

54 lines
1.3 KiB
Python
Raw Permalink Normal View History

2024-10-02 15:50:50 +00:00
import logging
from typing import Optional, TYPE_CHECKING
from fastapi_users import (
BaseUserManager,
IntegerIDMixin,
)
from config import settings
from models import User
if TYPE_CHECKING:
from fastapi import Request
class UserManager(IntegerIDMixin, BaseUserManager[User, settings.type.UserIdType]):
reset_password_token_secret = settings.access_token.reset_password_token_secret
verification_token_secret = settings.access_token.verification_token_secret
async def on_after_register(
self,
user: User,
request: Optional["Request"] = None,
):
logging.warning(
"User %r has registered.",
user.id,
)
async def on_after_request_verify(
self,
user: User,
token: str,
request: Optional["Request"] = None,
):
logging.warning(
"Verification requested for user %r. Verification token: %r",
user.id,
token,
)
async def on_after_forgot_password(
self,
user: User,
token: str,
request: Optional["Request"] = None,
):
logging.warning(
"User %r has forgot their password. Reset token: %r",
user.id,
token,
)