Add local login flag
This commit is contained in:
parent
29258c4348
commit
32182fab27
|
|
@ -110,7 +110,9 @@ AUTH_USER_MODEL = "core.User"
|
||||||
# https://docs.djangoproject.com/en/dev/ref/settings/#login-redirect-url
|
# https://docs.djangoproject.com/en/dev/ref/settings/#login-redirect-url
|
||||||
# LOGIN_REDIRECT_URL = "users:redirect"
|
# LOGIN_REDIRECT_URL = "users:redirect"
|
||||||
# https://docs.djangoproject.com/en/dev/ref/settings/#login-url
|
# https://docs.djangoproject.com/en/dev/ref/settings/#login-url
|
||||||
LOGIN_URL = "/login/"
|
LOGIN_URL = "/sso/login/"
|
||||||
|
|
||||||
|
ALLOW_LOCAL_LOGIN = env.bool("VBV_ALLOW_LOCAL_LOGIN", default=False)
|
||||||
|
|
||||||
# PASSWORDS
|
# PASSWORDS
|
||||||
# ------------------------------------------------------------------------------
|
# ------------------------------------------------------------------------------
|
||||||
|
|
|
||||||
|
|
@ -33,7 +33,6 @@ urlpatterns = [
|
||||||
path("", django_view_authentication_exempt(TemplateView.as_view(template_name="pages/home.html")), name="home"),
|
path("", django_view_authentication_exempt(TemplateView.as_view(template_name="pages/home.html")), name="home"),
|
||||||
path('admin/raise_error/', user_passes_test(lambda u: u.is_superuser, login_url='/login/')(raise_example_error), ),
|
path('admin/raise_error/', user_passes_test(lambda u: u.is_superuser, login_url='/login/')(raise_example_error), ),
|
||||||
path(settings.ADMIN_URL, admin.site.urls),
|
path(settings.ADMIN_URL, admin.site.urls),
|
||||||
path("login/", django_view_authentication_exempt(auth_views.LoginView.as_view(template_name="core/login.html"))),
|
|
||||||
path("checkratelimit/", check_rate_limit),
|
path("checkratelimit/", check_rate_limit),
|
||||||
path("todo/", include("vbv_lernwelt.simpletodo.urls")),
|
path("todo/", include("vbv_lernwelt.simpletodo.urls")),
|
||||||
path("sso/", include("vbv_lernwelt.sso.urls")),
|
path("sso/", include("vbv_lernwelt.sso.urls")),
|
||||||
|
|
@ -42,6 +41,11 @@ if settings.DEBUG:
|
||||||
# Static file serving when using Gunicorn + Uvicorn for local web socket development
|
# Static file serving when using Gunicorn + Uvicorn for local web socket development
|
||||||
urlpatterns += staticfiles_urlpatterns()
|
urlpatterns += staticfiles_urlpatterns()
|
||||||
|
|
||||||
|
if settings.ALLOW_LOCAL_LOGIN:
|
||||||
|
urlpatterns += [path("login/", django_view_authentication_exempt(
|
||||||
|
auth_views.LoginView.as_view(template_name="core/login.html"))),]
|
||||||
|
|
||||||
|
|
||||||
# API URLS
|
# API URLS
|
||||||
urlpatterns += [
|
urlpatterns += [
|
||||||
# API base url
|
# API base url
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,4 @@
|
||||||
from django.urls import path
|
from django.urls import path
|
||||||
from django.conf.urls import url, include
|
|
||||||
from rest_framework.routers import DefaultRouter
|
|
||||||
|
|
||||||
from . import views
|
from . import views
|
||||||
from ..core.middleware.auth import django_view_authentication_exempt
|
from ..core.middleware.auth import django_view_authentication_exempt
|
||||||
|
|
|
||||||
|
|
@ -28,13 +28,13 @@ def authorize(request):
|
||||||
logger.warning(f'OAuth error: {e}')
|
logger.warning(f'OAuth error: {e}')
|
||||||
if not settings.DEBUG:
|
if not settings.DEBUG:
|
||||||
capture_exception(e)
|
capture_exception(e)
|
||||||
return redirect(f'/{OAUTH_REDIRECT}?state=someerror')
|
return redirect(f'/{OAUTH_REDIRECT}?state=someerror') # to be defined
|
||||||
|
|
||||||
user_data = _user_data_from_token_data(deocded_token)
|
user_data = _user_data_from_token_data(deocded_token)
|
||||||
created = get_user_model().objects.create_or_update_by_email(user_data["email"], user_data["first_name"],
|
created = get_user_model().objects.create_or_update_by_email(user_data["email"], user_data["first_name"],
|
||||||
user_data["last_name"], user_data["username"])
|
user_data["last_name"], user_data["username"])
|
||||||
|
|
||||||
return redirect(f'/{OAUTH_REDIRECT}?state=success')
|
return redirect(f'/{OAUTH_REDIRECT}?state=success') # to be defined
|
||||||
|
|
||||||
|
|
||||||
def _user_data_from_token_data(token: dict) -> dict:
|
def _user_data_from_token_data(token: dict) -> dict:
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue