LINUX.ORG.RU

keycloak-аутентификация для FastAPI-приложения: кто чем пользовался?

 


0

3

Есть у меня, братцы, задача: начать пользовать сервер аутентификации keycloak в моём FastAPI-приложеньице.

Имею спросить: а кто какими библиотеками пользовался для этих целей?

Я попытался поюзать fastapi-keycloak, но у меня даже их примеры нормально не работают: только я пытаюсь в тамошнем app.py вызвать метод /admin, как мне пишут:

fastapi_keycloak.exceptions.KeycloakError: HTTP 404: The 'realm_access' section of the provided access token is missing


Последнее исправление: Yak (всего исправлений: 1)
28 декабря 2023 г.

Зачем там библиотека?

Аутентификация делается запросом к кейклоаку и сохранением токена в обработчике указанного в запросе редиректа.

А авторизация для фронта, по-моему даже в официальной документации расписана, что-то типа такого:

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 ★★★★★
()
Последнее исправление: vvn_black (всего исправлений: 1)