Python/Django

[Django] 사용자 인증 시스템

S0PH1A 2019. 1. 23. 00:14
반응형
[DJango] 사용자 인증 


Overview
인증 시스템의 구성
    - User
        : 사용자
    - Permissions: Binary(yes/no) flags designating whether a user may perform a certain task.
        : 권한 : 사용자가 업무를 수행할 수 있는지 여부를 지정하는 바이너리 플래그
    - Groups: A generic way of applying labels and permissions to more than one user. 
        : 그룹 : 둘 이상의 사용자에게 라벨과 권한을 적용하는 일반적인 방법
    - A configurable password hashing system
        : 구성 가능한 암호 해시 시스템
    - Forms and view tools for logging in users, or restricting content
        : 사용자 로그인 또는 콘텐츠 제한 도구 보기
    - A pluggable backend system
        : 플러그 가능한 백엔드 시스템


Installation 설정 방법
인증 지원은 django.contrib.auth에서 Django contrib 모듈로 번들된다. 기본적으로 필요한 구성은 이미 django-admin startproject에서 생성된 seting.py에 포함되어 있으며 INSTALLED_APPS 설정에 나열된 두 가지 항목으로 구성된다:
    1. 'django.contrib.auth' ; 인증 프레임 워크의 핵심과 기본 모델이 포함되어 있습니다.
    2. 'django.contrib.contenttypes' : Django 콘텐츠 유형 시스템으로, 사용자가 만든 모델과 권한을 연관시킬 수 있다.
그리고 이 아이템들이 MIDDLEWARE 세팅에 있다.
    1. SessionMiddleware: 요청에 따라 세션을 관리한다.
    2. AuthenticationMiddleware : 세션을 사용하여 사용자를 요청과 연관시킨다.


이러한 설정을 설정하면 manage.py migrate 명령을 실행하면 설치된 앱에 정의된 모든 모델에 대한 인증 관련 모델 및 권한에 필요한 데이터베이스 테이블이 작성된다.


Usage
- Using Django's default implementation (원문
- Working with User objects (원문) (번역)
- Permissions and authorization (원문)
- Authentication in web requests (원문)
- Managing users in the admin (원문)
- API reference for the default implementation (원문)
- Customizing Users and authentication (원문)
- Password management in Django (원문)




[참고] django docs


반응형