Add oidc capability

This commit is contained in:
Maximilian Friedersdorff 2024-06-28 15:04:51 +01:00
parent 935e57013d
commit 21bd04c879
8 changed files with 53 additions and 18 deletions

View file

@ -39,6 +39,7 @@ INSTALLED_APPS = [
"django.contrib.staticfiles",
"django.contrib.humanize",
"django_bootstrap5",
"oauth2_authcodeflow",
"reinheit.apps.brew",
"reinheit.apps.styles",
"reinheit.apps.ingredients",
@ -127,3 +128,8 @@ STATICFILES_DIRS = [BASE_DIR / "reinheit" / "static"]
# https://docs.djangoproject.com/en/5.0/ref/settings/#default-auto-field
DEFAULT_AUTO_FIELD = "django.db.models.BigAutoField"
AUTHENTICATION_BACKENDS = [
"oauth2_authcodeflow.auth.AuthenticationBackend",
"django.contrib.auth.backends.ModelBackend",
]

View file

@ -4,4 +4,5 @@ from django.contrib import admin
urlpatterns = [
path("admin/", admin.site.urls),
path("brews/", include(("reinheit.apps.brew.urls", "brew"), namespace="brews")),
path("oidc/", include("oauth2_authcodeflow.urls")),
]

View file

@ -27,7 +27,12 @@ class YeastAdditionInline(admin.TabularInline):
@admin.register(Brew)
class BrewAdmin(admin.ModelAdmin):
inlines = [MaltAdditionInline, FermentableAdditionInline, ChemicalAdditionInline, YeastAdditionInline]
inlines = [
MaltAdditionInline,
FermentableAdditionInline,
ChemicalAdditionInline,
YeastAdditionInline,
]
list_display = ["name", "style", "pitch_date"]
date_hierarchy = "pitch_date"

View file

@ -92,9 +92,7 @@ class Migration(migrations.Migration):
("added", models.DateTimeField(null=True)),
(
"brew",
models.ForeignKey(
on_delete=django.db.models.deletion.CASCADE, to="brew.brew"
),
models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to="brew.brew"),
),
],
options={

View file

@ -22,9 +22,7 @@ class Migration(migrations.Migration):
migrations.AddField(
model_name="fermentableaddition",
name="brew",
field=models.ForeignKey(
on_delete=django.db.models.deletion.CASCADE, to="brew.brew"
),
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to="brew.brew"),
),
migrations.AddField(
model_name="fermentableaddition",
@ -37,9 +35,7 @@ class Migration(migrations.Migration):
migrations.AddField(
model_name="maltaddition",
name="brew",
field=models.ForeignKey(
on_delete=django.db.models.deletion.CASCADE, to="brew.brew"
),
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to="brew.brew"),
),
migrations.AddField(
model_name="maltaddition",
@ -52,9 +48,7 @@ class Migration(migrations.Migration):
migrations.AddField(
model_name="yeastaddition",
name="brew",
field=models.ForeignKey(
on_delete=django.db.models.deletion.CASCADE, to="brew.brew"
),
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to="brew.brew"),
),
migrations.AddField(
model_name="yeastaddition",

View file

@ -1,3 +1,4 @@
django
django-bootstrap5
djlint
django-oauth2-authcodeflow

View file

@ -1,21 +1,34 @@
# This file was autogenerated by uv via the following command:
# uv pip compile requirements/base.in
# uv pip compile ./requirements/base.in
asgiref==3.8.1
# via django
certifi==2024.6.2
# via requests
cffi==1.16.0
# via cryptography
charset-normalizer==3.3.2
# via requests
click==8.1.7
# via djlint
colorama==0.4.6
# via djlint
cryptography==42.0.8
# via python-jose
cssbeautifier==1.15.1
# via djlint
django==5.0.6
# via
# -r requirements/base.in
# -r ./requirements/base.in
# django-bootstrap5
# django-oauth2-authcodeflow
django-bootstrap5==24.2
# via -r requirements/base.in
# via -r ./requirements/base.in
django-oauth2-authcodeflow==1.1.0
# via -r ./requirements/base.in
djlint==1.34.1
# via -r requirements/base.in
# via -r ./requirements/base.in
ecdsa==0.19.0
# via python-jose
editorconfig==0.12.4
# via
# cssbeautifier
@ -24,6 +37,8 @@ html-tag-names==0.1.2
# via djlint
html-void-elements==0.1.0
# via djlint
idna==3.7
# via requests
jsbeautifier==1.15.1
# via
# cssbeautifier
@ -32,15 +47,30 @@ json5==0.9.25
# via djlint
pathspec==0.12.1
# via djlint
pyasn1==0.6.0
# via
# python-jose
# rsa
pycparser==2.22
# via cffi
python-jose==3.3.0
# via django-oauth2-authcodeflow
pyyaml==6.0.1
# via djlint
regex==2023.12.25
# via djlint
requests==2.32.3
# via django-oauth2-authcodeflow
rsa==4.9
# via python-jose
six==1.16.0
# via
# cssbeautifier
# ecdsa
# jsbeautifier
sqlparse==0.5.0
# via django
tqdm==4.66.4
# via djlint
urllib3==2.2.2
# via requests

View file

@ -7,7 +7,7 @@ import traceback
from django.core.wsgi import get_wsgi_application
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'config.settings.production')
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "config.settings.production")
app = get_wsgi_application()
NUM_WORKERS = 1