/
zhikovkoly
/
Lab1_api
Обзор
Документация
Войти
/
zhikovkoly
/
Lab1_api
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
main
src/auth.py
36 строк
1 KB
Zhikov-Nikolay
first_commit
19 янв 2026, 18:15
19 янв 2026, 18:15
b7dd5a5
Код
Авторство
О чём код?
from flask import request, jsonify from werkzeug.security import generate_password_hash, check_password_hash # Упрощенная аутентификация с API ключами # В реальном приложении хранить в базе данных или переменных окружения API_KEYS = { "admin": "secret_admin_key_123", "user": "secret_user_key_456" } def configure_auth(app): """Конфигурация аутентификации""" # В этом упрощенном примере JWT не используется # Можно добавить при необходимости pass def verify_api_key(api_key): """Проверка API ключа""" if not api_key: return False return api_key in API_KEYS.values() def get_user_by_api_key(api_key): """Получение пользователя по API ключу""" for user, key in API_KEYS.items(): if key == api_key: return {"username": user, "role": "admin" if user == "admin" else "user"} return None # Простая функция для middleware def require_auth(): """Проверка аутентификации""" api_key = request.headers.get('X-API-Key') if not api_key or not verify_api_key(api_key): return False return True