Merge pull request 'migrations: закомментил все что связано с раисовской авторизацией при debug=false' (#70) from migrations into test

Reviewed-on: #70
Reviewed-by: Raykov-MS <RaykovMS@avt.rshb.ru>
This commit is contained in:
tsygankoviva 2026-06-24 11:42:22 +03:00
commit 63ae001a23
3 changed files with 134 additions and 134 deletions

View File

@ -6,19 +6,19 @@ from src.db.session import get_db
from src.domain.schemas import LoginRequest, RefreshRequest, Token from src.domain.schemas import LoginRequest, RefreshRequest, Token
from src.services.auth_service import AuthService from src.services.auth_service import AuthService
if not settings.DEBUG: # if not settings.DEBUG:
from raisa_fastapi_protected_api import UserInfo, get_user_dependency # from raisa_fastapi_protected_api import UserInfo, get_user_dependency
router = APIRouter(prefix="/auth", tags=["auth"]) router = APIRouter(prefix="/auth", tags=["auth"])
if settings.DEBUG: # if settings.DEBUG:
@router.post("/login", response_model=Token) @router.post("/login", response_model=Token)
async def login( async def login(
login_data: LoginRequest, login_data: LoginRequest,
db: AsyncSession = Depends(get_db), db: AsyncSession = Depends(get_db),
): ):
auth_service = AuthService(db) auth_service = AuthService(db)
token = await auth_service.authenticate_user(login_data.username, login_data.password) token = await auth_service.authenticate_user(login_data.username, login_data.password)
if not token: if not token:
@ -29,23 +29,23 @@ if settings.DEBUG:
) )
return token return token
else: # else:
@router.post("/login", response_model=Token) # @router.post("/login", response_model=Token)
async def login( # async def login(
login_data: LoginRequest, # login_data: LoginRequest,
db: AsyncSession = Depends(get_db), # db: AsyncSession = Depends(get_db),
user: UserInfo = Depends(get_user_dependency), # user: UserInfo = Depends(get_user_dependency),
): # ):
auth_service = AuthService(db) # auth_service = AuthService(db)
token = await auth_service.authenticate_user_via_email(user.email) # token = await auth_service.authenticate_user_via_email(user.email)
if not token: # if not token:
raise HTTPException( # raise HTTPException(
status_code=status.HTTP_401_UNAUTHORIZED, # status_code=status.HTTP_401_UNAUTHORIZED,
detail="Неверное имя пользователя или пароль", # detail="Неверное имя пользователя или пароль",
headers={"WWW-Authenticate": "Bearer"}, # headers={"WWW-Authenticate": "Bearer"},
) # )
return token # return token
@router.post("/login-form", response_model=Token) @router.post("/login-form", response_model=Token)

View File

@ -12,12 +12,12 @@ from src.repository.user_repository import UserRepository
security = HTTPBearer() security = HTTPBearer()
if settings.DEBUG: # if settings.DEBUG:
async def get_user_by_token( async def get_user_by_token(
token: str, token: str,
db: AsyncSession, db: AsyncSession,
) -> AppUser: ) -> AppUser:
payload = verify_token(token) payload = verify_token(token)
if payload is None: if payload is None:
raise HTTPException( raise HTTPException(
@ -46,28 +46,28 @@ if settings.DEBUG:
) )
return user return user
async def get_current_user( async def get_current_user(
credentials: HTTPAuthorizationCredentials = Depends(security), credentials: HTTPAuthorizationCredentials = Depends(security),
db: AsyncSession = Depends(get_db), db: AsyncSession = Depends(get_db),
) -> AppUser: ) -> AppUser:
return await get_user_by_token(token=credentials.credentials, db=db) return await get_user_by_token(token=credentials.credentials, db=db)
else: # else:
from raisa_fastapi_protected_api import UserInfo, get_user_dependency # from raisa_fastapi_protected_api import UserInfo, get_user_dependency
async def get_current_user( # async def get_current_user(
user: UserInfo = Depends(get_user_dependency), # user: UserInfo = Depends(get_user_dependency),
db: AsyncSession = Depends(get_db), # db: AsyncSession = Depends(get_db),
) -> AppUser: # ) -> AppUser:
user_repo = UserRepository(db) # user_repo = UserRepository(db)
db_user = await user_repo.get_by_email(user.email) # db_user = await user_repo.get_by_email(user.email)
if db_user is None: # if db_user is None:
raise HTTPException( # raise HTTPException(
status_code=status.HTTP_401_UNAUTHORIZED, # status_code=status.HTTP_401_UNAUTHORIZED,
detail="Пользователь не найден", # detail="Пользователь не найден",
headers={"WWW-Authenticate": "Bearer"}, # headers={"WWW-Authenticate": "Bearer"},
) # )
return db_user # return db_user
async def get_current_active_user(current_user: AppUser = Depends(get_current_user)) -> AppUser: async def get_current_active_user(current_user: AppUser = Depends(get_current_user)) -> AppUser:

View File

