diff --git a/seahub/password_session/middleware.py b/seahub/password_session/middleware.py index 10893dc2f9..37cf7b0f7b 100644 --- a/seahub/password_session/middleware.py +++ b/seahub/password_session/middleware.py @@ -8,5 +8,9 @@ class CheckPasswordHash(object): """Logout user if value of hash key in session is not equal to current password hash""" def process_view(self, request, *args, **kwargs): if getattr(request.user, 'is_authenticated') and request.user.is_authenticated(): + if request.user.enc_password == '!': + # Disable for LDAP/Shibboleth/SAML/... users. + return None + if request.session.get(PASSWORD_HASH_KEY) != get_password_hash(request.user): - logout(request) \ No newline at end of file + logout(request)