diff --git a/documentation/maintainers/settings.rst b/documentation/maintainers/settings.rst index 9ac3a357..8dfb3997 100644 --- a/documentation/maintainers/settings.rst +++ b/documentation/maintainers/settings.rst @@ -31,9 +31,11 @@ Afin que les utilisateurs de b3desk puissent accéder à leurs fichiers Nextclou Il est donc nécessaire de configurer les paramètres de configuration suivants : -- :attr:`~b3desk.settings.MainSettings.SECRET_KEY` (TODO) -- :attr:`~b3desk.settings.MainSettings.SECRET_KEY` (TODO) -- :attr:`~b3desk.settings.MainSettings.SECRET_KEY` (TODO) +- :attr:`~b3desk.settings.MainSettings.SECONDARY_IDENTITY_PROVIDER_ENABLED` +- :attr:`~b3desk.settings.MainSettings.SECONDARY_IDENTITY_PROVIDER_URI` +- :attr:`~b3desk.settings.MainSettings.SECONDARY_IDENTITY_PROVIDER_REALM` +- :attr:`~b3desk.settings.MainSettings.SECONDARY_IDENTITY_PROVIDER_CLIENT_ID` +- :attr:`~b3desk.settings.MainSettings.SECONDARY_IDENTITY_PROVIDER_CLIENT_SECRET` On peut ensuite tester que la configuration est correcte grâce à la commande suivante: diff --git a/web/b3desk/settings.py b/web/b3desk/settings.py index d61d600a..10361d19 100644 --- a/web/b3desk/settings.py +++ b/web/b3desk/settings.py @@ -433,6 +433,28 @@ def get_allowed_mime_types_server_side( Plus d’infos sur https://flask-pyoidc.readthedocs.io/en/latest/api.html#module-flask_pyoidc.provider_configuration """ + SECONDARY_IDENTITY_PROVIDER_ENABLED: Optional[bool] = False + """Indique si un second serveur d'identité pour la connection a un + Nextcloud est activée. + + S'il y a bien besoin de ce second serveur d'identité pour connecter + un utilisateur sur un Nextcloud, l'identifiant Nextcloud de + l'utilisateur sera recherché à partir de son mail. + """ + + SECONDARY_IDENTITY_PROVIDER_URI: Optional[str] = None + """Url du serveur d'identité permettant de retrouver un id utilisateur à + partir de son email.""" + + SECONDARY_IDENTITY_PROVIDER_REALM: Optional[str] = None + """Groupe sous lequel est enregistré l'utilisateur.""" + + SECONDARY_IDENTITY_PROVIDER_CLIENT_ID: Optional[str] = None + """ID du client B3desk dans ce serveur d'identité.""" + + SECONDARY_IDENTITY_PROVIDER_CLIENT_SECRET: Optional[str] = None + """Secret du client B3desk dans ce serveur d'identité.""" + @field_validator("OIDC_ATTENDEE_ISSUER") def get_attendee_issuer(cls, attendee_issuer: str, info: ValidationInfo) -> str: return attendee_issuer or info.data.get("OIDC_ISSUER")