# SSO et SAML

Bien que gérer manuellement les membres de votre organisation soit tout à fait correct pour les petites équipes ou les personnes qui veulent beaucoup de contrôle, parfois il suffit d’ouvrir les choses de manière plus automatisée. GitBook vous permet de configurer cela de plusieurs façons, via un SSO de base par domaine e-mail, et une intégration SAML plus complexe.

## Authentification unique via le domaine e-mail

Lorsque vous créez ou gérez votre organisation, vous pouvez ajouter une liste de domaines e-mail que vous souhaitez autoriser à accéder à votre organisation GitBook. Cela signifie que toute personne disposant d’une adresse e-mail vérifiée correspondant à vos domaines SSO configurés sera autorisée à rejoindre votre organisation.

Vous pouvez activer le SSO par domaine e-mail dans la section **SSO** des **Paramètres**de votre organisation ; saisissez une liste de domaines e-mail séparés par des virgules pour lesquels vous souhaitez autoriser l’accès SSO, et le tour est joué.

<figure><img src="/files/c735e44a2612931311a35eb61ea247623e3f7a15" alt="A GitBook screenshot showing how to configure SSO"><figcaption><p>Configurez le SSO pour votre organisation.</p></figcaption></figure>

{% hint style="info" %}
Toute personne qui rejoint via un domaine e-mail SSO aura par défaut un accès invité ; vous pouvez modifier son rôle à tout moment dans la section des membres des paramètres de votre organisation.
{% endhint %}

**Authentification unique basée sur SAML** (SSO) donne aux membres l’accès à GitBook via un fournisseur d’identité (IdP) de votre choix.

GitBook s’intègre facilement à votre fournisseur d’identité (IdP) existant afin que vous puissiez offrir à vos employés une authentification unique à GitBook en utilisant les mêmes identifiants et la même expérience de connexion que pour vos autres fournisseurs de services.

En utilisant le SSO, vos employés pourront se connecter à GitBook à l’aide de l’interface familière du fournisseur d’identité, au lieu de la page de connexion de GitBook. Le navigateur de l’employé sera alors redirigé vers GitBook. L’IdP accorde l’accès à GitBook lorsque le SSO est activé et que le mécanisme de connexion propre à GitBook est désactivé. Ainsi, la sécurité de l’authentification est transférée à votre IdP et coordonnée avec vos autres fournisseurs de services.

## Prérequis pour le SSO avec GitBook <a href="#prerequisites-for-sso-with-gitbook" id="prerequisites-for-sso-with-gitbook"></a>

* Le fournisseur d’identité (IdP) de votre entreprise doit prendre en charge la norme **SAML 2.0** .
* Vous devez disposer des autorisations d’administration sur l’IdP.
* Vous devez être administrateur de l’organisation GitBook sur laquelle vous souhaitez configurer SAML.

### Configurer sur GitBook <a href="#setup-on-gitbook" id="setup-on-gitbook"></a>

