config-fix
All checks were successful
Deploy on push / deploy (push) Successful in 3m19s

This commit is contained in:
2025-09-30 21:48:29 +03:00
parent 3ae675c52c
commit 14ff155789
11 changed files with 19 additions and 19 deletions

View File

@@ -160,7 +160,7 @@ core/
### Environment Variables
- `DATABASE_URL` - Database connection string
- `REDIS_URL` - Redis connection string
- `JWT_SECRET` - JWT signing secret
- `JWT_SECRET_KEY` - JWT signing secret
- `OAUTH_*` - OAuth provider credentials
### Database

View File

@@ -242,7 +242,7 @@ SESSION_COOKIE_SAMESITE=lax
SESSION_COOKIE_MAX_AGE=2592000 # 30 дней
# JWT
JWT_SECRET=your_jwt_secret_key
JWT_SECRET_KEY=your_jwt_secret_key
JWT_EXPIRATION_HOURS=720 # 30 дней
# Redis

View File

@@ -520,7 +520,7 @@ async def test_redis_integration():
### Подготовка
- [ ] Настроен Redis connection pool с теми же параметрами
- [ ] Установлены зависимости: `auth.tokens.*`, `auth.utils`
- [ ] Настроены environment variables (JWT_SECRET, REDIS_URL)
- [ ] Настроены environment variables (JWT_SECRET_KEY, REDIS_URL)
### Реализация
- [ ] Реализована функция извлечения токенов из запросов

View File

@@ -22,7 +22,7 @@
```python
# settings.py
JWT_ALGORITHM = "HS256" # HMAC with SHA-256
JWT_SECRET = os.getenv("JWT_SECRET") # Минимум 256 бит
JWT_SECRET_KEY = os.getenv("JWT_SECRET_KEY") # Минимум 256 бит
JWT_EXPIRATION_DELTA = 30 * 24 * 60 * 60 # 30 дней
```
@@ -439,7 +439,7 @@ async def detect_anomalies(user_id: str, event_type: str, ip_address: str):
### Environment Variables
```bash
# JWT Security
JWT_SECRET=your_super_secret_key_minimum_256_bits
JWT_SECRET_KEY=your_super_secret_key_minimum_256_bits
JWT_ALGORITHM=HS256
JWT_EXPIRATION_HOURS=720

View File

@@ -281,7 +281,7 @@ async def delete_session(token: str) -> bool:
### JWT токены
- **Алгоритм**: HS256
- **Secret**: Из переменной окружения JWT_SECRET
- **Secret**: Из переменной окружения JWT_SECRET_KEY
- **Payload**: `{user_id, username, iat, exp}`
- **Expiration**: 30 дней (настраивается)

View File

@@ -6,7 +6,7 @@
```bash
# JWT настройки
JWT_SECRET=your_super_secret_key_minimum_256_bits
JWT_SECRET_KEY=your_super_secret_key_minimum_256_bits
JWT_ALGORITHM=HS256
JWT_EXPIRATION_HOURS=720 # 30 дней
@@ -69,7 +69,7 @@ LOCKOUT_DURATION=1800 # 30 минут
# Проверка переменных окружения
python -c "
import os
required = ['JWT_SECRET', 'REDIS_URL', 'GOOGLE_CLIENT_ID']
required = ['JWT_SECRET_KEY', 'REDIS_URL', 'GOOGLE_CLIENT_ID']
for var in required:
print(f'{var}: {\"✅\" if os.getenv(var) else \"❌\"}')"
@@ -213,7 +213,7 @@ ab -n 1000 -c 10 -p login.json -T application/json http://localhost:8000/graphql
### Docker
```dockerfile
# Dockerfile
ENV JWT_SECRET=your_secret_here
ENV JWT_SECRET_KEY=your_secret_here
ENV REDIS_URL=redis://redis:6379/0
ENV SESSION_COOKIE_SECURE=true
```
@@ -221,8 +221,8 @@ ENV SESSION_COOKIE_SECURE=true
### Dokku/Heroku
```bash
# Установка переменных окружения
dokku config:set myapp JWT_SECRET=xxx REDIS_URL=yyy
heroku config:set JWT_SECRET=xxx REDIS_URL=yyy
dokku config:set myapp JWT_SECRET_KEY=xxx REDIS_URL=yyy
heroku config:set JWT_SECRET_KEY=xxx REDIS_URL=yyy
```
### Nginx настройки

