Use a custom Matrix username

This commit is contained in:
Yohann D'ANELLO 2020-10-28 17:19:25 +01:00
parent 2ead8cdad5
commit 642ac94b7a
5 changed files with 38 additions and 3 deletions

View File

@ -15,6 +15,11 @@ RUN pip install -r requirements.txt psycopg2-binary sympasoap --no-cache-dir
COPY . /code/
RUN python manage.py collectstatic --noinput && \
python manage.py compilemessages && \
python manage.py migrate && \
python manage.py loaddata initial
# Configure nginx
RUN mkdir /run/nginx
RUN ln -sf /dev/stdout /var/log/nginx/access.log && ln -sf /dev/stderr /var/log/nginx/error.log

14
apps/registration/auth.py Normal file
View File

@ -0,0 +1,14 @@
from cas_server.auth import DjangoAuthUser
from django.utils.text import slugify
class CustomAuthUser(DjangoAuthUser):
"""
Override Django Auth User model to define a custom Matrix username.
"""
def attributs(self):
d = super().attributs()
if self.user:
d["matrix_username"] = slugify(str(self.user.registration))
return d

View File

@ -0,0 +1,17 @@
[
{
"model": "cas_server.servicepattern",
"pk": 1,
"fields": {
"pos": 100,
"name": "Plateforme des Correspondances",
"pattern": "^https://correspondances-maths.fr:8448/.*$",
"user_field": "matrix_username",
"restrict_users": false,
"proxy": true,
"proxy_callback": true,
"single_log_out": true,
"single_log_out_callback": ""
}
}
]

View File

@ -131,6 +131,8 @@ PASSWORD_HASHERS = [
'django.contrib.auth.hashers.BCryptPasswordHasher',
]
CAS_AUTH_CLASS = 'registration.auth.CustomAuthUser'
REST_FRAMEWORK = {
'DEFAULT_PERMISSION_CLASSES': [
'rest_framework.permissions.IsAdminUser'

View File

@ -2,9 +2,6 @@
crond -l 0
python manage.py compilemessages
python manage.py migrate
nginx
if [ "$CORRES2MATH_STAGE" = "prod" ]; then