diff --git a/conf/app.struct.ts b/conf/app.struct.ts
index 15687d83022a93960c36ac3ea68ef0d4fd6ce3ca..f71b35d8a6fd96ecd7e4a359897ddf38b7edf62f 100755
--- a/conf/app.struct.ts
+++ b/conf/app.struct.ts
@@ -65,7 +65,7 @@ export const appStruct: AppConfig = {
   'modes': [{
     'type': 'separator',
     'label': 'TITLE_SEPARATOR_MAP',
-    'privilege': 'vmap_user'
+    'privilege': ['vmap_user', 'vmap_data_manager']
   },
   vmapAdminCartoObject,
   vmapAdminManageDataObject,
diff --git a/doc/source/administrator/authentification/ad.md b/doc/source/administrator/authentification/ad.md
new file mode 100644
index 0000000000000000000000000000000000000000..c88725fb2c6f18905aa057b5ef986c338541cdd7
--- /dev/null
+++ b/doc/source/administrator/authentification/ad.md
@@ -0,0 +1,4 @@
+# Utilisateur externe (Active Directory ou LDAP)
+
+## En cours de rédaction
+
diff --git a/doc/source/administrator/authentification/index.rst b/doc/source/administrator/authentification/index.rst
new file mode 100644
index 0000000000000000000000000000000000000000..d12f13936c2b4de33daf3d42735deeaee6da535d
--- /dev/null
+++ b/doc/source/administrator/authentification/index.rst
@@ -0,0 +1,17 @@
+Gestion des utilisateurs - Méthodes d'authentification
+============================================
+
+--------------
+
+Il existe 3 méthodes d'authentification sur vMap2 : 
+
+
+============================================
+
+.. toctree::
+   :maxdepth: 2
+   :glob:
+
+   local_user.md
+   ad.md
+   sso.md
\ No newline at end of file
diff --git a/doc/source/administrator/authentification/local_user.md b/doc/source/administrator/authentification/local_user.md
new file mode 100644
index 0000000000000000000000000000000000000000..003e2b0d67f359f489d29ac2023297bf650d3339
--- /dev/null
+++ b/doc/source/administrator/authentification/local_user.md
@@ -0,0 +1,3 @@
+# Utilisateur local
+
+## En cours de rédaction
\ No newline at end of file
diff --git a/doc/source/administrator/authentification/sso.md b/doc/source/administrator/authentification/sso.md
new file mode 100644
index 0000000000000000000000000000000000000000..451ad416a08987ba6526600b534bc311522f4ff4
--- /dev/null
+++ b/doc/source/administrator/authentification/sso.md
@@ -0,0 +1,208 @@
+# Utilisateur d'un fournisseur OIDC (Système d'authentification SSO)
+
+
+Votre application intégre la possibilité d'utiliser un fournisseur **OpenID Connect (OIDC)** (exemple : Google, Microsoft, Keycloak...) comme systéme d'authentification SSO.
+
+Pourquoi utiliser SSO ?
+
+- Simplification de l'administration de vos utilisateurs
+- Facilité d'utilisation pour les utilisateurs finaux
+- Fonctionnalités portés par le fournisseur d'authentification non pris en charge par l'application (ex : rotation de mot de passe, Authentification multi-facteurs, ...)
+
+## Fonctionnement du protocole OpenId Connect
+
+![Sequence OIDC Vitis](../../images/administrator/authentification/sequence_oidc_vitis.jpg)
+
+Pour que le protocole fonctionne il faut passer par trois étapes d'authentification.
+
+Premièrement l'application vous redirige vers le fournisseur OIDC qui se chargera de gérer l'authentification si nécessaire (simple, avec MFA, ...), suite à quoi vous serez rediriger vers la page d'origine avec des informations permettant de passer aux étapes suivantes.
+
+Ces élements sont ensuite envoyés au serveur qui se chargera de récupérer les informations d'authentification (jetons de connexion, d'authentification et de rafraichissement).
+
+Ensuite l'application vérifiera la validité du token à intervalle régulier en requêtant les informations de votre compte auprès du fournisseur OIDC.
+
+```{Note}
+  Les colonnes contenant les jetons d'authentification et de rafraichissement sont chiffrées. L'administrateur de l'application lui-même n'est pas en capacité d'y accéder facilement, de façon à garantir à chaque utilisateur la sécurité que ses jetons ne seront utilisés que pour assurer l'authentification de l'utilisateur dans l'application.
+```
+
+## Mise en place dans votre application
+
+Il faut d'abord configurer votre fournisseur OIDC de façon à récupérer certaines informations : 
+- Client ID
+- Client Secret
+- Point de terminaisons (fichier accessible via l'API .well-known/openid-configuration)
+- Possibilité d'utiliser un jeton de rafraichissement
+- Structure des jetons JWT retournés
+
+Ensuite il faut aller sur le serveur et modifier la configuration du fichier `vas/src/Module/Vitis/conf/properties.json` : 
+- **allow_oauth2_connection** : Booléen permettant de définir si la fonctionnalité est active
+- **oauth2_auth_endpoint** : Requête permettant la redirection vers le fournisseur OIDC pour l'authentification, doit contenir certaines balises : 
+  - *\[CLIENT_ID\]* : permet de placer le client_id dans la requête
+  - *\[REDIRECT_URI\]* : permet de définir au fournisseur vers quelle page il devra réaliser la redirection aprés l'authentification
+  - *\[STATE\]* : défini une chaine aléatoire compatible avec la gestion d'état (c'est une sécurité du protocole)
+  - *\[RANDOMIZE\]* (optionnel) : chaine aléatoire si besoin dans certaines implémentation du protocole (ex : Google OIDC)
+- **oauth2_token_endpoint** : Point de terminaison pour la génération de token
+- **oauth2_refresh_endpoint** : Point de terminaison pour le rafraichissement de token (normalement identique au token_endpoint)
+- **oauth2_userinfo_endpoint** : Point de terminaison pour récupérer les informations de l'utilisateur
+- **oauth2_token_field_access_token** : Clé contenant le jeton d'accés dans la réponse de la requête de génération
+- **oauth2_token_field_id_token** : Clé contenant le jeton d'identification dans la réponse de génération et de rafraichissement (permet de récupérer le login dans le JWT) 
+- **oauth2_token_field_id_token_username** : nom du champs dans le corps du jeton JWT contenant le login
+- **oauth2_token_field_refresh_token** : Clé contenant le jeton de rafraichissement dans la réponse de rafraichissement
+- **oauth2_userinfo_authorization_header** : Nom de l'en-tête permettant de passer le jeton d'authentification lors de la requête userinfos
+- **oauth2_userinfo_authorization_prefix** : Préfixe du jeton d'authentification pour la valeur de l'en-tête
+- **oauth2_refresh_period_seconds** : Période de vérification de la validité de l'authentification
+- **oauth2_auto_import** : Booléen permettant d'activer l'import automatique des nouveaux comptes lors de la première connexion depuis le founisseur OIDC
+- **oauth2_user_password_salt** : Sel utilisé dans les mots de passe internes à l'application pour les utilisateurs OIDC
+- **oauth2_clientId** : Identifiant du client OIDC
+- **oauth2_clientSecret** : Secret du client OIDC
+- **default_login_endpoint** : Point de terminaison par défaut de l'application, /login interface de connexion classique, /oauth2 connexion en SSO par défaut. Dans tous les cas les deux sont utilisables si vous souhaitez un fonctionnement mixte.
+
+```{Note}
+  Changez le niveau de verbosité de vos journaux au niveau DEBUG pour configurer plus facilement certains de ces paramètres.
+```
+
+### Création de compte manuellement
+
+Vous pouvez ajouter manuellement les utilisateurs qui pourront se connecter via le protocole OIDC.
+
+Aprés avoir configurer votre provider OIDC sur le serveur, une boite à cocher supplémentaire sera disponible dans le formulaire de création des utilisateurs (Dans l'administration classique des utilisateurs).
+
+![Sequence OIDC Vitis](../../images/administrator/authentification/oidc_checkbox_user.png)
+
+Il vous suffit d'utiliser comme login le champ récupéré dans le token JWT (properties : **oauth2_token_field_id_token_username**).
+
+
+## Exemples
+
+Pour tous les exemples qui vont suivre : 
+- oauth2_refresh_period_seconds doit être inférieur à la durée de validité du jeton d'authentification définit par le fournisseur OIDC
+- oauth2_auth_endpoint : contient des balises entre crochet qui ne sont pas à remplacer par l'administrateur
+- oauth2_auto_import est à définir à votre convenance mais peut impliquer un risque pour votre application en cas de mauvaise administration du client OIDC, dans le cas de la création de ces utilisateurs les droits appliqués lors de la création seront ceux définit pour l'inscription classique : 
+  - sign_up_automated_roles
+  - sign_up_automated_groups
+
+```{Warning}
+  Les configurations proposées par la suite sont des exemples simples.
+  Il est probable que des configurations supplémentaires soit nécessaire pour garantir la sécurité de votre fournisseur d'authentification.
+```
+
+### Google
+
+[Documentation officielle](https://developers.google.com/identity/openid-connect/openid-connect?hl=fr)
+
+- Se rendre sur la [page de credential](https://console.cloud.google.com/apis/credentials?hl=fr) 
+- Ajouter un client OAuth 2.0 : 
+    - URI de redirection : `https://mon-domaine/vmap/oauth2`
+- Ouvrir [les informations sur les points de terminaisons](https://accounts.google.com/.well-known/openid-configuration)
+- Ouvrir le fichier de configuration de l'application et retoucher les clés suivantes  : 
+```json
+{
+    "allow_oauth2_connection": true,
+    "oauth2_auth_endpoint": "https://accounts.google.com/o/oauth2/v2/auth?response_type=code&client_id=[CLIENT_ID]&scope=openid%20email&redirect_uri=[REDIRECT_URI]&state=[STATE]&nonce=[RANDOMIZE]&access_type=offline",
+    "oauth2_token_endpoint": "https://oauth2.googleapis.com/token",
+    "oauth2_refresh_endpoint": "https://oauth2.googleapis.com/token",
+    "oauth2_userinfo_endpoint": "https://openidconnect.googleapis.com/v1/userinfo",
+    "oauth2_token_field_access_token": "access_token",
+    "oauth2_token_field_id_token": "id_token",
+    "oauth2_token_field_id_token_username": "email",
+    "oauth2_token_field_refresh_token": "refresh_token",
+    "oauth2_userinfo_authorization_header": "Authorization",
+    "oauth2_userinfo_authorization_prefix": "Bearer ",
+    "oauth2_refresh_period_seconds": 3500,
+    "oauth2_user_password_salt": "CHAINE RANDOM A DEFINIR",
+    "oauth2_clientId": "ID CLIENT A DEFINIR",
+    "oauth2_clientSecret": "SECRET CLIENT A DEFINIR",
+    "oauth2_auto_import" : false,
+    "default_login_endpoint": "oauth2",
+}
+```
+- Ouvrir `https://mon-domaine/vmap/oauth2` dans votre navigateur, vous devriez être redirigé vers le systéme d'authentification de google.
+
+### Microsoft Office 365
+
+[Documentation officielle](https://learn.microsoft.com/fr-fr/entra/identity-platform/v2-oauth2-auth-code-flow)
+
+
+- Se rendre sur la [console d'administration Microsoft](https://entra.microsoft.com/#view/Microsoft_AAD_RegisteredApps/ApplicationsListBlade/quickStartType~/null/sourceType/Microsoft_AAD_IAM) 
+- Ajouter une Inscription
+- Dans la partie `Authentification` :
+    - Définir l'URI de redirection : `https://mon-domaine/vmap/oauth2`
+    - L'utilisation du jeton de connexion et d'identification
+- Dans `Certificat et secrets` :
+    - Ajouter un secret pour le client (**ATTENTION : vous ne pourrez le récupérer qu'une seule fois**)
+- Dans `Vue d'ensemble` il est possible d'accéder aux points de terminaison dont le `/.well-known/openid-configuration` qui contiendra les autres
+- Ouvrir le fichier de configuration de l'application et retoucher les clés suivantes : 
+```json
+{
+    "allow_oauth2_connection": true,
+    "oauth2_auth_endpoint": "https://login.microsoftonline.com/TENANT A REMPLACER/oauth2/v2.0/authorize?response_type=code&client_id=[CLIENT_ID]&scope=openid%20offline_access%20https%3A%2F%2Fgraph.microsoft.com%2Fuser.read&redirect_uri=[REDIRECT_URI]&state=[STATE]&response_mode=query",
+    "oauth2_token_endpoint": "https://login.microsoftonline.com/TENANT A REMPLACER/oauth2/v2.0/token",
+    "oauth2_refresh_endpoint": "https://login.microsoftonline.com/TENANT A REMPLACER/oauth2/v2.0/token",
+    "oauth2_userinfo_endpoint": "https://graph.microsoft.com/oidc/userinfo",
+    "oauth2_token_field_access_token": "access_token",
+    "oauth2_token_field_id_token": "access_token",
+    "oauth2_token_field_id_token_username": "unique_name",
+    "oauth2_token_field_refresh_token": "refresh_token",
+    "oauth2_userinfo_authorization_header": "Authorization",
+    "oauth2_userinfo_authorization_prefix": "Bearer ",
+    "oauth2_refresh_period_seconds": 3500,
+    "oauth2_user_password_salt": "CHAINE RANDOM A DEFINIR",
+    "oauth2_clientId": "ID CLIENT A DEFINIR",
+    "oauth2_clientSecret": "SECRET CLIENT A DEFINIR",
+    "oauth2_auto_import" : false,
+    "default_login_endpoint": "oauth2",
+}
+```
+- Ouvrir `https://mon-domaine/vmap/oauth2` dans votre navigateur, vous devriez être redirigé vers le systéme d'authentification de Microsoft.
+
+### Keycloack
+
+[Documentation officielle](https://www.keycloak.org/docs/latest)
+
+- Sur votre instance de keycloack définisser le realm à utiliser
+- Ajouter vos comptes utilisateurs ou ajouter un connecteur
+- Créer un client avec les paramètres suivant à minima
+    - **standard flow** activé
+    - Redirect URI valid redirect Uri : https://mon-domain/vmap/oauth2
+    - Web-Origin : https://mon-domain
+    - Acess type : Confidential
+- Sur la configuration du realm cliquer sur le lien `OpenID Endpoint Configuration` pour accéder au json contenant les informations des différents endpoint à utiliser pour votre realm.
+- Ouvrir le fichier de configuration de l'application et retoucher les clés suivantes : 
+```json
+{
+    "allow_oauth2_connection": true,
+    "oauth2_auth_endpoint": "https://app.please-open.it/auth/realms/REALM A REMPLACER/protocol/openid-connect/auth?client_id=[CLIENT_ID]&response_type=code&scope=openid%20offline_access&redirect_uri=[REDIRECT_URI]&state=[STATE]",
+    "oauth2_token_endpoint": "https://app.please-open.it/auth/realms/REALM A REMPLACER/protocol/openid-connect/token",
+    "oauth2_refresh_endpoint": "https://app.please-open.it/auth/realms/REALM A REMPLACER/protocol/openid-connect/token",
+    "oauth2_userinfo_endpoint": "https://app.please-open.it/auth/realms/REALM A REMPLACER/protocol/openid-connect/userinfo",
+    "oauth2_token_field_access_token": "access_token",
+    "oauth2_token_field_id_token": "access_token",
+    "oauth2_token_field_id_token_username": "preferred_username",
+    "oauth2_token_field_refresh_token": "refresh_token",
+    "oauth2_userinfo_authorization_header": "Authorization",
+    "oauth2_userinfo_authorization_prefix": "Bearer ",
+    "oauth2_refresh_period_seconds": 600,
+    "oauth2_user_password_salt": "CHAINE RANDOM A DEFINIR",
+    "oauth2_clientId": "ID CLIENT A DEFINIR",
+    "oauth2_clientSecret": "SECRET CLIENT A DEFINIR",
+    "oauth2_auto_import" : false,
+    "default_login_endpoint": "oauth2",
+}
+```
+- Ouvrir `https://mon-domaine/vmap/oauth2` dans votre navigateur, vous devriez être redirigé vers le systéme d'authentification de Keycloack.
+
+## Limitation de la fonctionnalité
+
+Les utilisateurs OIDC ne sont pas considérés comme des utilisateurs locaux.
+Il ne peuvent pas : 
+- Se connecter via le endpoint /login
+- Avoir des jetons de connexion publiques
+- Changer de mot de passe dans l'application (il faut passer par le fournisseur OIDC)
+
+La validité des jetons de connexion est relative au rafraichissement défini via `oauth2_refresh_period_seconds` ou la durée de vie de notre propre jeton de connexion.
+
+En cas d'utilisation d'un provider OIDC hébergé en dehors de votre infrastructure le serveur applicatif doit avoir accés à internet ou utiliser un proxy.
+
+```{Warning}
+  Il est primordial d'utiliser le même sel sur toutes les applications Veremes (vMap, GTF, ...) connectées à votre provider SSO, qui utilisent des bases de données dans le même cluster Postgres.
+```
\ No newline at end of file
diff --git a/doc/source/administrator/cadastre/config_fiche_desc.md b/doc/source/administrator/cadastre/config_fiche_desc.md
new file mode 100644
index 0000000000000000000000000000000000000000..73694aa47964c8b769d6ec6dd8b6d1d38a6b0d1e
--- /dev/null
+++ b/doc/source/administrator/cadastre/config_fiche_desc.md
@@ -0,0 +1,64 @@
+# Configuration de la fiche descriptive
+
+Cette section est dédiée à la configuration de la fiche descriptive.  
+Elle est décomposée en 3 parties :  
+![config_section_fiche_descriptive](../../images/administrator/cadastre/config_fiche_descriptive.jpg)
+
+## Tolérance d'intersection
+
+Surface (en pourcent %) à partir de laquelle une intersection est prise en compte.
+
+## Intersection sur "id_com"
+
+Cette option est un champ a activer (cocher "Oui" ou "Non").  
+Si cette option est activée, lors d'une intersection, vMap utilisera également l'identifiant "id_com" pour faire les intersections, si celui-ci existe dans la table.
+
+## Tables d'intersection
+
+Ce champ est un document JSON, permettant d'indiquer les différentes tables utilisées pour les intersections avec vMap, ainsi qu'indiquer le type de champ pour la représentation de cette donnée (nombre, texte, lien, ...).
+
+Le document JSON accepte les paramètres suivant :  
+
+| Nom du champ | Type de champ        | Obligatoire ? | Description                                                                                               |
+|--------------|----------------------|---------------|-----------------------------------------------------------------------------------------------------------|
+| columns      | Objet JSON           | Oui           | Objet JSON contenant la description des champs de la table à intersecter pour la construction du document |
+| schema       | chaîne de caractères | Oui           | Schéma dans lequel se trouve la table à intersecter                                                       |
+| table        | chaîne de caractères | Oui           | Table à intersecter                                                                                       |
+| title        | chaîne de caractères | Oui           | Nom de la section intersectée dans la fiche descriptive                                                   |
+| type         | chaîne de caractères | Oui           | Type de la géométrie contenue dans la table intersectée                                                   |
+
+Pour le descriptif du document JSON représentant les colonnes de la table :  
+
+| Nom du champ   | Type de champ        | Exemple de valeurs | Obligatoire ?       | Description                                                                                                                                                                                                                                                                                                                                             |
+|----------------|----------------------|--------------------|---------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| alias          | chaîne de caractères | "Cliquez ici"      | Non                 | Permet d'afficher une chaîne de caractères alternative dans le nom du lien de la colonne de la table intersectée, au lieu d'afficher le nom de la colonne, ne sert que pour les champs de type 'lien'                                                                                                                                                                                  |
+| alias_variable | chaîne de caractères |  - true  - false   | non, défaut à false | Permet d'indiquer si le l'alias est une chaîne de caractère à afficher (false), ou du texte contenu dans un attribut qu'il faut référencer (true), ne sert que pour les champs de type 'lien'                                                                                                                                                                                                |
+| label          | chaîne de caractères | "Identifiant"      | Oui                 | Nom de la colonne à afficher                                                                                                                                                                                                                                                                                                                            |
+| name           | chaîne de caractères | "id_X"             | Oui                 | nom de la colonne en base de données                                                                                                                                                                                                                                                                                                                    |
+| type           | chaîne de caractères |  - lien  - texte   | Non, défaut à texte                 | Permet d'indiquer le type de représentation pour la donnée de la colonne.  - En tant que texte, le contenu est juste affichée dans la colonne.  - En tant que lien, le contenu est utilisé pour proposer un accès de type lien hypertexte à un document, cela est très utile pour donner l'accès à un document en rapport avec la parcelle par exemple. |
+
+Ci-dessous, un exemple fictif de document JSON pour les intersections d'une fiche descriptive, celle-ci pouvant servir d'exemple :  
+
+```js
+[
+  {
+    "columns": [
+      {
+        "label": "titre",
+        "name": "col_titre",
+      }
+      {
+        "alias": "Réglement",
+        "alias_variable": false,
+        "label": "Lien vers règlement",
+        "name": "lien_reglement",
+        "type": "lien"
+      }
+    ],
+    "schema": "schema1",
+    "table": "table1",
+    "title": "Titre de ma table",
+    "type": "POLYGON"
+  }
+]
+```
\ No newline at end of file
diff --git a/doc/source/administrator/cadastre/config_fiche_urba.md b/doc/source/administrator/cadastre/config_fiche_urba.md
new file mode 100644
index 0000000000000000000000000000000000000000..95568f023e78ee0adc5f1a6a5974e14fa5e785f7
--- /dev/null
+++ b/doc/source/administrator/cadastre/config_fiche_urba.md
@@ -0,0 +1,91 @@
+# Configuration de la fiche d'urbanisme
+
+Cette section est dédiée à la configuration de la fiche d'urbanisme.  
+Elle est décomposée en 7 parties :  
+![config_section_fiche_urbanisme](../../images/administrator/cadastre/config_fiche_urbanisme.jpg)
+
+## Logo fiche urbanisme
+
+Ce champ permet de définir le logo à afficher sur la fiche d'urbanisme.  
+
+```{warning}
+L'image du logo doit être saisie sous forme de chaîne caractère au format base64.  
+Plus d'informations sur le format des URL en base64 [au lien suivant](https://developer.mozilla.org/fr/docs/Web/HTTP/Basics_of_HTTP/Data_URLs).
+```
+
+## Organisation fiche urbanisme
+
+Nom de l'organisation à afficher sur la fiche d'urbanisme.
+
+## Template d'impression pour fiche d'urbanisme
+
+Identifiant du modèle d'impression à utiliser pour la fiche d'urbanisme.  
+Quand celui-ci est renseigné, vMap utilise ce modèle à la place du modèle de fiche d'urbanisme par défaut, cela permet d'utiliser des modèles personnalisés.  
+
+```{tip}
+Plus d'informations sur la fonctionnement des modèles d'impression [au lien suivant](./)
+```
+
+## Marge de zoom pour la géométrie
+
+Cette attribut permet de définir la marge utilisée dans la fiche d'urbanisme entre la géométrie et le bord de la carte.  
+**Elle est exprimée en pixels (px), et ne peut pas dépasser de la largeur ou de la hauteur de la carte**.
+
+## Tolérance d'intersection
+
+Surface (en pourcent %) à partir de laquelle une intersection est prise en compte.
+
+## Intersection sur "id_com"
+
+Cette option est un champ a activer (cocher "Oui" ou "Non").  
+Si cette option est activée, lors d'une intersection, vMap utilisera également l'identifiant "id_com" pour faire les intersections, si celui-ci existe dans la table.
+
+## Tables d'intersection
+
+Ce champ est un document JSON, permettant d'indiquer les différentes tables utilisées pour les intersections avec vMap, ainsi qu'indiquer le type de champ pour la représentation de cette donnée (nombre, texte, lien, ...).
+
+Le document JSON accepte les paramètres suivant :  
+
+| Nom du champ | Type de champ        | Obligatoire ? | Description                                                                                               |
+|--------------|----------------------|---------------|-----------------------------------------------------------------------------------------------------------|
+| columns      | Objet JSON           | Oui           | Objet JSON contenant la description des champs de la table à intersecter pour la construction du document |
+| schema       | chaîne de caractères | Oui           | Schéma dans lequel se trouve la table à intersecter                                                       |
+| table        | chaîne de caractères | Oui           | Table à intersecter                                                                                       |
+| title        | chaîne de caractères | Oui           | Nom de la section intersectée dans la fiche d'urbanisme                                                   |
+| type         | chaîne de caractères | Oui           | Type de la géométrie contenue dans la table intersectée                                                   |
+
+Pour le descriptif du document JSON représentant les colonnes de la table :  
+
+| Nom du champ   | Type de champ        | Exemple de valeurs | Obligatoire ?       | Description                                                                                                                                                                                                                                                                                                                                             |
+|----------------|----------------------|--------------------|---------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| alias          | chaîne de caractères | "Cliquez ici"      | Non                 | Permet d'afficher une chaîne de caractères alternative dans le nom du lien de la colonne de la table intersectée, au lieu d'afficher le nom de la colonne, ne sert que pour les champs de type 'lien'                                                                                                                                                                                               |
+| alias_variable | chaîne de caractères |  - true  - false   | non, défaut à false | Permet d'indiquer si le l'alias est une chaîne de caractère à afficher (false), ou du texte contenu dans un attribut qu'il faut référencer (true), ne sert que pour les champs de type 'lien'                                                                                                                                                                                                      |
+| label          | chaîne de caractères | "Identifiant"      | Oui                 | Nom de la colonne à afficher                                                                                                                                                                                                                                                                                                                            |
+| name           | chaîne de caractères | "id_X"             | Oui                 | nom de la colonne en base de données                                                                                                                                                                                                                                                                                                                    |
+| type           | chaîne de caractères |  - lien  - texte   | Oui                 | Permet d'indiquer le type de représentation pour la donnée de la colonne.  - En tant que texte, le contenu est juste affichée dans la colonne.  - En tant que lien, le contenu est utilisé pour proposer un accès de type lien hypertexte à un document, cela est très utile pour donner l'accès à un document en rapport avec la parcelle par exemple. |
+
+Ci-dessous, un exemple fictif de document JSON pour les intersections d'une fiche d'urbanisme, celle-ci pouvant servir d'exemple :  
+
+```js
+[
+  {
+    "columns": [
+      {
+        "label": "titre",
+        "name": "col_titre",
+      }
+      {
+        "alias": "Réglement",
+        "alias_variable": false,
+        "label": "Lien vers règlement",
+        "name": "lien_reglement",
+        "type": "lien"
+      }
+    ],
+    "schema": "schema1",
+    "table": "table1",
+    "title": "Titre de ma table",
+    "type": "POLYGON"
+  }
+]
+```
\ No newline at end of file
diff --git a/doc/source/administrator/cadastre/config_generale.md b/doc/source/administrator/cadastre/config_generale.md
new file mode 100644
index 0000000000000000000000000000000000000000..34642624d3edbf210158f3c5f56f1a72b617ab38
--- /dev/null
+++ b/doc/source/administrator/cadastre/config_generale.md
@@ -0,0 +1,44 @@
+# Configuration générale
+
+Cette section concerne la configuration générale du module cadastre.  
+Celle-ci est décomposée en 3 parties.  
+
+![conf_generale](../../images/administrator/cadastre/conf_generale.jpg)
+
+## Liste des départements
+
+Cette option est un champ a activer (cocher "Oui" ou "Non").  
+Celle-ci a pour effet d'activer la possibilité de filtrer les données par département.
+
+```{note}
+Cette option utilise la table `s_cadastre`.`departement` afin de fournir la table des départements.
+```
+
+```{figure} ../../images/administrator/cadastre/cadastre_option_departements.jpg
+:alt: module_cadastre_avec_liste_departements
+:align: center
+
+Avec la liste des départements activée
+```
+
+```{figure} ../../images/administrator/cadastre/cadastre_sans_option_departements.jpg
+:alt: module_cadastre_sans_liste_departements
+:align: center
+
+Sans la liste des départements activée
+```
+
+## Projection de la base de données (code EPSG)
+
+Ce champ sert à renseigner le système de la projection de la base de données, afin de projetter les données dans le bon système au niveau de l'application.  
+Le code est sous la forme d'une chaîne de caractère au format EPSG :  
+- EPSG:<numéro du code> (ex: EPSG:2154 pour le Lambert93)
+
+## Base de donnée à utiliser pour les intersections
+
+Ce champ permet de récupérer la base de données qui sera utilisée pour réaliser les intersections des `fiches d'urbanisme` et `fiches descriptives`.  
+
+```{warning}
+La base de données indiquée doit être présente dans le même cluster de base de données Postgres afin que cela fonctionne.  
+Sinon les intersections ne fonctionneront pas.
+```
\ No newline at end of file
diff --git a/doc/source/administrator/cadastre/index.rst b/doc/source/administrator/cadastre/index.rst
new file mode 100644
index 0000000000000000000000000000000000000000..2da2aaf81fd89ef0fc4a9902ed95c3bfe68aa8c1
--- /dev/null
+++ b/doc/source/administrator/cadastre/index.rst
@@ -0,0 +1,24 @@
+Module Cadastre
+============================================
+
+--------------
+
+.. Note:: | La configuration du mode cadastre est située dans l'onglet  
+  | Configuration > Configuration vMap > Cadastre.
+  |chemin_conf_cadastre|
+
+.. |chemin_conf_cadastre| image:: ../../images/administrator/cadastre/chemin_config.jpg
+    :width: 200
+    :alt: chemin_configuration_cadastre
+
+Cette section concerne la documentation de la configuration du module Cadastre de vMap.  
+Celui-ci est composé de 3 sous-parties :  
+
+============================================
+
+.. toctree::
+   :maxdepth: 2
+
+   config_generale.md
+   config_fiche_urba.md
+   config_fiche_desc.md
diff --git a/doc/source/administrator/index.rst b/doc/source/administrator/index.rst
index 7a0597ebe75125886b9e6c58e4a1426161cc9caf..441baea252f2071ebff8ae912d1d21abd088df56 100644
--- a/doc/source/administrator/index.rst
+++ b/doc/source/administrator/index.rst
@@ -10,7 +10,9 @@ Il est conseillé aux administrateurs de consulter en premier la `Documentation
 .. toctree::
    :maxdepth: 2
 
+   authentification/index.rst
    users.md
    configuration/index.rst
    api/api.rst
    journaux.md
+   cadastre/index.rst
diff --git a/doc/source/changelog/2024.01.00/changelog.md b/doc/source/changelog/2024.01.00/changelog.md
new file mode 100644
index 0000000000000000000000000000000000000000..b1782c04456c7ffa2fde3b092268397fa0a02bef
--- /dev/null
+++ b/doc/source/changelog/2024.01.00/changelog.md
@@ -0,0 +1,95 @@
+# vMap2 2024.01.00
+
+Le document ci-dessous présente une liste non exhaustive d'évolutions / corrections à retrouver dans la nouvelle version majeure 2024.01.00 de vMap2.
+
+## Évolutions
+
+### Évolution - Prise en charge du système d'authentification SSO
+
+vMap2 offre la possibilité de se connecter à l'application par l'intermédiaire :
+- D'un compte local
+- D'un compte de l'Active Directory
+- D'un compte issu d'un fournisseur OIDC par l'intermédiaire du système d'authentification SSO. _[NOUVEAU]_  
+[En savoir plus](http://documentation.veremes.net/vmap2/administrator/authentification/sso.html)
+
+### Évolution - Nouvelle version d'Angular
+
+vMap2 utilise désormais Angular 14.
+
+### Évolutions - Module Cadastre 
+
+- Récupération du nom d'usage dans les relevés de propriétés
+- Pour les polygones uniquement, la surface intersectée peut désormais être affichée :
+    - En pourcentage. Exemple : xx % (valeur par défaut) : attribut à utiliser "percent"
+	- En mètre carré. Exemple : yy m² : attribut à utiliser "meter"
+    - En pourcentage et mètre carré. Exemple : xx % (yy m²) : attribut à utiliser "both"
+
+### Évolutions - Tableaux
+
+- Les filtres personnalisés prennent en charge les caractères accentués.  Ce paramétrage est réalisé colonne par colonne dans la section "Tableaux" disponible lors de l'édition d'une couche : 
+    - Si "Recherche stricte" est coché, les accents sont pris en compte
+    - Si "Recherche stricte" n'est pas coché, les accents sont ignorés
+
+ATTENTION : Il est indispensable d'installer l'extention "Unaccent" sur la base de données Postgresql qui exploite les données
+
+![](images/filtres_caracteres_accentues_tableaux.png)
+![](images/recherche_stricte.png)
+
+- Ajout d'un bouton permettant d'exécuter des traitements FME par l'intermédiaire de GTF depuis le mode Tableaux. 
+
+    - Prérequis 1 : L'application vMap2 doit être configurer pour fonctionner avec GTF (mode Configuration > Configuration vMap)
+    - Prérequis 2 : La couche consultée avec Tableaux doit être paramétrée pour pouvoir être exploitée par GTF
+
+![](images/vmap_gtf_tableaux.png)
+
+### Évolutions diverses
+
+- La liste des échelles présente dans les impressions est paramétrable par l'administrateur dans le mode "Impression > Echelle d'impression"
+
+![](images/echelle_impression.png)
+
+- Ajout de l'attribut "Pattern" dans la symbologie des couches pour permettre à l'administrateur de créer des contours de polygone en pointillé
+
+![](images/pattern_polygone.png)
+
+- URL des documents de l'application protégées par authentification
+
+_Les URL des documents de vMap2 sont générées automatiquement. Bienque très longues, elles peuvent être consultables par n'importe qui et sans protection._  
+
+_Depuis vMap 2024.01.00, l'adminsitrateur peut forcer le consommateur de l'URL à posséder des droits (un privilège) minimums. Si un utilisateur essaye de consommer une URL sans être authentifié, l'accès lui sera refusé._
+
+Paramétrage à réaliser dans "Configuration > Général.
+
+
+![](images/protection_url.png)
+
+
+## Corrections - Module cadastre
+
+- La recherche par "Adresse DGFiP" ne retourne aucune parcelle
+
+![](images/cadastre_recherche_par_adresse_dgfip.gif)
+
+- La sélection des parcelles sélectionnée retourne de mauvaises valeurs au changement de carte
+- La fiche descriptive d'une parcelle s'ouvre plusieurs fois (l'une sur l'autre)
+
+## Corrections diverses
+
+- L'application ne redirige pas vers les paramètres présents dans l'URL (carte, étendue...)
+- Une carte avec des outils disponibles seulement en bas à droite ne les affiche pas correctement
+
+![](images/bug_outil.gif)
+
+- Les onglets présents dans un formulaire sont remplacés par des "containers"
+
+Résultat demandé :  
+![](images/onglet.png)
+
+Résultat optenu :  
+![](images/container.png)
+
+- Traduction manquantes
+- Erreur 500 sur les rapports lorsque l'utilisateur ne possède pas le privilège vitis_admin
+- Requêteur : Plusieurs lignes sont sélectionnées si l'identifiant de la couche n'est pas présent dans les colonnes affichées
+- Tableaux : Le filtre effectué sur une couche persiste lorsque l'utilisateur consulte d'une autre couche (les champs n'ont plus rien à voir).
+- Administration - Les couches ajoutées à une carte ne sont pas visibles en temps réel. Un rafraichissement de l'application est nécessaire pour que cela soit visible.
diff --git a/doc/source/changelog/2024.01.00/images/bug_outil.gif b/doc/source/changelog/2024.01.00/images/bug_outil.gif
new file mode 100644
index 0000000000000000000000000000000000000000..dcdf1c10537f4c6eb8657d5215758304adbf66e5
Binary files /dev/null and b/doc/source/changelog/2024.01.00/images/bug_outil.gif differ
diff --git a/doc/source/changelog/2024.01.00/images/cadastre_recherche_par_adresse_dgfip.gif b/doc/source/changelog/2024.01.00/images/cadastre_recherche_par_adresse_dgfip.gif
new file mode 100644
index 0000000000000000000000000000000000000000..20d5f32a07b68cfac3c62eb9d1b59bf74a227cff
Binary files /dev/null and b/doc/source/changelog/2024.01.00/images/cadastre_recherche_par_adresse_dgfip.gif differ
diff --git a/doc/source/changelog/2024.01.00/images/container.png b/doc/source/changelog/2024.01.00/images/container.png
new file mode 100644
index 0000000000000000000000000000000000000000..fe45589f9db8f8bf1c6897aa18da8cee7c6b9980
Binary files /dev/null and b/doc/source/changelog/2024.01.00/images/container.png differ
diff --git a/doc/source/changelog/2024.01.00/images/echelle_impression.png b/doc/source/changelog/2024.01.00/images/echelle_impression.png
new file mode 100644
index 0000000000000000000000000000000000000000..2aa4ca175304163f85909ed45253997c9a92dc5f
Binary files /dev/null and b/doc/source/changelog/2024.01.00/images/echelle_impression.png differ
diff --git a/doc/source/changelog/2024.01.00/images/filtres_caracteres_accentues_tableaux.png b/doc/source/changelog/2024.01.00/images/filtres_caracteres_accentues_tableaux.png
new file mode 100644
index 0000000000000000000000000000000000000000..f2beec90db05f1517032ab63d97b7acc2087dfe1
Binary files /dev/null and b/doc/source/changelog/2024.01.00/images/filtres_caracteres_accentues_tableaux.png differ
diff --git a/doc/source/changelog/2024.01.00/images/onglet.png b/doc/source/changelog/2024.01.00/images/onglet.png
new file mode 100644
index 0000000000000000000000000000000000000000..030162b0e7f3773bb77dca4fb9a4d02e2745ef73
Binary files /dev/null and b/doc/source/changelog/2024.01.00/images/onglet.png differ
diff --git a/doc/source/changelog/2024.01.00/images/pattern_polygone.png b/doc/source/changelog/2024.01.00/images/pattern_polygone.png
new file mode 100644
index 0000000000000000000000000000000000000000..55d660099c338f719d35957771bfcc9665f0a2c6
Binary files /dev/null and b/doc/source/changelog/2024.01.00/images/pattern_polygone.png differ
diff --git a/doc/source/changelog/2024.01.00/images/protection_url.png b/doc/source/changelog/2024.01.00/images/protection_url.png
new file mode 100644
index 0000000000000000000000000000000000000000..c670c01fcb8e231c65211395d12afdbe807154ef
Binary files /dev/null and b/doc/source/changelog/2024.01.00/images/protection_url.png differ
diff --git a/doc/source/changelog/2024.01.00/images/recherche_stricte.png b/doc/source/changelog/2024.01.00/images/recherche_stricte.png
new file mode 100644
index 0000000000000000000000000000000000000000..3a75788b3f29642dfe746f58d752e207ca9c18bb
Binary files /dev/null and b/doc/source/changelog/2024.01.00/images/recherche_stricte.png differ
diff --git a/doc/source/changelog/2024.01.00/images/vmap_gtf_tableaux.png b/doc/source/changelog/2024.01.00/images/vmap_gtf_tableaux.png
new file mode 100644
index 0000000000000000000000000000000000000000..820b7ace64f75a992dd03a22c3bd70667048fbd8
Binary files /dev/null and b/doc/source/changelog/2024.01.00/images/vmap_gtf_tableaux.png differ
diff --git a/doc/source/changelog/2024.01.01/changelog.md b/doc/source/changelog/2024.01.01/changelog.md
new file mode 100644
index 0000000000000000000000000000000000000000..ba28920a29412743b2f59940deebe7e36307178c
--- /dev/null
+++ b/doc/source/changelog/2024.01.01/changelog.md
@@ -0,0 +1,24 @@
+# vMap2 2024.01.01
+
+Le document ci-dessous présente une liste non exhaustive d'évolutions / corrections à retrouver dans la nouvelle version majeure 2024.01.01 de vMap2.
+
+## Évolutions
+
+### Évolution - Module cadastre
+
+- Ajout d'une checkbox permettant de garder la sélection active. Cela permet de réaliser une impression et d'y visualiser les parcelles sélectionnées à partir du module cadastre.
+
+![](images/garder_selection_active.png)
+
+## Corrections
+
+- Les calendriers des champs de type date ne s'affichent pas
+- Les filtres sur un champ de type date ne renvoient aucune donnée
+- L'écriture dans les logs de flux WMS très volumineux fait exploser la RAM de l'ordinateur
+
+### Corrections (côté administration)
+
+- Impossible de configurer une couche WMS en "non tuilée"
+- Le paramètre "Seuil de zoom pour les points" ne fonctionne pas
+
+![](images/seuil_zoom_point.png)
diff --git a/doc/source/changelog/2024.01.01/images/garder_selection_active.png b/doc/source/changelog/2024.01.01/images/garder_selection_active.png
new file mode 100644
index 0000000000000000000000000000000000000000..c01d3493275fa6d40d929f2460b53e773d5fc1d7
Binary files /dev/null and b/doc/source/changelog/2024.01.01/images/garder_selection_active.png differ
diff --git a/doc/source/changelog/2024.01.01/images/seuil_zoom_point.png b/doc/source/changelog/2024.01.01/images/seuil_zoom_point.png
new file mode 100644
index 0000000000000000000000000000000000000000..1fe55548f78be7d57f8eebbb55126e83d32d358a
Binary files /dev/null and b/doc/source/changelog/2024.01.01/images/seuil_zoom_point.png differ
diff --git a/doc/source/changelog/2024.01.02/changelog.md b/doc/source/changelog/2024.01.02/changelog.md
new file mode 100644
index 0000000000000000000000000000000000000000..e17fa492e6aef4507d955f7f5ab61a079b46a798
--- /dev/null
+++ b/doc/source/changelog/2024.01.02/changelog.md
@@ -0,0 +1,30 @@
+# vMap2 2024.01.02
+
+Le document ci-dessous présente une liste non exhaustive d'évolutions / corrections à retrouver dans la nouvelle version majeure 2024.01.02 de vMap2.
+
+## Évolutions
+
+Aucune évolution dans cette version
+
+## Corrections
+
+### Corrections - Module cadastre
+
+- Correction diverses sur la fonctionnalité "Garder la sélection active"
+- Le bouton "Fiche descriptive" disparait après la recherche d'une parcelle par "Adresse DGFiP"
+- Le raccourci fiche descriptive ne fonctionne pas après une recherche par "Adresse DGFiP"
+- Les sections ne sont pas tout le temps réinitialisées lorsque l'utilisateur change de commune
+- Impossible de réaliser des rapports de type "Propriétaires des locaux"
+- La génération d'un rapport sur plusieurs objets intègre tout le temps la même image
+
+### Corrections - Tableaux
+
+- La visualisation d'une couche est impossible si l'utilisateur n'est pas vmap_user
+- Gain de performances : Suppression de requêtes inutiles si la lien avec GTF n'est pas configuré.
+
+### Corrections - utilisateur
+
+- La génération de rapports sur plusieurs parcelle ne fonctionne pas.
+- La génération de rapport sans style ne fonctionne pas.
+- L'affichage de formulaire trop grands empêchent la visualisation des boutons de validation
+- L'affichage de formulaire trop petits ajoute un vide inutile
\ No newline at end of file
diff --git a/doc/source/changelog/index.rst b/doc/source/changelog/index.rst
index 30f54a7b331b37fb292891e0d9772bfdb1f13b1c..f4f64855ce7d2bc7530ca6bfa0919459086b1f78 100644
--- a/doc/source/changelog/index.rst
+++ b/doc/source/changelog/index.rst
@@ -5,6 +5,9 @@
    :maxdepth: 1
    :glob:
    
+   2024.01.02/changelog.md  
+   2024.01.01/changelog.md  
+   2024.01.00/changelog.md   
    2023.03.02/changelog.md     
    2023.03.01/changelog.md  
    2023.03.00/changelog.md 
diff --git a/doc/source/conf.py b/doc/source/conf.py
index 626c1bb13990a99974f5017b98c204c504ab04de..176f292e239b6ac587d32c6c745fa2618e8cf95a 100644
--- a/doc/source/conf.py
+++ b/doc/source/conf.py
@@ -58,6 +58,10 @@ extensions = [
     'sphinx.ext.viewcode',
 ]
 
+myst_enable_extensions = [
+    "colon_fence"
+]
+
 # Add any paths that contain templates here, relative to this directory.
 templates_path = ['_templates']
 
diff --git a/doc/source/images/administrator/authentification/oidc_checkbox_user.png b/doc/source/images/administrator/authentification/oidc_checkbox_user.png
new file mode 100644
index 0000000000000000000000000000000000000000..7b223ff68961f274781444bcf79880e9f199979b
Binary files /dev/null and b/doc/source/images/administrator/authentification/oidc_checkbox_user.png differ
diff --git a/doc/source/images/administrator/authentification/sequence_oidc_vitis.jpg b/doc/source/images/administrator/authentification/sequence_oidc_vitis.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..33b4053f5179c9308d47f067802f8ce09be5d3d2
Binary files /dev/null and b/doc/source/images/administrator/authentification/sequence_oidc_vitis.jpg differ
diff --git a/doc/source/images/administrator/cadastre/cadastre_option_departements.jpg b/doc/source/images/administrator/cadastre/cadastre_option_departements.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..dbdc81371ee1add830a7edcd061ce4852929da14
Binary files /dev/null and b/doc/source/images/administrator/cadastre/cadastre_option_departements.jpg differ
diff --git a/doc/source/images/administrator/cadastre/cadastre_sans_option_departements.jpg b/doc/source/images/administrator/cadastre/cadastre_sans_option_departements.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..9430620320bb4dad347509d17f04e9908ec9865f
Binary files /dev/null and b/doc/source/images/administrator/cadastre/cadastre_sans_option_departements.jpg differ
diff --git a/doc/source/images/administrator/cadastre/chemin_config.jpg b/doc/source/images/administrator/cadastre/chemin_config.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..c33d287018c696bc9ec8b0883d8ee9e515c653d7
Binary files /dev/null and b/doc/source/images/administrator/cadastre/chemin_config.jpg differ
diff --git a/doc/source/images/administrator/cadastre/conf_generale.jpg b/doc/source/images/administrator/cadastre/conf_generale.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..dbf867e0ad7174ec35a216c7ae57b56611069629
Binary files /dev/null and b/doc/source/images/administrator/cadastre/conf_generale.jpg differ
diff --git a/doc/source/images/administrator/cadastre/config_fiche_descriptive.jpg b/doc/source/images/administrator/cadastre/config_fiche_descriptive.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..9bc93d5d17ca46edd371249a4eb698d1c0260b41
Binary files /dev/null and b/doc/source/images/administrator/cadastre/config_fiche_descriptive.jpg differ
diff --git a/doc/source/images/administrator/cadastre/config_fiche_urbanisme.jpg b/doc/source/images/administrator/cadastre/config_fiche_urbanisme.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..bab34fca99d31e0fb5c6045a2a9ae5441cf3fba1
Binary files /dev/null and b/doc/source/images/administrator/cadastre/config_fiche_urbanisme.jpg differ