본문 바로가기
Django

[Django] 로그인과 로그아웃

by 기록하는_사람 2022. 12. 20.

로그인

📌 로그인

from django.contrib.auth import authenticate, login

def login_user(requeset):
     un = request.POST.get("username")
     pw = request.POST.get("password")
     user = authenticate(username=un, password=pw)
     if user:
	 login(request, user)
     ...

- authenticate

: 사용자의 username, password 통해서 인증함.

  일치하는 정보가 있으면 User의 레코드를 반환하고, 없으면 None을 반환함.

 

- login(request, user)

: request에 user를 실어주는 역할.

  인증된 사용자인 경우, request.user로 접근해 user의 속성에 접근할 수 있음.

 

💡 암호학

① 평문(plain text) : 사람들이 해석할 수 있는 텍스트.

② 비문(ciphte text) : 사람들이 해석할 수 없는 텍스트.

③ 암호화 : 평문 → 비문

④ 복호화 : 비문  평문

⑤ 암호화 알고리즘

     - 양방향 암호화 알고리즘 : 암호화 가능, 복호화 가능

     - 단방향 암호화 알고리즘 : 암호화 가능, 복호확 불가능

 

💡 password를 입력하면(평문), 암호화를 시킨 후, 암호화된 것(비문)과 비교함.

 

📌 로그인된 사용자 식별

: user.is_authenticated 사용해서 로그인된 사용자 식별 가능.

{% if user.is_authenticated %}
	로그인된 사용자화면
{% else %}
	로그인되지 않은 사용자화면
{% endif %}

  

로그아웃

📌 로그아웃

from django.contrib.auth import logout

def logout_user(request):
    logout(request)

'Django' 카테고리의 다른 글

[Django] user CRUD(3) - 로그인과 로그아웃  (0) 2022.12.20
[Django] User CRUD  (0) 2022.12.20
[Django] user CRUD(2) - User 생성  (0) 2022.12.20
[Django] 인증(Authentication)  (0) 2022.12.20
[Django] user CRUD(1) - 기본 세팅  (0) 2022.12.20

댓글