История изменений
Исправление vvn_black, (текущая версия) :
Зачем там библиотека?
Аутентификация делается запросом к кейклоаку и сохранением токена в обработчике указанного в запросе редиректа.
А авторизация для фронта, по-моему даже в официальной документации расписана, что-то типа такого:
from fastapi import Security
from fastapi.security import HTTPAuthorizationCredentials, HTTPBearer
security = HTTPBearer()
async def auth(credentials: HTTPAuthorizationCredentials = Security(security)):
token = credentials.credentials
# дальше проверяем токен
...
@app.get('/private')
async def private(auth = Depends(auth)):
...
Но, лучше кейклоак на фронте дергать, не думаю, что часто встретишь FastAPI в качестве шаблонизатора.
Исходная версия vvn_black, :
Зачем там библиотека?
Аутентификация делается запросом к кейклоаку и сохранением токена в обработчике указанного в запросе редиректа.
А авторизация для фронта, по-моему даже в официальной документации расписана, что-то типа такого:
from fastapi import Security
from fastapi.security import HTTPAuthorizationCredentials, HTTPBearer
security = HTTPBearer()
async def auth(credentials: HTTPAuthorizationCredentials = Security(security)):
token = credentials.credentials
# дальше проверяем токен
...
@app.get('/private')
def private(auth = Depends(auth)):
...
Но, лучше кейклоак на фронте дергать, не думаю, что часто встретишь FastAPI в качестве шаблонизатора.