Vous devez être [administrateur de l’organisation](/docs/documentation/fr/collaboration/member-management/roles.md#admin) pour activer le SSO pour votre organisation GitBook.

Après avoir configuré le SSO sur votre IdP, vous pourrez saisir les métadonnées. Une fois la configuration réussie, les administrateurs verront une boîte de dialogue de confirmation et l’URL de connexion SSO pour les utilisateurs finaux sera affichée. **GitBook n’envoie pas d’e-mails d’annonce lorsque la configuration est terminée**. Il incombe à l’administrateur de prévenir les employés de l’entreprise (et de leur communiquer l’URL de connexion) afin qu’ils puissent accéder à GitBook via le SSO.

{% hint style="info" %}
Les administrateurs de l’organisation peuvent toujours se connecter avec des méthodes non SSO, vous pouvez donc toujours voir les boutons Google, GitHub ou e-mail. C’est normal, même avec **Forcer le SSO** activé.

Cela empêche un verrouillage de votre organisation après une mauvaise configuration du SSO. Les administrateurs peuvent toujours se connecter et supprimer ou corriger les paramètres SSO.
{% endhint %}

Vous aurez besoin des éléments suivants à partir des métadonnées de votre IdP pour enregistrer un fournisseur SAML :

* Un **libellé** – cela peut être n’importe quoi, il sera affiché sur la page de connexion
* Un **ID d’entité**
* Un **URL d’authentification unique**
* Un **certificat X.509** – assurez-vous de copier-coller le certificat complet !

### Configurer sur l’IdP <a href="#setup-on-the-idp" id="setup-on-the-idp"></a>

La plupart des fournisseurs d’identité conformes à SAML 2.0 exigent les mêmes informations sur le fournisseur de services (GitBook, dans ce cas) pour la configuration. Ces valeurs sont spécifiques à votre organisation GitBook et sont disponibles dans l’onglet **Paramètres -> SSO** de l’organisation GitBook pour laquelle vous souhaitez activer le SSO.

La plupart de ces valeurs peuvent être copiées directement dans votre IdP pour terminer la configuration de SAML.

GitBook exige que le **NameID** contienne l’adresse e-mail de l’utilisateur. Techniquement, nous recherchons : `urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress` comme format Name-ID – de nombreux fournisseurs (tels que Google) vous permettront de définir un format tel que **EMAIL**.

### Attributs personnalisés

GitBook récupérera les attributs personnalisés suivants à partir de la réponse d’assertion SAML et les utilisera lors de la création de l’utilisateur.

| Champ        | Description                                                                                                           |
| ------------ | --------------------------------------------------------------------------------------------------------------------- |
| `first_name` | `first_name` et `last_name` les champs seront combinés pour produire le nom d’affichage de l’utilisateur dans GitBook |
| `last_name`  | `first_name` et `last_name` les champs seront combinés pour produire le nom d’affichage de l’utilisateur dans GitBook |

## Créer des comptes utilisateurs finaux <a href="#creating-end-user-account" id="creating-end-user-account"></a>

Pour ajouter des membres, créez-leur des comptes dans votre IdP. Lors de la première connexion d’un nouveau membre à GitBook via l’IdP, un compte GitBook sera créé pour lui grâce au provisionnement automatique IdP. L’utilisateur aura accès aux ressources de l’organisation en tant que membre de l’organisation.

{% hint style="danger" %}
La configuration requiert des adresses e-mail en minuscules. N’utilisez pas d’adresses e-mail en casse mixte.
{% endhint %}

## Supprimer des comptes <a href="#removing-end-user-accounts" id="removing-end-user-accounts"></a>

Supprimer un membre de l’IdP empêchera l’utilisateur de se connecter au compte GitBook correspondant, **mais ne supprimera pas le compte de GitBook**. Nous recommandons également de supprimer le compte de l’organisation GitBook.

## Contrôler l’accès

Une fois que vous avez configuré le SSO SAML, il incombe à l’IdP de contrôler qui peut accéder à votre compte GitBook.

## Avis de sécurité <a href="#security-notice" id="security-notice"></a>

Si vous avez un compte GitBook existant sous la même adresse e-mail que celle que nous obtenons du fournisseur d’identité et que vous n’êtes pas membre de l’organisation à laquelle vous essayez de vous connecter, nous ne pourrons pas vous ajouter automatiquement à l’organisation avec la configuration SAML pour des raisons de sécurité. Vous avez deux options :

1. Supprimez votre compte GitBook existant, puis connectez-vous à l’organisation souhaitée avec SAML. GitBook créera alors un nouveau compte pour vous et vous serez ajouté à l’organisation
2. Ou demandez à votre administrateur de vous inviter à l’organisation :

Si votre organisation n’a pas activé « Forcer le SSO », un administrateur de votre organisation peut inviter des utilisateurs via la page Membres dans les paramètres de votre organisation.

Si votre organisation a activé « Forcer le SSO », un administrateur devra utiliser le point de terminaison API `des invitations` de GitBook pour inviter des utilisateurs à l’organisation. Un appel à cette API ressemblerait à ce qui suit ;

```
curl --request POST --header "Authorization: Bearer <your_access_token>" --url "https://api.gitbook.com/v1/orgs/<org_id>/invites" --header 'Content-Type: application/json' --data-raw '{ "sso": true, "role": "<role>", "emails":["<email>"] }'
```


---

# Agent Instructions: 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:

```
GET https://gitbook.com/docs/documentation/fr/gestion-du-compte/sso-and-saml.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
