|
| 1 | +import datetime |
1 | 2 | import os
|
2 | 3 | import pathlib
|
3 | 4 |
|
@@ -26,19 +27,70 @@ def load_bool(name, default):
|
26 | 27 |
|
27 | 28 | DEBUG = load_bool('DJANGO_DEBUG', False)
|
28 | 29 |
|
29 |
| -ALLOWED_HOSTS = [] |
30 |
| - |
| 30 | +ALLOWED_HOSTS = ['*'] |
31 | 31 |
|
32 | 32 | INSTALLED_APPS = [
|
33 |
| - 'core.apps.CoreConfig', |
34 | 33 | 'django.contrib.admin',
|
35 | 34 | 'django.contrib.auth',
|
36 | 35 | 'django.contrib.contenttypes',
|
37 | 36 | 'django.contrib.sessions',
|
38 | 37 | 'django.contrib.messages',
|
39 | 38 | 'django.contrib.staticfiles',
|
| 39 | + # |
| 40 | + 'rest_framework', |
| 41 | + 'rest_framework_simplejwt', |
| 42 | + 'rest_framework_simplejwt.token_blacklist', |
| 43 | + # |
| 44 | + 'core.apps.CoreConfig', |
| 45 | + 'user.apps.UserConfig', |
40 | 46 | ]
|
41 | 47 |
|
| 48 | +AUTH_USER_MODEL = 'user.User' |
| 49 | + |
| 50 | +REST_FRAMEWORK = { |
| 51 | + 'DEFAULT_RENDERER_CLASSES': ('rest_framework.renderers.JSONRenderer',), |
| 52 | + 'DEFAULT_AUTHENTICATION_CLASSES': [ |
| 53 | + 'user.authentication.CustomJWTAuthentication', |
| 54 | + ], |
| 55 | +} |
| 56 | + |
| 57 | +SIMPLE_JWT = { |
| 58 | + 'ACCESS_TOKEN_LIFETIME': datetime.timedelta(hours=1), |
| 59 | + 'REFRESH_TOKEN_LIFETIME': datetime.timedelta(days=1), |
| 60 | + 'ROTATE_REFRESH_TOKENS': True, |
| 61 | + 'BLACKLIST_AFTER_ROTATION': True, |
| 62 | + 'UPDATE_LAST_LOGIN': False, |
| 63 | + # |
| 64 | + 'ALGORITHM': 'HS256', |
| 65 | + 'SIGNING_KEY': SECRET_KEY, |
| 66 | + 'VERIFYING_KEY': None, |
| 67 | + 'AUDIENCE': None, |
| 68 | + 'ISSUER': None, |
| 69 | + 'JSON_ENCODER': None, |
| 70 | + 'JWK_URL': None, |
| 71 | + 'LEEWAY': 0, |
| 72 | + # |
| 73 | + 'AUTH_HEADER_TYPES': ('Bearer',), |
| 74 | + 'AUTH_HEADER_NAME': 'HTTP_AUTHORIZATION', |
| 75 | + 'USER_ID_FIELD': 'id', |
| 76 | + 'USER_ID_CLAIM': 'user_id', |
| 77 | + 'USER_AUTHENTICATION_RULE': ( |
| 78 | + 'rest_framework_simplejwt.authentication' |
| 79 | + '.default_user_authentication_rule', |
| 80 | + ), |
| 81 | + # |
| 82 | + 'TOKEN_TYPE_CLAIM': 'token_type', |
| 83 | + 'TOKEN_USER_CLASS': 'rest_framework_simplejwt.models.TokenUser', |
| 84 | + # |
| 85 | + 'JTI_CLAIM': 'jti', |
| 86 | + # |
| 87 | + 'SLIDING_TOKEN_REFRESH_EXP_CLAIM': 'refresh_exp', |
| 88 | + 'SLIDING_TOKEN_LIFETIME': datetime.timedelta(minutes=5), |
| 89 | + 'SLIDING_TOKEN_REFRESH_LIFETIME': datetime.timedelta(days=1), |
| 90 | + # |
| 91 | + 'ACCESS_TOKEN_CLASS': 'user.tokens.CustomAccessToken', |
| 92 | +} |
| 93 | + |
42 | 94 | MIDDLEWARE = [
|
43 | 95 | 'django.middleware.security.SecurityMiddleware',
|
44 | 96 | 'django.contrib.sessions.middleware.SessionMiddleware',
|
|
0 commit comments