View File

@@ -330,7 +330,7 @@ OAuth данные хранятся в JSON поле `oauth` модели `Autho
### Переменные окружения
```bash
# JWT настройки
JWT_SECRET=your_super_secret_key
JWT_SECRET_KEY=your_super_secret_key
JWT_EXPIRATION_HOURS=720 # 30 дней
# Redis подключение

View File

@@ -819,7 +819,7 @@ jobs:
pytest tests/auth/e2e/ -m e2e
env:
REDIS_URL: redis://localhost:6379/0
JWT_SECRET: test_secret_key_for_ci
JWT_SECRET_KEY: test_secret_key_for_ci
- name: Upload coverage
uses: codecov/codecov-action@v3

View File

@@ -127,7 +127,7 @@ env_vars:{variable_name} # STRING - значение перемен
### Примеры переменных
```redis
GET env_vars:JWT_SECRET # Секретный ключ JWT
GET env_vars:JWT_SECRET_KEY # Секретный ключ JWT
GET env_vars:REDIS_URL # URL Redis
GET env_vars:OAUTH_GOOGLE_CLIENT_ID # Google OAuth Client ID
GET env_vars:FEATURE_REGISTRATION # Флаг функции регистрации
@@ -135,7 +135,7 @@ GET env_vars:FEATURE_REGISTRATION # Флаг функции регистра
**Категории переменных**:
- **database**: DB_URL, POSTGRES_*
- **auth**: JWT_SECRET, OAUTH_*
- **auth**: JWT_SECRET_KEY, OAUTH_*
- **redis**: REDIS_URL, REDIS_HOST, REDIS_PORT
- **search**: SEARCH_*
- **integrations**: GOOGLE_ANALYTICS_ID, SENTRY_DSN, SMTP_*

View File

@@ -76,7 +76,7 @@ OAUTH_CLIENTS = {
}
# Настройки JWT
JWT_SECRET = os.getenv("JWT_SECRET", "your-secret-key")
JWT_SECRET_KEY = os.getenv("JWT_SECRET_KEY", "your-secret-key")
JWT_ACCESS_TOKEN_EXPIRE_MINUTES = 30
JWT_REFRESH_TOKEN_EXPIRE_DAYS = int(environ.get("JWT_REFRESH_TOKEN_EXPIRE_DAYS", "30"))

View File

@@ -55,7 +55,7 @@ class EnvService:
"POSTGRES_HOST": "database",
"POSTGRES_PORT": "database",
# Auth
"JWT_SECRET": "auth",
"JWT_SECRET_KEY": "auth",
"JWT_ALGORITHM": "auth",
"JWT_EXPIRATION": "auth",
"SECRET_KEY": "auth",
@@ -103,7 +103,7 @@ class EnvService:
# Секретные переменные (не показываем их значения в UI)
SECRET_VARIABLES: ClassVar[set[str]] = {
"JWT_SECRET",
"JWT_SECRET_KEY",
"SECRET_KEY",
"AUTH_SECRET",
"OAUTH_GOOGLE_CLIENT_SECRET",
@@ -127,7 +127,7 @@ class EnvService:
"POSTGRES_DB": "Имя базы данных PostgreSQL",
"POSTGRES_HOST": "Хост PostgreSQL",
"POSTGRES_PORT": "Порт PostgreSQL",
"JWT_SECRET": "Секретный ключ для JWT токенов",
"JWT_SECRET_KEY": "Секретный ключ для JWT токенов",
"JWT_ALGORITHM": "Алгоритм подписи JWT",
"JWT_EXPIRATION": "Время жизни JWT токенов",
"SECRET_KEY": "Секретный ключ приложения",