Skip to content

Commit

Permalink
Merge pull request naturalsolutions#55 from MathildeNS/docs/keycloak_…
Browse files Browse the repository at this point in the history
…configuration

Docs/keycloak configuration
  • Loading branch information
MathildeNS authored Dec 6, 2023
2 parents aebf87c + b89c4bc commit 3ab3e71
Show file tree
Hide file tree
Showing 11 changed files with 62 additions and 0 deletions.
Binary file added docs/docs/assets/config_keycloak_features.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/docs/assets/login_page.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/docs/assets/reset_password.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/docs/assets/roles_admin.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/docs/assets/user_account.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/docs/assets/user_creation.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/docs/assets/users.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
18 changes: 18 additions & 0 deletions docs/docs/technical_guide/keycloak.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# Keycloak

Keycloak est la technologie utilisée dans GeoCam pour **gérer les droits et les utilisateurs**. Vous pouvez retrouver plus d'informations sur cette technologie [ici](https://www.keycloak.org/guides#getting-started).

L'interface administrateur permet à aux utlilisateurs administrateurs de gérer l'ensemble des aspects relatifs à Keycloak. Elle est accessible sur : `/auth/admin/geonature-annotation/console/`. La connexion se fait avec les mêmes identifiants que ceux de l'application.

Pour le moment, seule la gestion de l'authentification est implémentée dans l'application. Il n'est donc pas encore possible de donner des droits différents aux utilisateurs d'une instance. Cela signifie que tous les utilisateurs auront accès aux mêmes pages et pourront effectuer les mêmes opérations sur l'application.

## Configuration du serveur mail

Certaines fonctionnalités nécessitent l'**envoi de mails par l'application**. Il est donc nécessaire de configurer un serveur mail.
Cela peut être fait au sein de l'interface administrateur de Keycloak dans les _"Realm settings"_ dans l'onglet _"Email"_ (accessible sur `/auth/admin/geonature-annotation/console/#/geonature-annotation/realm-settings/email`).

Le champ _"from"_ dans la catégorie _Template_ et l'ensemble de la catégorie _Connection & Authentification_ doivent à minima être renseignés.

## Gestion des utilisateurs

Voir le guide utilisateur > rubrique _Administrateur - Keycloak_
35 changes: 35 additions & 0 deletions docs/docs/user/admin.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
# Utilisation de l'interface d'administration de Keycloak

## Création de compte utilisateur

Vous pouvez créer autant de comptes utilisateur que vous le souhaitez depuis l'onglet _Users_ du menu (accessible sur `/auth/admin/geonature-annotation/console/#/geonature-annotation/users`).

![users](../assets/users.png)

Pour cela :

1. Cliquez sur "Add user"
1. Remplissez les champs obligatoires marqués par une astérisque rouge et le champ email à minima
1. Sélectionnez "Verify email" et "Update password" pour le premier champs (conseillé) comme ci-dessous : ![user_creation](../assets/user_creation.png)
1. Cliquez sur "Create"
1. Allez dans l'onglet _Credential_, puis cliquez sur "Set password" afin de créer un mot de passe temporaire à changer lors de la première connexion
1. Vérifiez dans l'onglet _Role mapping_ que l'utilisateur a le rôle "default-roles-geonature-annotation"

## Création de compte administrateur

Suivez la même procédure qu'au-dessus pour créer l'utilisateur puis aller dans l'onglet _role mapping_ et attribuer lui le rôle "realm-admin".
![roles_admin](../assets/roles_admin.png)

## Réinitialisation du mot de passe d'un utilisateur

Dans l'onglet _Users_, sélectionnez sur l'utilisateur concerné, puis dans _Credentials_ cliquez sur "Reset password".
![reset_password](../assets/reset_password.png)

## Gestion des fonctionnalités de connexion

Il est possible de configurer certaines fonctionnalités de la page de connexion dans l'onglet _Login_ comme ci-dessous :
![connection_features_config](../assets/config_keycloak_features.png)

Il y a, par exemple, la possibilité d'activer la fonctionnalité de **mot de passe oublié** et de demande de **création de compte** sur la page de connexion de l'application, comme présenté dans l'exemple ci-dessous.

![connection_features](../assets/login_page.png){ width=350px; align=center}
6 changes: 6 additions & 0 deletions docs/docs/user/user.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
# Compte utilisateur

Vous pouvez accéder à la page concernant votre compte dans l'interface de Keycloak sur `/auth/realms/geonature-annotation/account/`.

Pour le moment, seules les informations personnelles sont disponibles. Elles peuvent être modifiées tout comme votre mot de passe dans _Account security_.
![user_account](../assets/user_account.png)
3 changes: 3 additions & 0 deletions docs/mkdocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -54,5 +54,8 @@ nav:
- Les déploiements: user/deployment.md
- Importer des médias: user/import.md
- Annoter une image: user/annotation.md
- Mon compte: user/user.md
- Administrateur - Keycloak: user/admin.md
- Guide technique:
- Technologies: technical_guide/technologies.md
- Keycloak: technical_guide/keycloak.md

0 comments on commit 3ab3e71

Please sign in to comment.