Какие знаешь виды аутентификации
Python
Senior
Без компании
Какие знаешь виды аутентификации
Ответы
В Python для аутентификации часто используют:
- **Basic Auth** – простейший метод с логином/паролем в заголовке (небезопасно без HTTPS):
```
import requests
response = requests.get('https://api.example.com', auth=('user', 'pass'))
```
- **Token-based (JWT)** – токен в заголовке `Authorization: Bearer <token>`:
```
headers = {'Authorization': 'Bearer eyJhbGciOi...'}
requests.get('https://api.example.com', headers=headers)
```
- **OAuth/OAuth2** – делегирование доступа (например, через библиотеку `authlib`).
- **Session-based** – куки после входа (Django/Flask):
```
from flask import session
session['user_id'] = user.id # После проверки логина
```
- **API Keys** – ключ в заголовке или URL (не для пользовательской аутентификации).
Для безопасности: всегда используйте HTTPS, храните пароли хешированно (bcrypt), а токены с ограниченным сроком действия.