Как работает OAuth

Python Senior Без компании
Как работает OAuth
Ответы
OAuth — это протокол для безопасной авторизации, позволяющий приложениям получать доступ к данным пользователя без передачи его логина и пароля. Работает через токены доступа (access token) и обновления (refresh token). Основные этапы: - Приложение перенаправляет пользователя на сервис (например, Google). - Пользователь авторизуется и дает разрешение. - Сервис возвращает код авторизации. - Приложение обменивает код на токен доступа. Пример с `requests-oauthlib`: ``` from requests_oauthlib import OAuth2Session client_id = "your_client_id" redirect_uri = "https://your-app/callback" scope = ["profile", "email"] oauth = OAuth2Session(client_id, redirect_uri=redirect_uri, scope=scope) authorization_url, state = oauth.authorization_url("https://provider.com/auth") # После редиректа получаем токен token = oauth.fetch_token( "https://provider.com/token", client_secret="your_secret", authorization_response=request.url ) ``` Токен имеет ограниченный срок жизни, для продления используется refresh token. OAuth2 поддерживает разные потоки (flows) для разных сценариев.