1
0
mirror of https://github.com/haiwen/seahub.git synced 2025-08-22 16:56:57 +00:00

optimize error msg when login via remote user

This commit is contained in:
lian 2019-05-13 12:01:05 +08:00
parent 30d7542670
commit 243539c510
5 changed files with 44 additions and 11 deletions

View File

@ -134,7 +134,6 @@ class SeafileRemoteUserBackend(AuthBackend):
if not user: if not user:
# when user doesn't exist # when user doesn't exist
if not self.create_unknown_user: if not self.create_unknown_user:
logger.error('User %s not found.' % username)
return None return None
try: try:
@ -150,10 +149,7 @@ class SeafileRemoteUserBackend(AuthBackend):
logger.error(e) logger.error(e)
return None return None
if not self.user_can_authenticate(user): if self.user_can_authenticate(user):
logger.error('User %s is not active' % username)
return None
# update user info after authenticated # update user info after authenticated
try: try:
self.configure_user(request, user) self.configure_user(request, user)

View File

@ -5,6 +5,7 @@ import logging
from django.conf import settings from django.conf import settings
from django.core.exceptions import ImproperlyConfigured from django.core.exceptions import ImproperlyConfigured
from django.utils.deprecation import MiddlewareMixin from django.utils.deprecation import MiddlewareMixin
from django.shortcuts import render
from seahub import auth from seahub import auth
from seahub.base.sudo_mode import update_sudo_mode_ts from seahub.base.sudo_mode import update_sudo_mode_ts
@ -118,7 +119,15 @@ class SeafileRemoteUserMiddleware(MiddlewareMixin):
# We are seeing this user for the first time in this session, attempt # We are seeing this user for the first time in this session, attempt
# to authenticate the user. # to authenticate the user.
user = auth.authenticate(request=request, remote_user=username) user = auth.authenticate(request=request, remote_user=username)
if not user:
if not getattr(settings, 'REMOTE_USER_CREATE_UNKNOWN_USER', True):
return render(request, 'remote_user/create_unknown_user_false.html')
return render(request, 'remote_user/error.html')
if user: if user:
if not user.is_active:
return render(request, 'remote_user/not_active.html')
# User is valid. Set request.user and persist user in the session # User is valid. Set request.user and persist user in the session
# by logging the user in. # by logging the user in.
request.user = user request.user = user

View File

@ -0,0 +1,10 @@
{% extends "base.html" %}
{% load i18n %}
{% block title %}{% trans "Error" %}{% endblock %}
{% block main_panel %}
<div class="text-panel">
<p>{% trans "Error, new user registration is not allowed, please contact administrator." %}</p>
</div>
{% endblock %}

View File

@ -0,0 +1,10 @@
{% extends "base.html" %}
{% load i18n %}
{% block title %}{% trans "Error" %}{% endblock %}
{% block main_panel %}
<div class="text-panel">
<p>{% trans "Error, please contact administrator." %}</p>
</div>
{% endblock %}

View File

@ -0,0 +1,8 @@
{% extends "base.html" %}
{% load i18n %}
{% block main_panel %}
<div class="text-panel">
<p>{% trans "Your account is created successfully, please wait for administrator to activate your account." %}</p>
</div>
{% endblock %}