@ -20,15 +20,15 @@ from src.core.exception_handlers import register_exception_handlers
from src.db.base import engine from src.db.base import engine
from src.db.session import create_tables from src.db.session import create_tables
if not settings.DEBUG: # if not settings.DEBUG:
from raisa_fastapi_protected_api import ( # from raisa_fastapi_protected_api import (
AuthorizationMiddleware, # AuthorizationMiddleware,
OpenEndpoint, # OpenEndpoint,
ProtectedOAuthSettings, # ProtectedOAuthSettings,
ProtectedRolesSettings, # ProtectedRolesSettings,
ProtectedSettings, # ProtectedSettings,
SearchType, # SearchType,
) # )
_AUDIT_CLEANUP_LOCK_KEY = 21987431 _AUDIT_CLEANUP_LOCK_KEY = 21987431
@ -99,13 +99,13 @@ async def lifespan(app: FastAPI):
cleanup_task: asyncio.Task | None = None cleanup_task: asyncio.Task | None = None
if not settings.DEBUG: if not settings.DEBUG:
await create_tables() await create_tables()
ProtectedSettings( # ProtectedSettings(
ProtectedOAuthSettings(JWKS_URI=settings.JWKS_URL), # ProtectedOAuthSettings(JWKS_URI=settings.JWKS_URL),
ProtectedRolesSettings( # ProtectedRolesSettings(
APP_NAMESPACE=settings.APP_NAMESPACE, # APP_NAMESPACE=settings.APP_NAMESPACE,
APP_NAME=settings.APP_NAME, # APP_NAME=settings.APP_NAME,
), # ),
) # )
cleanup_task = asyncio.create_task(_audit_cleanup_loop()) cleanup_task = asyncio.create_task(_audit_cleanup_loop())
try: try:
yield yield
@ -180,41 +180,41 @@ async def readyz(response: Response):
if not settings.DEBUG: # if not settings.DEBUG:
app.add_middleware( # app.add_middleware(
AuthorizationMiddleware, # AuthorizationMiddleware,
open_endpoints=[ # open_endpoints=[
OpenEndpoint(path="", type_search=SearchType.ABSOLUTE), # OpenEndpoint(path="", type_search=SearchType.ABSOLUTE),
OpenEndpoint(path=settings.ROOT_PATH + "", type_search=SearchType.ABSOLUTE), # OpenEndpoint(path=settings.ROOT_PATH + "", type_search=SearchType.ABSOLUTE),
OpenEndpoint(path="/", type_search=SearchType.ABSOLUTE), # OpenEndpoint(path="/", type_search=SearchType.ABSOLUTE),
OpenEndpoint(path=settings.ROOT_PATH + "/", type_search=SearchType.ABSOLUTE), # OpenEndpoint(path=settings.ROOT_PATH + "/", type_search=SearchType.ABSOLUTE),
OpenEndpoint(path="/healthcheck", type_search=SearchType.ABSOLUTE), # OpenEndpoint(path="/healthcheck", type_search=SearchType.ABSOLUTE),
OpenEndpoint( # OpenEndpoint(
path=settings.ROOT_PATH + "/healthcheck", # path=settings.ROOT_PATH + "/healthcheck",
type_search=SearchType.ABSOLUTE, # type_search=SearchType.ABSOLUTE,
), # ),
OpenEndpoint(path="/healthz", type_search=SearchType.ABSOLUTE), # OpenEndpoint(path="/healthz", type_search=SearchType.ABSOLUTE),
OpenEndpoint( # OpenEndpoint(
path=settings.ROOT_PATH + "/healthz", # path=settings.ROOT_PATH + "/healthz",
type_search=SearchType.ABSOLUTE, # type_search=SearchType.ABSOLUTE,
), # ),
OpenEndpoint(path="/readyz", type_search=SearchType.ABSOLUTE), # OpenEndpoint(path="/readyz", type_search=SearchType.ABSOLUTE),
OpenEndpoint( # OpenEndpoint(
path=settings.ROOT_PATH + "/readyz", # path=settings.ROOT_PATH + "/readyz",
type_search=SearchType.ABSOLUTE, # type_search=SearchType.ABSOLUTE,
), # ),
OpenEndpoint(path="/openapi.json", type_search=SearchType.START), # OpenEndpoint(path="/openapi.json", type_search=SearchType.START),
OpenEndpoint( # OpenEndpoint(
path=settings.ROOT_PATH + "/openapi.json", # path=settings.ROOT_PATH + "/openapi.json",
type_search=SearchType.START, # type_search=SearchType.START,
), # ),
OpenEndpoint(path="/docs", type_search=SearchType.START), # OpenEndpoint(path="/docs", type_search=SearchType.START),
OpenEndpoint( # OpenEndpoint(
path=settings.ROOT_PATH + "/docs", # path=settings.ROOT_PATH + "/docs",
type_search=SearchType.START, # type_search=SearchType.START,
), # ),
], # ],
) # )
app.add_middleware( app.add_middleware(
CORSMiddleware, CORSMiddleware,