Django에서 세션 시간 초과 추가
2146 단어 djangowebdevprogramming
세션 시간 초과가 필요한 이유는 무엇입니까?
사용자가 인터넷 카페나 도서관의 공용 컴퓨터에서 웹사이트에 액세스하는 경우 로그아웃하는 것을 잊을 가능성이 있습니다. 그렇다면 낯선 사람이 자신의 프로필에 액세스하고 모든 민감한 정보를 읽는 것을 막을 수 있습니다.
사용자가 로그아웃을 클릭하지 않고 대신 브라우저를 닫을 수도 있습니다. 그들에 대해 재치가 있는 사람은 이전 사용자의 기록을 쉽게 다시 추적하고 프로필을 가지고 다시 놀 수 있습니다.
자, 어떻게 정리할까요?
1 단계:
django-session-timeout을 설치하려면 아래 명령을 입력하십시오.
pip install django-session-timeout
2 단계:
다음으로 django-session-timeout에 대한 미들웨어를 추가해야 합니다. 이 미들웨어는 어디에나 삽입할 수 있습니다. 미들웨어는 다음과 같습니다.
# settings.py
MIDDLEWARE = [
'django.contrib.sessions.middleware.SessionMiddleware',
'django_session_timeout.middleware.SessionTimeoutMiddleware',
]
3단계:
settings.py에 포함할 수 있는 몇 가지 유용한 구성은 다음과 같습니다.
세션 제한 시간 만료 시간:
아래 코드는 활동 시작 후 30분이 지나면 세션을 무효화합니다.
세션 제한 시간 만료 시간을 설정하려면 다음을 사용하십시오.
# settings.py
SESSION_EXPIRE_SECONDS = 1800 # Expire after 30 minutes
가장 최근/마지막 활동 후 세션 무효화:
# settings.py
SESSION_EXPIRE_AFTER_LAST_ACTIVITY = True
사용자를 다른 페이지로 리디렉션:
세션이 만료된 후 사용자를 다른 페이지로 리디렉션합니다. 홈페이지일 수도 있지만 접근 방법은 다음과 같습니다.
# settings.py
SESSION_TIMEOUT_REDIRECT = 'redirect_url_/' # Add your URL
브라우저가 닫힐 때 세션 만료:
많은 사용자가 자신의 계정에서 로그아웃하는 것을 잊고 대신 브라우저를 닫을 것입니다. 이에 대비하여 다음 줄을 추가하세요.
# settings.py
SESSION_EXPIRE_AT_BROWSER_CLOSE=True # Invalid session
결론
좋아, 그게 다야! 이제 사용자 세션을 보다 효율적이고 안전하게 처리할 수 있습니다.
마지막 메모…
Django를 처음부터 배우는 데 관심이 있는 분들은 제 최신 과정을 확인해보세요.
Python Django: Ultimate Beginners Course - 2022
Reference
이 문제에 관하여(Django에서 세션 시간 초과 추가), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/arnopretorius/adding-a-session-timeout-in-django-4l5텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)