Я использую django 1.8 для моего проекта, и я попытался использовать django.contrib.auth.middleware.SessionAuthenticationMiddleware
в промежуточном программном обеспечении, чтобы выйти из другой сессии после сброса пароля. Это нормально, но проблема, с которой я столкнулась, - после сброса, это отключение даже этой сессии, которая изменила пароль. Я хочу, чтобы после сброса пароля сессия, в которой мы меняем пароль, не выходила из системы. Наша модель user
унаследована от AbstractUser
Проблема с аутентификацией Django после реселлера пароль
ответ
Если вы используете свой собственный вид для смены пароля, django дает вам возможность обновлять сеанс после смены пароля, чтобы пользователь не выходил из системы.
Для этого вы можете использовать функцию update_session_auth_hash
.
Django's user_change_password
обновление сеанса после смены пароля. Но у вас есть собственные представления, вы можете использовать update_session_auth_hash
так:
from django.contrib.auth import update_session_auth_hash
def password_change(request):
if request.method == 'POST':
form = PasswordChangeForm(user=request.user, data=request.POST)
if form.is_valid():
form.save()
update_session_auth_hash(request, form.user)
else:
...
Django документы о session invalidation on password change
Вместо того, чтобы идти через все это, вы можете использовать вместо django-allauth
. Это потрясающее приложение и имеет для него все функции аутентификации.
@ v1k34 что такое form.user, могу ли я передать request.user вместо некоторой строки, потому что у меня есть пользовательская форма, которая содержит только поле пароля. – Pramod
Да, вы также можете передать 'request.user'. Вышеприведенный код просто позволяет обновить сеанс аутентификации пользователя, который мы предоставили для смены пароля. – v1k45
- 1. Проблема с аутентификацией Windows
- 2. Проблема с пользовательской аутентификацией Backend для Django
- 3. Cakephp3.0 Проблема с аутентификацией
- 4. sfFacebookConnectPlugin: проблема с аутентификацией
- 5. Проблемы с аутентификацией Django
- 6. Проблема с аутентификацией Jboss
- 7. Проблема с аутентификацией Lightswitch
- 8. SAML с аутентификацией Django
- 9. Проблема с аутентификацией с Wufoo
- 10. Проблема с аутентификацией ASP.NET
- 11. Проблема с аутентификацией из разных доменов с использованием сеансов Django
- 12. Проблема с аутентификацией весенней безопасности
- 13. Моя проблема с аутентификацией Google
- 14. Проблема с аутентификацией с использованием Kamailio
- 15. chrome console показать пароль с дайджест-аутентификацией
- 16. Переопределение аутентификации django с аутентификацией основы Django
- 17. django и angular.js с аутентификацией
- 18. проблема с аутентификацией или ошибка
- 19. Проблема с неавтоматической аутентификацией форм
- 20. проблема с аутентификацией WP-API
- 21. Проблема с аутентификацией deviantart (PHP)
- 22. Проблема с аутентификацией на java ws
- 23. MySQL Connector/MXJ: проблема с аутентификацией
- 24. медленный (JavaFX) код даже после реселлера репозитория
- 25. Проблема с аутентификацией с KMS Hadoop
- 26. См. FTP-пароль пользователя в качестве реселлера в Plesk
- 27. проблема аутентификации перекрестного домена с открытым аутентификацией
- 28. проблема с отображением URI-реселлера, как отобразить путь «другие»
- 29. Django rest удалить пароль после создания
- 30. Проблема с аутентификацией CKFinder с laravel 5
Как вы сбрасываете пароль? – Sayse