> For the complete documentation index, see [llms.txt](https://docs.realmjoin.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.realmjoin.com/fr/agent-realmjoin/realmjoin-client/local-admin-password-solution-laps.md).

# Solution de mot de passe administrateur local (LAPS)

Notre solution Local Administrator Password Solution (LAPS) a été conçue pour résoudre le problème de l'utilisation de comptes identiques dans votre environnement pour le support utilisateur ou l'élévation de privilèges. LAPS crée des mots de passe forts pour les comptes locaux, qui sont stockés en toute sécurité dans *votre propre* [Azure Key Vault](/fr/agent-realmjoin/realmjoin-client/local-admin-password-solution-laps/keyvault.md). Pour l'audit, vous avez la possibilité de fournir une [Application Insights](/fr/agent-realmjoin/realmjoin-client/local-admin-password-solution-laps/application-insights.md) instance ou un [Log Analytics Workspace](/fr/supervision-et-journaux/log-analytics.md).

## Prérequis

Avant de pouvoir commencer avec LAPS, vous devez remplir les pré-requis suivants :

* Configuration [Application Insights](#application-insights) OU [Log Analytics Workspace](/fr/supervision-et-journaux/log-analytics.md)
* Activez explicitement les types de compte LAPS à l'aide des paramètres de groupe (ou d'utilisateur)

Nous examinerons les deux ci-dessous.

## Journalisation

Application Insights et Log Analytics jouent un rôle important lors de l'utilisation de LAPS. Les demandes de mot de passe déclenchées par LAPS sont journalisées par RealmJoin et transmises à l'instance Application Insights configurée ou à Log Analytics Workspace. Ainsi, vous avez une visibilité complète sur qui récupère les mots de passe.

Il suffit de choisir un seul type de journalisation : soit Application Insights, soit Log Analytics. La journalisation est facultative lors de la configuration de LAPS et peut être ignorée si votre organisation n'a pas besoin de ces informations.

Vous trouverez plus de détails dans nos [Application Insights](/fr/agent-realmjoin/realmjoin-client/local-admin-password-solution-laps/application-insights.md) et [Log Analytics](/fr/supervision-et-journaux/log-analytics.md) articles.

## Paramètres de groupe

LAPS prend en charge les paramètres globaux suivants.

| Clé du paramètre                   | Valeur par défaut | Description                                                                                                                                                         |
| ---------------------------------- | ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| LocalAdminManagement.Inactive      | `false`           | Définir sur `true` pour désactiver cette fonctionnalité de force. Cela nettoiera et **supprimera** tous les comptes locaux.                                         |
| LocalAdminManagement.CheckInterval | `"01:00"`         | Intervalle pour les vérifications de configuration internes ([HH:mm](https://docs.microsoft.com/en-us/dotnet/standard/base-types/standard-timespan-format-strings)) |

Les types de compte suivants sont pris en charge.

| Clé du paramètre                       | Valeur par défaut      |
| -------------------------------------- | ---------------------- |
| LocalAdminManagement.EmergencyAccount  | `indéfini` (*inactif*) |
| LocalAdminManagement.SupportAccount    | `indéfini` (*inactif*) |
| LocalAdminManagement.PrivilegedAccount | `indéfini` (*inactif*) |

Chaque type de compte peut être configuré indépendamment à l'aide des paramètres communs suivants. Certains types disposent de paramètres spéciaux décrits dans leur section respective.

{% hint style="info" %}
Dans le tableau suivant `$` représente l'un des trois `Compte` objet JSON ci-dessus.
{% endhint %}

| Clé du paramètre   | Valeur par défaut                                                    | Description                                                                                      |
| ------------------ | -------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------ |
| $.NamePattern      | `"ADM-{HEX:8}"`                                                      | Spécial. Voir [Compte à privilèges](#privileged-account). Doit comporter 20 caractères ou moins. |
| $.DisplayName      | `"Administrateur local RealmJoin"`                                   | Nom d'affichage                                                                                  |
| $.PasswordCharSet  | `"!#%+23456789:=?@ABCDEFGHJKLMNPRSTUVWXYZabcdefghijkmnopqrstuvwxyz"` | Jeu de caractères du générateur de mots de passe (exclut les caractères similaires)              |
| $.PasswordLength   | 20                                                                   | Longueur du mot de passe                                                                         |
| $.PasswordPreset   | 0                                                                    | Modèles de mots de passe prédéfinis, voir [Génération de mots de passe](#password-generation).   |
| $.MaxStaleness     | Spécial. Voir [Recréation du compte](#account-recreation).           | Modèles de mots de passe prédéfinis, voir [Génération de mots de passe](#password-generation).   |
| $.OnDemand         | Spécial. Voir [Compte de support](#support-account).                 | Créer le compte uniquement sur demande.                                                          |
| $.Expiration       | Spécial. Voir [Compte de support](#support-account).                 | Date d'expiration fixe du compte (format ISO-8601)                                               |
| $.PasswordRenewals | Spécial. Voir [Compte à privilèges](#privileged-account).            | Date d'expiration fixe du compte (format ISO-8601)                                               |

## Mot de passe **génération**

Par défaut, des mots de passe réellement aléatoires seront générés en fonction des paramètres `PasswordCharSet` et `PasswordLength`. Le jeu de caractères par défaut a été choisi pour exclure les caractères visuellement similaires comme `I1l` et `O0`. Le générateur de nombres aléatoires cryptographique de Windows est utilisé pour fournir une aléa de haute qualité pour la génération.

{% hint style="info" %}
RealmJoin gérera automatiquement les problèmes liés aux exigences de complexité de Windows lors de la création du compte. Comme pour tous les mots de passe réellement aléatoires, il peut arriver que les mots de passe générés ne satisfassent pas aux exigences de complexité. Si cela se produit, RealmJoin effectuera jusqu'à trois cycles de génération de mots de passe jusqu'à ce qu'un mot de passe valide soit généré. Il subsiste une faible probabilité statistique que toutes les tentatives soient épuisées. Dans ce cas, vous verrez un message similaire dans le fichier journal du service `Toutes les tentatives ont été dépassées`. Le processus complet redémarrera lors de la prochaine exécution des vérifications de configuration internes (voir le paramètre `CheckInterval`).
{% endhint %}

Les mots de passe réellement aléatoires peuvent être pénibles à utiliser, c'est pourquoi des modèles prédéfinis spéciaux sont également pris en charge.

* Préréglage 1 ⇒ `[1 majuscule][3 minuscule][4 chiffre]`
  * `Tuci9325`
  * `Lnso5050`
  * `Khwn2174`
* Préréglage 2 ⇒ `Clé-[6 chiffres]-[6 chiffres]-[6 chiffres]-[6 chiffres]-[6 chiffres]-[6 chiffres]-[6 chiffres]-[6 chiffres]`
  * Le paramètre PasswordLength est pris en charge ! Ce paramètre détermine le nombre de blocs de chiffres.
  * `Key-012993-230956-976475` (PasswordLength = 3)
  * `Key-497254-679158-631224-278319` (PasswordLength = 4)
  * `Key-506179-861369-706482-613244-730371-097689-404350-340073` (par défaut)
* Préréglage 3 ⇒ `[mot]-[mot]-[mot]-[mot]-[mot]-[mot]` généré à partir de [Eff Long List](https://www.eff.org/files/2016/07/18/eff_large_wordlist.txt)
  * Le paramètre PasswordLength est pris en charge ! Ce paramètre détermine le nombre de mots.
  * `Exciting-Unearth-Cried-87` (PasswordLength = 3)
  * `Neurology-Astute-Debate-Marshy-15` (PasswordLength = 4)
  * `Marshy-Darkened-Undertake-Reset-Shrouded-Wise-26` (par défaut)

## Recréation du compte

Après utilisation d'un compte, RealmJoin peut être configuré pour supprimer et recréer le compte à l'aide du `MaxStaleness` paramètre. De cette façon, les comptes seront toujours propres. Si rien n'est configuré, les comptes ne seront jamais recréés et resteront indéfiniment.

{% hint style="danger" %}
RealmJoin supprimera le compte et son profil. **Tous les fichiers seront supprimés de manière permanente.**

Si un compte est encore utilisé - toujours connecté, session ouverte, application lancée avec lui en tant qu'ADM et toujours en cours d'exécution - le compte expirera tout de même, mais ne pourra pas être supprimé. **Un nouveau compte ne peut pas être créé tant que l'ancien compte n'a pas été supprimé.**
{% endhint %}

## Évitement des conflits

Même si RealmJoin fait de son mieux pour éviter les conflits de nom lors de la gestion des comptes sur un appareil, il existe toujours une possibilité que des comptes existent déjà sur un appareil et provoquent des conflits. C'est pourquoi le `NamePattern` paramètre prend en charge ces jetons ayant une signification particulière pour RealmJoin. Les jetons seront transformés par la fonction spécifiée et son paramètre de longueur suivant les deux-points.

* `{HEX:8}` ⇒ `F4D027EF`, `B3C4F74E`, ... (caractères hexadécimaux aléatoires)
* `{DEC:6}` ⇒ `506453`, `066946`, ... (caractères décimaux aléatoires)
* `{COUNT:2}` ⇒ `01`, `02`, ... (compteur, restera `01` s'il n'existe aucun conflit)

## Compte d'urgence

Ce type de compte constitue votre accès de secours à l'appareil en cas de défaillance catastrophique. Il sera créé de manière proactive. Ainsi, vous aurez toujours un accès pour la récupération. Nous recommandons de le configurer pour [la recréation du compte](#account-recreation).

*Exemple*

Clé `LocalAdminManagement.EmergencyAccount` (pour les paramètres communs, voir [paramètres de groupe](#group-settings))

```json
{
  "NamePattern": "ADM-Emergency-{HEX:4}",
  "DisplayName": "Accès d'urgence",
  "MaxStaleness": "04:00",
  "PasswordPreset": 2
}
```

## Compte de support

Ce type de compte peut être configuré pour une création à la demande. Il est conçu pour être utilisé dans une fenêtre temporelle limitée — 12 heures par défaut — en mode à la demande. La fenêtre d'expiration peut être ajustée par Tenant dans le *RealmJoin Portal* (configuration du Tenant LAPS).

{% hint style="danger" %}
Les comptes de support et leurs profils seront supprimés une fois la fenêtre d'expiration configurée (12 heures par défaut) écoulée depuis la demande du compte, quel que soit l'usage (après la déconnexion de l'utilisateur de support). **Tous les fichiers seront supprimés de manière permanente.**
{% endhint %}

{% hint style="danger" %}
Lors de l'utilisation du mode à la demande, la recréation du compte (`MaxStaleness`) *ne doit pas être utilisée*. Elle peut interférer avec votre flux de travail de support.
{% endhint %}

Prérequis pour le flux de travail à la demande :

* Le mode est activé en définissant `"OnDemand": true`.
* Un utilisateur est connecté
* L'agent RealmJoin est en cours d'exécution
* L'appareil est connecté à Internet
* L'appareil peut atteindre le backend RealmJoin

{% hint style="info" %}
Il peut falloir jusqu'à 30 minutes à l'agent RealmJoin pour détecter la demande. L'utilisateur connecté peut accélérer ce processus en choisissant « Synchroniser cet appareil » dans le menu de la barre d'état système de RealmJoin.
{% endhint %}

Lorsqu'il n'est pas en mode à la demande, il sera créé de manière proactive.

*Exemple*

Clé `LocalAdminManagement.SupportAccount` (pour les paramètres communs, voir [paramètres de groupe](#group-settings))

```json
{
  "NamePattern": "ADM-Support-User-{HEX:2}",
  "DisplayName": "Utilisateur de support",
  "OnDemand": true,
  "PasswordPreset": 1
}
```

## Compte à privilèges

Ce type de compte est conçu pour être utilisé par des utilisateurs avancés qui ont besoin de privilèges d'administrateur réguliers mais contrôlés sur leurs propres appareils. Une date d'expiration fixe du compte peut être spécifiée (`Expiration`).

{% hint style="danger" %}
Pour ce type, la recréation du compte (`MaxStaleness`) *ne doit pas être utilisée*. L'objectif est d'avoir un compte persistant pour vos utilisateurs.
{% endhint %}

Les rotations forcées de mot de passe sont prises en charge :

1. `2021-11-20T12:34:56+01:00`: Tout horodatage explicite au format ISO-8601. Plusieurs horodatages peuvent être spécifiés.
2. `DayAfterCreate`: Après la création du compte, le mot de passe du compte sera modifié. C'est utile lorsque les utilisateurs sont censés configurer Windows Hello pour des options de connexion supplémentaires.
3. `Annuel`, `Mensuel` ou `Hebdomadaire`: L'intervalle le plus court est privilégié (`Hebdomadaire` > `Mensuel` > `Annuel`). Si aucune autre condition n'est spécifiée, les valeurs par défaut sont « 1er jour du mois » pour `Mensuel` ou « lundi » pour `Hebdomadaire`. De plus, `Annuel` la valeur par défaut est la date de dernier changement du mot de passe + 365 jours. Les sept jours de la semaine peuvent être spécifiés. Donc si `mercredi` et `Hebdomadaire` sont spécifiés, le mot de passe sera modifié chaque mercredi. Si `mercredi` et `Mensuel` sont spécifiés, le mot de passe sera modifié le premier mercredi de chaque mois. En combinant `Annuel` avec les jours de la semaine, l'échéance sera fixée au dernier jour de semaine spécifié possible juste avant l'expiration des 365 jours.

*Exemple*

Clé `LocalAdminManagement.PrivilegedAccount` (pour les paramètres communs, voir [paramètres de groupe](#group-settings))

```json
{
  "NamePattern": "Privileged-User-{COUNT:1}",
  "DisplayName": "Utilisateur à privilèges",
  "PasswordRenewals": ["DayAfterCreate", "Monthly", "Thursday"],
  "PasswordPreset": 3,
  "PasswordLength": 3
}
```

## Accès aux mots de passe

Utilisez le RealmJoin Portal pour accéder aux mots de passe.<br>

<figure><img src="/files/584ff8215c6f363a9f67e81dce4ed3386fe514ea" alt=""><figcaption></figcaption></figure>

## Activation du libre-service

Les utilisateurs peuvent accéder aux comptes créés sur leurs *propres* appareils (ils sont « PrimaryUser ») lorsque cela est activé à l'aide de *RealmJoin Portal* à partir de la version `2022.5.1`. Pour activer, définissez un paramètre à l'aide de la clé `Allow.SelfLAPS`. Ce paramètre peut être défini sur des groupes et des utilisateurs. Comme pour tous les paramètres préfixés par `Allow.*` ils sont combinés par ET entre l'utilisateur et tous ses groupes.

```json
{
  "EmergencyAccount": true,
  "SupportAccount": true,
  "PrivilegedAccount": true
}
```

La valeur peut aussi être un booléen pur `true`/`false`. Cela peut être utilisé comme caractère générique et englobe tous les types de compte actuels et futurs. Veuillez noter que cela n'est recommandé que pour désactiver l'accès (`false`).

{% hint style="info" %}
Par le passé, il était recommandé de définir ce paramètre sur `true`. Cependant, à mesure que nous continuons à étendre RealmJoin, de nouveaux types de compte seront ajoutés. Il est donc fortement recommandé de migrer toutes les `true` valeurs vers la notation d'objet plus explicite
{% endhint %}

Un exemple de configuration peut ressembler à ceci :

| Groupe                           |                                                           | Commentaire                                                                                                                                                        |
| -------------------------------- | --------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| Tous les travailleurs à distance | `{ "EmergencyAccount": true }`                            | Les travailleurs à distance peuvent accéder au compte d'urgence de leurs propres appareils.                                                                        |
| Tous les développeurs            | `{ "EmergencyAccount": true, "PrivilegedAccount": true }` | Les développeurs peuvent accéder à leur compte d'urgence et à leur compte à privilèges, qu'ils soient travailleurs à distance ou non.                              |
| Tous les stagiaires              | `false`                                                   | Les stagiaires ne doivent jamais avoir accès à aucun des trois types de compte **et** ni aux futurs types, même s'ils sont travailleurs à distance ou développeurs |

{% hint style="info" %}
SelfLAPS est plus puissant que le rôle LAPS classique. Cela dit, si un utilisateur administrateur administre LAPS avec son compte utilisateur habituel, il ne pourra pas administrer son propre LAPS.

Atténuation : activez SelfLAPS pour ces comptes administrateurs ou utilisez des comptes administrateurs séparés.
{% endhint %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.realmjoin.com/fr/agent-realmjoin/realmjoin-client/local-admin-password-solution-laps.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
