From b3a484ce55297fcaeca36fae17ce85f6c03513bf Mon Sep 17 00:00:00 2001 From: Ojakoo Date: Mon, 4 Jul 2022 10:19:40 +0300 Subject: [PATCH] Added verify path --- sikweb/settings.py | 32 ++++++++++++++++++++++++++++++++ webapp/urls.py | 7 ++++--- 2 files changed, 36 insertions(+), 3 deletions(-) diff --git a/sikweb/settings.py b/sikweb/settings.py index 9b22a24..821b2e8 100644 --- a/sikweb/settings.py +++ b/sikweb/settings.py @@ -78,3 +78,35 @@ DATABASES = { "OPTIONS": DB_OPTIONS, } } + +SIMPLE_JWT = { + 'ACCESS_TOKEN_LIFETIME': timedelta(minutes=5), + 'REFRESH_TOKEN_LIFETIME': timedelta(days=1), + 'ROTATE_REFRESH_TOKENS': False, + 'BLACKLIST_AFTER_ROTATION': False, + 'UPDATE_LAST_LOGIN': False, + + 'ALGORITHM': 'HS256', + 'SIGNING_KEY': SECRET_KEY, + 'VERIFYING_KEY': None, + 'AUDIENCE': None, + 'ISSUER': None, + 'JWK_URL': None, + 'LEEWAY': 0, + + 'AUTH_HEADER_TYPES': ('Bearer',), + 'AUTH_HEADER_NAME': 'HTTP_AUTHORIZATION', + 'USER_ID_FIELD': 'id', + 'USER_ID_CLAIM': 'user_id', + 'USER_AUTHENTICATION_RULE': 'rest_framework_simplejwt.authentication.default_user_authentication_rule', + + 'AUTH_TOKEN_CLASSES': ('rest_framework_simplejwt.tokens.AccessToken',), + 'TOKEN_TYPE_CLAIM': 'token_type', + 'TOKEN_USER_CLASS': 'rest_framework_simplejwt.models.TokenUser', + + 'JTI_CLAIM': 'jti', + + 'SLIDING_TOKEN_REFRESH_EXP_CLAIM': 'refresh_exp', + 'SLIDING_TOKEN_LIFETIME': timedelta(minutes=5), + 'SLIDING_TOKEN_REFRESH_LIFETIME': timedelta(days=1), +} diff --git a/webapp/urls.py b/webapp/urls.py index 3c09100..b98b172 100644 --- a/webapp/urls.py +++ b/webapp/urls.py @@ -3,7 +3,7 @@ from django.conf.urls import url, include from django.urls import path from rest_framework import routers -from rest_framework_simplejwt.views import TokenObtainPairView, TokenRefreshView +from rest_framework_simplejwt.views import TokenObtainPairView, TokenRefreshView, TokenVerifyView from webapp.views import * @@ -22,7 +22,8 @@ router.register(r"jobads", JobAdViewSet) urlpatterns = [ url(r"^api/", include(router.urls)), - path("api/token/", TokenObtainPairView.as_view(), name="token_obtain_pair"), - path("api/token/refresh/", TokenRefreshView.as_view(), name="token_refresh"), + path(r"api/token/", TokenObtainPairView.as_view(), name="token_obtain_pair"), + path(r"api/token/verify/", TokenVerifyView.as_view(), name='token_verify'), + path(r"api/token/refresh/", TokenRefreshView.as_view(), name="token_refresh"), url(r"^jwt_nginx", nginx_jwt_resp), ]