Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Задачи

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Назад
Вопрос про FastAPI: authentication, authorization, security, fast api

Как реализовать авторизацию и аутентификацию используя FastAPI?

Вопрос раскрывает подходы к аутентификации и авторизации в FastAPI с использованием встроенных возможностей.

Короткий ответ

Аутентификация выполняется через OAuth2PasswordBearer, а авторизация через Security Scopes, определяющие доступ к ресурсам.

Длинный ответ

FastAPI предоставляет модуль безопасности для реализации аутентификации и авторизации. Для этого используется:

  • OAuth2PasswordBearer для получения токена, который передается в зависимости маршрутов.

  • Security Scopes для проверки прав доступа к ресурсам.

Пример кода:

from fastapi import Depends, FastAPI, HTTPException, Security
from fastapi.security import OAuth2PasswordBearer, SecurityScopes

oauth2_scheme = OAuth2PasswordBearer(tokenUrl="token")

def get_current_user(security_scopes: SecurityScopes, token: str = Depends(oauth2_scheme)):
    	# Логика проверки токена
    	raise HTTPException(status_code=403, detail="Not authenticated")

app = FastAPI()

@app.get("/items/", dependencies=[Depends(Security(get_current_user, scopes=["items:read"]))])
async def read_items():
    	return [{"item": "Foo", "value": "Bar"}]

Когда использовать:

  • Для защиты маршрутов и проверки доступа к ресурсам.

  • Аватар

    Python Guru

    Sergey Filichkin

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.

Уровень

  • Рейтинг:

    3

  • Сложность:

    6

Навыки

  • FastAPI

    FastAPI

Ключевые слова

#authentication

#authorization

#security

#fast api

Подпишись на Python Developer в телеграм

  • Аватар

    Python Guru

    Sergey Filichkin

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.