Configuration d’un backend personnalisé
Configurez un écran de connexion personnalisé pour les visiteurs de votre documentation
Ce guide vous accompagne dans la configuration d’un écran de connexion protégé pour vos docs. Avant de suivre ce guide, assurez-vous d’abord d’avoir parcouru le processus de l’activation de l’accès authentifié.
Ce guide vous accompagne dans la configuration d’un écran de connexion protégé pour votre site de documentation GitBook à l’aide de votre propre personnalisé backend d’authentification.
Si vous utilisez l’un des fournisseurs d’authentification que nous prenons en charge ou si vous disposez d’un OpenID Connect backend conforme (OIDC), consultez nos guides d’intégration pour une configuration plus simplifiée : Auth0 | Azure AD | Okta | AWS Cognito | OIDC
Aperçu
Pour configurer un système d’authentification personnalisé pour votre site GitBook, suivez ces étapes clés :
Créer un backend personnalisé pour authentifier vos utilisateurs
Implémentez un backend qui invite les utilisateurs à se connecter et les authentifie.
Signer et transmettre un jeton JWT à GitBook
Créez un jeton JWT et signez-le avec la clé privée de votre site.
Configurez une URL à utiliser lorsqu’un visiteur non authentifié accède à votre site.
Configurer l’accès authentifié multi-tenant (facultatif)
Configurez votre backend pour gérer l’authentification sur plusieurs sites GitBook.
Configurer votre backend pour le contenu adaptatif (facultatif)
Configurez votre backend pour qu’il fonctionne avec le contenu adaptatif dans GitBook.
1. Créer un backend personnalisé pour authentifier vos utilisateurs
Afin de commencer à authentifier les utilisateurs avant qu’ils ne puissent visiter votre documentation, vous devrez mettre en place un serveur capable de gérer la connexion et l’authentification des utilisateurs.
Votre backend doit :
Inviter les utilisateurs à se connecter en utilisant votre méthode d’authentification préférée.
Valider les identifiants des utilisateurs et les authentifier.
Générer et signer un jeton Web JSON (JWT) lors de l’authentification réussie.
Rediriger les utilisateurs vers GitBook avec le JWT inclus dans l’URL.
2. Signer et transmettre un jeton JWT à GitBook
Une fois que votre backend authentifie un utilisateur, il doit générer un JWT et le transmettre à GitBook lors de la redirection vers votre site. Le jeton doit être signé à l’aide de la clé privée fournie dans les paramètres d’audience de votre site après l’activation de l’accès authentifié.
L’exemple suivant devrait montrer à quoi pourrait ressembler un gestionnaire de requêtes de connexion dans votre backend personnalisé :
3. Configurer une URL de secours
L’URL de secours est utilisée lorsqu’un visiteur non authentifié tente d’accéder à votre site protégé. GitBook le redirigera alors vers cette URL.
Cette URL doit pointer vers un gestionnaire dans votre backend personnalisé, où vous pouvez l’inviter à se connecter, l’authentifier, puis le rediriger vers votre site avec le JWT inclus dans l’URL.
Par exemple, si votre écran de connexion se trouve à https://example.com/login, vous devez inclure cette valeur comme URL de secours.
Vous pouvez configurer cette URL de secours dans les paramètres d’audience de votre site, sous l’onglet « Accès authentifié ».

Utiliser le point de terminaison de connexion de GitBook
Si vous souhaitez un lien de connexion sur votre site publié, pointez vers <publishedSiteURL>/~gitbook/auth/login.
Ce point de terminaison redirige le visiteur vers le backend d’authentification configuré pour le site. Il ajoute également un paramètre de requête location qui correspond à la page d’où il est parti.
C’est utile pour les liens d’en-tête et autres points d’entrée lorsque vous souhaitez renvoyer les visiteurs vers la même page après la connexion.
Lors de la redirection vers l’URL de secours, GitBook inclut un location paramètre de requête à l’URL de secours que vous pouvez exploiter dans votre gestionnaire pour rediriger l’utilisateur vers l’emplacement d’origine de l’utilisateur :
Parce que GitBook s’appuie sur le location paramètre de recherche - vous ne pouvez pas l’utiliser dans votre URL de secours. Par exemple, https://auth.gitbook.com/?location=something n’est pas une URL de secours valide.
Utiliser le point de terminaison de déconnexion de GitBook
Si vous souhaitez un lien de déconnexion sur votre site publié, pointez vers <publishedSiteURL>/~gitbook/auth/logout.
Ce point de terminaison déconnecte le visiteur de sa session GitBook.
4. Configurer l’accès authentifié multi-tenant (facultatif)
Si vous utilisez GitBook comme plateforme pour fournir du contenu à vos différents clients, vous devrez probablement configurer un accès authentifié multi-tenant. Votre backend d’authentification doit être chargé de gérer l’authentification sur plusieurs sites différents. C’est possible dans GitBook avec quelques petits ajustements dans le code de votre backend d’authentification personnalisé.
Ajouter tous les tenants à votre serveur d’authentification
Votre backend d’authentification devra connaître les clés de signature JWT et les URL de tous les sites GitBook qu’il est censé gérer. Si vous avez deux sites dans votre organisation pour le client A et le client B, vous pouvez imaginer votre code d’authentification stockant un tel mappage :
Donner du contexte supplémentaire à votre serveur d’authentification
Lorsque GitBook ne parvient pas à authentifier la requête d’un utilisateur, il le redirige vers l’URL de secours. Cette URL pointe vers votre backend d’authentification, qui est chargé d’authentifier l’utilisateur et de le rediriger vers le contenu demandé.
Pour prendre en charge plusieurs tenants, votre backend d’authentification doit savoir à quel site GitBook l’utilisateur est censé accéder. Cette information peut être transmise dans l’URL de secours.
Ainsi, par exemple, vous pouvez configurer les URL de secours de chaque site comme suit :
Site du client A
https://auth-backend.acme.org/login?site=customer-a
Site du client B
https://auth-backend.acme.org/login?site=customer-b
Votre backend d’authentification peut alors vérifier ces informations et gérer la redirection vers le bon site en conséquence :
5. Configurer votre backend pour le contenu adaptatif (facultatif)
Pour tirer parti de la fonctionnalité de contenu adaptatif dans votre configuration d’accès authentifié, vous pouvez inclure des attributs utilisateur supplémentaires (claims) dans la charge utile du JWT que votre backend personnalisé génère et inclure dans l’URL lors de la redirection de l’utilisateur vers le site.
Ces claims, lorsqu’ils sont inclus dans le JWT, sont utilisés par GitBook pour adapter le contenu dynamiquement pour les visiteurs de votre site.
En réunissant tous les éléments, l’exemple de code suivant montre comment vous pourriez inclure ces claims dans le JWT, qui pourra ensuite être utilisé par GitBook pour adapter le contenu à vos visiteurs :
Après avoir configuré et défini les bons claims à envoyer à GitBook, rendez-vous dans «Adapter votre contenu» pour continuer la configuration de votre site.
Mis à jour
Ce contenu vous a-t-il été utile ?