2017-02-28 4 views
4

원격 사용자가되어야하는 Django REST 프로젝트를 만들겠습니다. 외부 서버는 인증 API를 노출하고 JWT를 사용합니다. 그것은 나에게 API를 사용할 수있게 해주는 무기명 토큰을 제공합니다. Django는 클라이언트 (모바일 앱)의 인증을 위해 API를 공개해야합니다. 인증 플럭스를 처리하는 방법에 대한 내 마음은 분명하지 않습니다. 사용자 정의 인증을 구축해야합니까?원격 jwt 인증을 사용하는 Django REST

감사합니다.

답변

0

DRF 프로젝트에서 JWT를 구현하는 데 도움이 될 수 있습니다. 나는 그것이 당신에게 당신의 질문의 REST에 대한 명확성을 줄 수 있기를 바랍니다.

REST_FRAMEWORK = { 
    'DEFAULT_PAGINATION_CLASS': 'core.pagination.StandardPageNumberPagination', 
    'DEFAULT_AUTHENTICATION_CLASSES': (
     'rest_framework_jwt.authentication.JSONWebTokenAuthentication', 
     'rest_framework.authentication.SessionAuthentication', 
    ), 
} 

그리고 지금

JWT_AUTH = { 
    'JWT_SECRET_KEY': SECRET_KEY, 
    'JWT_GET_USER_SECRET_KEY': None, 
    'JWT_PUBLIC_KEY': None, 
    'JWT_PRIVATE_KEY': None, 
    'JWT_ALGORITHM': 'HS256', 
    'JWT_VERIFY': True, 
    'JWT_VERIFY_EXPIRATION': True, 
    'JWT_LEEWAY': 0, 
    'JWT_EXPIRATION_DELTA': datetime.timedelta(seconds=300), 
    'JWT_ALLOW_REFRESH': False, 
    'JWT_REFRESH_EXPIRATION_DELTA': datetime.timedelta(days=7), 
} 

이 어떤 각을 이해하기 -

프로젝트 설정 파일에서

INSTALLED_APPS = [ 
    'django.contrib.admin', 
    'django.contrib.auth', 
    'django.contrib.contenttypes', 
    'django.contrib.sessions', 
    'django.contrib.messages', 
    'django.contrib.staticfiles', 
    'rest_framework', 
    'rest_framework.authtoken', 
    'rest_framework_swagger', 
    'rest_framework_jwt', 
    'django_filters', 
    'corsheaders', 
    'sslserver', 
] 

그런 다음이 항목을 만드는 INSTALLED_APPS에 JWT 포함 설정은, 문서를 참조하십시오. 그리고 어떤 점에 대해서도 명확성이 필요하다하더라도 설명 드리겠습니다.

관련 문제