1
0
mirror of https://gitlab.crans.org/bde/nk20 synced 2025-04-18 21:02:17 +00:00

Compare commits

...

5 Commits

Author SHA1 Message Date
bleizi
4cccd00a12 Merge branch 'openid-connect' into 'main'
Openid connect

See merge request bde/nk20!293
2025-03-11 10:58:07 +01:00
quark
370a9a069e Merge branch 'bde_color' into 'main'
Rave Part[list] colors

See merge request bde/nk20!295
2025-03-11 10:31:02 +01:00
quark
7f0a3784e9 Rave Part[list] colors 2025-03-11 10:15:11 +01:00
Nicolas Margulies
6c63c6417c Typesetting 2025-03-08 16:08:40 +01:00
Nicolas Margulies
4563b2b640 Added configusation for OpenID support, along with installation information 2025-03-08 16:04:25 +01:00
3 changed files with 69 additions and 33 deletions

View File

@ -58,7 +58,13 @@ Bien que cela permette de créer une instance sur toutes les distributions,
(env)$ ./manage.py createsuperuser # Création d'un⋅e utilisateur⋅rice initial
```
6. Enjoy :
6. (Optionnel) **Création d'une clé privée OpenID Connect**
Pour activer le support d'OpenID Connect, il faut générer une clé privée, par
exemple avec openssl (`openssl genrsa -out oidc.key 4096`), et renseigner son
emplacement dans `OIDC_RSA_PRIVATE_KEY` (par défaut `/var/secrets/oidc.key`).
7. Enjoy :
```bash
(env)$ ./manage.py runserver 0.0.0.0:8000
@ -228,6 +234,12 @@ Sinon vous pouvez suivre les étapes décrites ci-dessous.
(env)$ ./manage.py check # pas de bêtise qui traine
(env)$ ./manage.py migrate
7. **Création d'une clé privée OpenID Connect**
Pour activer le support d'OpenID Connect, il faut générer une clé privée, par
exemple avec openssl (`openssl genrsa -out oidc.key 4096`), et renseigner son
emplacement dans `OIDC_RSA_PRIVATE_KEY` (par défaut `/var/secrets/oidc.key`).
7. *Enjoy \o/*
### Installation avec Docker

View File

@ -268,6 +268,10 @@ OAUTH2_PROVIDER = {
'OAUTH2_VALIDATOR_CLASS': "permission.scopes.PermissionOAuth2Validator",
'REFRESH_TOKEN_EXPIRE_SECONDS': timedelta(days=14),
'PKCE_REQUIRED': False, # PKCE (fix a breaking change of django-oauth-toolkit 2.0.0)
'OIDC_ENABLED': True,
'OIDC_RSA_PRIVATE_KEY':
os.getenv('OIDC_RSA_PRIVATE_KEY', '/var/secrets/oidc.key'),
'SCOPES': { 'openid': "OpenID Connect scope" },
}
# Take control on how widget templates are sourced

View File

@ -61,6 +61,11 @@ mark {
/* Make navbar more readable */
.navbar-dark .navbar-nav .nav-link {
color: rgba(255, 255, 255, .75);
text-shadow: 2px 2px 15px #ffeb40;
}
.navbar-brand {
text-shadow: 2px 2px 15px #ffeb40;
}
/* Last BDE colors */
@ -68,7 +73,8 @@ mark {
/* background-color: rgb(18, 67, 4) !important; */
/* MODE VIEUXCON=ON */
/* background-color: rgb(166, 0, 2) !important; */
background-color: rgb(100, 30, 100) !important;
background-color: rgb(0, 0, 0);
background-image: url('/static/wrapped/img/1/bg.png');
}
html {
@ -83,81 +89,95 @@ body {
.btn-outline-primary:hover,
.btn-outline-primary:not(:disabled):not(.disabled).active,
.btn-outline-primary:not(:disabled):not(.disabled):active {
color: rgb(240, 200, 240);
background-color: rgb(30, 120, 150);
border-color: rgb(190, 150, 190);
color: rgb(0, 0, 0);
background-color: rgb(255, 0, 101);
border-color: rgb(255, 203, 32);
}
.btn-outline-primary {
color: #a2a;
background-color: #6bc;
border-color: #719;
color: #000;
background-color: #ffcb20;
border-color: #000;
}
.turbolinks-progress-bar {
background-color: #12342E;
background-color: #ffffff;
}
.btn-primary:hover,
.btn-primary:not(:disabled):not(.disabled).active,
.btn-primary:not(:disabled):not(.disabled):active {
color: rgb(150, 200, 240);
background-color: rgb(50, 100, 140);
border-color: rgb(0, 0, 0);
color: rgb(0, 0, 0);
background-color: rgb(255, 0, 101);
border-color: rgb(255, 203, 32);
}
.btn-primary {
color: #eae;
background-color: #616;
border-color: #000000;
color: #ffcb20;
background-color: #000000;
border-color: #ffcd20;
}
.border-primary {
border-color: rgb(222, 180, 222) !important;
border-color: rgb(255, 255, 255) !important;
}
.btn-secondary {
color: #eae;
background-color: #616;
border-color: #000000;
color: #ff0065;
background-color: #000000;
border-color: #ff0065;
}
.btn-secondary:hover,
.btn-secondary:not(:disabled):not(.disabled).active,
.btn-secondary:not(:disabled):not(.disabled):active {
color: rgb(150, 200, 240);
background-color: rgb(50, 100, 140);
border-color: rgb(0, 0, 0);
color: rgb(0, 0, 0);
background-color: rgb(255, 203, 32);
border-color: rgb(255, 0, 101);
}
.btn-outline-dark:nth-child(even) {
color: rgba(255, 203, 32, 75%);
}
.btn-outline-dark:nth-child(odd) {
color: rgba(255, 0, 101, 75%);
}
.btn-outline-dark {
color: #000000;
border-color: #000000;
background-color: #222;
border-color: #61605b;
}
.btn-outline-dark:hover,
.btn-outline-dark:hover:nth-child(even),
.btn-outline-dark:not(:disabled):not(.disabled).active,
.btn-outline-dark:not(:disabled):not(.disabled):active {
color: rgb(50, 100, 160);
background-color: rgb(240, 150, 240);
border-color: rgb(50, 100, 160);
color: rgb(0, 0, 0);
background-color: rgb(255, 203, 32);
border-color: rgb(255, 0, 101);
}
.btn-outline-dark:hover:nth-child(odd),
.btn-outline-dark:not(:disabled):not(.disabled).active,
.btn-outline-dark:not(:disabled):not(.disabled):active {
color: rgb(0, 0, 0);
background-color: rgb(255, 203, 32);
border-color: rgb(255, 0, 101);
}
a {
color: rgb(0, 150, 150);
color: rgb(255, 0, 101);
}
a:hover {
color: rgb(200, 0, 200);
color: rgb(255, 203, 32);
}
.form-control:focus {
box-shadow: 0 0 0 0.25rem rgb(0 150 150 / 50%);
border-color: rgb(0, 200, 200);
box-shadow: 0 0 0 0.25rem rgb(255 0 101 / 50%);
border-color: rgb(255, 0, 101);
}
.btn-outline-primary.focus {
box-shadow: 0 0 0 0.25rem rgb(0 150 150 / 22%);
box-shadow: 0 0 0 0.25rem rgb(255 203 32 / 22%);
}