> 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/administration-et-parametres/permission/custom-roles.md).

# Rôles personnalisés

Les rôles personnalisés RealmJoin définissent des autorisations granulaires en JSON et se lient à des groupes ou utilisateurs Entra via l’éditeur JSON intégré.

## Aperçu

**Rôles personnalisés** est une fonctionnalité facultative du portail RealmJoin et permet de créer des rôles internes supplémentaires RealmJoin. Vous pouvez attribuer des autorisations granulaires / atomiques à ces rôles et les lier à des groupes Entra ou à des utilisateurs dédiés.

{% hint style="info" %}
Si des rôles personnalisés sont nécessaires, veuillez **demander l'activation via le support RealmJoin**.
{% endhint %}

Les rôles personnalisés sont définis en JSON. L'éditeur JSON inclus dans le portail RealmJoin offre la vérification de la syntaxe et la coloration syntaxique, et vérifiera votre définition par rapport au schéma JSON des rôles personnalisés.

<figure><img src="https://1100180853-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MkrcM7cKOpXKri1kVrh%2Fuploads%2FNifuPdTWlMiAniHWFyov%2Fimage.png?alt=media&amp;token=189d5359-6632-4d41-a9ca-14a886fce7c1" alt=""><figcaption><p>Éditeur JSON des rôles personnalisés</p></figcaption></figure>

## Utilisation de l'éditeur

### Vérification de syntaxe / Erreurs

L'éditeur vérifiera la syntaxe pendant que vous tapez. Si une erreur de syntaxe est détectée, un message d'erreur **Afficher x erreurs** et une icône de bogue apparaîtra à côté de **Enregistrer.**

<figure><img src="https://1100180853-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MkrcM7cKOpXKri1kVrh%2Fuploads%2F9KdtoXuHIptOvZot6fHy%2Fimage.png?alt=media&amp;token=6337d312-d237-48bf-a7fa-2e0ae3ffe67f" alt=""><figcaption><p>Message/bouton d'erreur JSON</p></figcaption></figure>

Cliquez sur ce message pour obtenir plus de détails sur l'erreur.

### Mise en forme

Vous pouvez formater automatiquement le JSON en cliquant sur **Formater** dans le coin supérieur droit de la page.

<figure><img src="https://1100180853-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MkrcM7cKOpXKri1kVrh%2Fuploads%2FBcvly75klfY71hEA0oMj%2Fimage.png?alt=media&amp;token=009be309-82ff-4dac-828b-146c29def86e" alt=""><figcaption><p>Bouton de formatage</p></figcaption></figure>

### Auto-complétion

L'éditeur peut proposer l'auto-complétion des mots-clés connus (comme les autorisations) à partir du schéma.

<figure><img src="https://1100180853-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MkrcM7cKOpXKri1kVrh%2Fuploads%2FwyhuLYTSuCJyhdK3K0lX%2Fimage.png?alt=media&amp;token=20ab28f4-6b98-4349-96fc-1586d609449a" alt=""><figcaption><p>Auto-complétion des mots-clés</p></figcaption></figure>

Vous pouvez appuyer sur "Ctrl" + "Espace" à tout moment pour lancer l'auto-complétion.

## Règles

Un rôle est décrit comme une paire d'autorisations et d'utilisateurs et/ou de groupes auxquels ces autorisations sont attribuées.

Les rôles sont répertoriés sous forme de tableau (liste) sous le mot-clé **Règles**.

Exemple d'ensemble de règles :

```json
{
  "Rules": [
    {
      "Name": "Défaut : les Supporters peuvent changer l'utilisateur principal [27e589a7]",
      "Description": "Règle par défaut permettant aux membres d'un groupe de Supporters de changer l'utilisateur principal des appareils joints à RealmJoin. Veuillez conserver l'ID inclus dans son nom.",
      "Groups": [
        "f31f5765-f56f-47fa-9248-ac2d77221634",
        "422e6b7c-bd99-4082-be1c-88cbc2bb2734"
      ],
      "Permissions": [
        "CanChangeRealmJoinPrimaryUser"
      ]
    },{
      "Name": "Autoriser John à ajouter de nouveaux formulaires Self Service",
      "Users": [
        "b31f5765-f56f-47fa-9248-ac2d77221622"
      ],
      "Permissions": [
        "CanAddSelfServiceForms"
      ]
    }
  ]
}
```

### Nom et description

**Nom** est requis, **Description** est facultatif.

Les deux sont des champs de texte brut (string).

### Autorisations

Une autorisation est une chaîne unique identifiant une certaine action dans le portail RealmJoin. **Autorisations** est une liste (tableau) d'autorisations.

Voir [Autorisations disponibles](/fr/administration-et-parametres/permission/custom-roles/available-permissions.md) pour une liste et une description des autorisations courantes.

### Groupes

Une liste (tableau) d'ID d'objet de groupes Entra. Fournies [autorisations](#permissions) seront attribuées à tous les utilisateurs qui sont membres de ces groupes.

### Utilisateurs

Une liste (tableau) d'ID d'objet d'utilisateurs Entra. Fournies [autorisations](#permissions) seront attribuées à ces utilisateurs.


---

# 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 by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.realmjoin.com/fr/administration-et-parametres/permission/custom-roles.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

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.
