djoser를 사용한 Django REST Framework에서 인증 기능 구현
djoser란?
djoser은 Django REST Framework에서 기본적인 사용자 인증이나 등록 등의 인증 주위를 지원해주는 라이브러리입니다.
커스텀 모델에 대해서도 사용할 수 있어, Django의 코드를 재이용하는 형태를 취하는 것이 아니라, Single Page Application(이하 SPA)에 의해 피트하는 것 같은 아키텍쳐를 목표로 해 만들어지고 있습니다.
이번에는 djoser의 가장 간단한 인증 기능 구현에 대해 씁니다.
덧붙여 이 인증은 시큐리티의 면 등으로부터 실제로 사용해서는 안 되고, 이하의 JWT 인증과 같은 보다 견고한 시큐러티의 설정이 있습니다.
어디까지나 간편한 인증으로 소개합니다.
JWT 인증 설정은 여기에서 설명합니다.
소스 코드는 이쪽
덧붙여 다음의 모두가 도입 후에 엔드 포인트로서 사용할 수 있습니다.
/users/
/users/me/
/users/confirm/
/users/resend_activation/
/users/set_password/
/users/reset_password/
/users/reset_password_confirm/
/users/set_username/
/users/reset_username/
/users/reset_username_confirm/
/token/login/(Token Based Authentication)
/token/logout/(Token Based Authentication)
/jwt/create/(JSON Web Token Authentication)
/jwt/refresh/(JSON Web Token Authentication)
/jwt/verify/(JSON Web Token Authentication)
Getting started
사용법
우선 설치에서.
$ pip install -U djoser
우선 프로젝트를 만들고
$ django-admin startproject simple_djoser_authentication
프로젝트로 이동합니다.
$ cd simple_djoser_authentication
장고를 설정합니다.
setings.py
.........
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'rest_framework', # add
'djoser' # add
]
urls.pyfrom django.contrib import admin
from django.urls import path,include #add
urlpatterns = [
path('admin/', admin.site.urls),
path('api/auth/',include('djoser.urls')), #add
]
이것뿐입니다.
이 후에 마이그레이션하고 Admin 사용자를 만들어 로컬로 시작합니다.
$ python manage.py migrations
$ python manage.py createsuperuser
Username: Admin
Email address: [email protected]
Password:***********
$ python manage.py runserver
그리고
http://localhost:8000/api/auth/
에 액세스합니다.
그러면
위와 같은 화면이 표시됩니다.
그리고 다음
http://localhost:8000/api/auth/users/
방문하면,
위와 같은 사용자 정보 목록이 표시됩니다.
이것만으로 인증 주위의 기본적인 기능은 도입 완료입니다.
Reference
이 문제에 관하여(djoser를 사용한 Django REST Framework에서 인증 기능 구현), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/KueharX/items/eef29ae0c5c238cbf61c
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
우선 설치에서.
$ pip install -U djoser
우선 프로젝트를 만들고
$ django-admin startproject simple_djoser_authentication
프로젝트로 이동합니다.
$ cd simple_djoser_authentication
장고를 설정합니다.
setings.py
.........
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'rest_framework', # add
'djoser' # add
]
urls.py
from django.contrib import admin
from django.urls import path,include #add
urlpatterns = [
path('admin/', admin.site.urls),
path('api/auth/',include('djoser.urls')), #add
]
이것뿐입니다.
이 후에 마이그레이션하고 Admin 사용자를 만들어 로컬로 시작합니다.
$ python manage.py migrations
$ python manage.py createsuperuser
Username: Admin
Email address: [email protected]
Password:***********
$ python manage.py runserver
그리고
http://localhost:8000/api/auth/
에 액세스합니다.
그러면
위와 같은 화면이 표시됩니다.
그리고 다음
http://localhost:8000/api/auth/users/
방문하면,
위와 같은 사용자 정보 목록이 표시됩니다.
이것만으로 인증 주위의 기본적인 기능은 도입 완료입니다.
Reference
이 문제에 관하여(djoser를 사용한 Django REST Framework에서 인증 기능 구현), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/KueharX/items/eef29ae0c5c238cbf61c텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)