Vue d’ensemble
Utilisez ce guide si vous administrez un espace de travail ChatGPT et configurez le modèle d’application GitHub Enterprise pour votre organisation. Un modèle n’est pas l’application finale que les membres utilisent. Il s’agit d’un processus de configuration qui crée un brouillon d’application propre à l’espace de travail une fois que vous avez fourni la configuration GitHub Enterprise requise.
Pour GitHub Enterprise, la configuration connecte ChatGPT à l’hôte GitHub Enterprise de votre organisation. Vous créez une application GitHub, enregistrez l’URL de rappel ChatGPT, générez des identifiants, puis collez ces valeurs dans le processus de configuration du modèle ChatGPT. Une fois que ChatGPT a créé le brouillon de l’application, vous pouvez le publier et gérer l’application comme les autres applications de l’espace de travail.
Pour la navigation dans l’espace de travail et l’accès aux applications, consultez : Contrôles d’administration, sécurité et conformité pour les modules d’extension et les applications.
Ce que vous configurez
Vous créez dans ChatGPT une application GitHub Enterprise propre à votre espace de travail. L’application utilise :
Une application GitHub enregistrée sur votre hôte GitHub Enterprise.
L’identifiant client et le secret client de l’application GitHub pour l’autorisation OAuth des utilisateurs.
La clé privée de l’application GitHub pour que ChatGPT puisse générer des jetons d’installation pour les opérations sur les dépôts.
Un secret et une URL de webhook pour que GitHub Enterprise puisse envoyer les événements d’installation et de dépôt à ChatGPT.
Votre nom d’hôte GitHub Enterprise, comme
github.example.com.
Créez une application GitHub, et non une application OAuth GitHub autonome. La configuration du modèle ChatGPT nécessite les identifiants de l’application GitHub, une clé privée et les paramètres du webhook.
Avant de commencer
Vous avez besoin :
D’un accès d’administrateur ou de propriétaire à l’espace de travail ChatGPT.
D’un accès d’administrateur GitHub Enterprise ou de propriétaire d’organisation permettant de créer et d’installer des applications GitHub.
Du nom d’hôte GitHub Enterprise uniquement, sans
https://ni chemin.D’une décision sur les actions de dépôt que ChatGPT doit prendre en charge, comme la recherche de dépôts en lecture seule, les flux de travail de pull request ou de ticket, la modification de fichiers, GitHub Actions ou des flux de travail Codex plus étendus.
D’un endroit sécurisé pour gérer la clé privée et le secret client de l’application GitHub.
Gardez ChatGPT et GitHub Enterprise ouverts dans des onglets distincts. N’inventez pas l’URL de rappel. Copiez l’URL de rappel exacte affichée dans ChatGPT.
Valeurs à préparer
Nom d’hôte GitHub Enterprise : par exemple,
github.example.com.URL de rappel : copiez-la à partir du processus de configuration du modèle ChatGPT.
Identifiant client de l’application GitHub.
Secret client de l’application GitHub.
Clé privée PEM de l’application GitHub.
Secret de webhook généré par ChatGPT.
URL de webhook générée après la création du brouillon de l’application dans ChatGPT.
Commencer la configuration du modèle dans ChatGPT
Dans ChatGPT, passez à l’espace de travail où l’application doit être accessible.
Ouvrez Paramètres de l’espace de travail > Applications. Vous pouvez aussi accéder à la console d’administration, sélectionner l’espace de travail ChatGPT voulu et ouvrir Modules d’extension. Sélectionnez Gérer les anciennes applications pour ouvrir la page Applications qui a été conservée.
Sélectionnez Répertoire.
Recherchez GitHub Enterprise.
Sélectionnez le modèle d’application GitHub Enterprise et lancez la configuration.
Saisissez un nom d’application et une description clairs, comme GitHub Enterprise ou GitHub Enterprise - Ingénierie.
Saisissez le nom d’hôte GitHub Enterprise, comme
github.example.com.Copiez l’URL de rappel affichée dans ChatGPT. Gardez cet onglet ouvert.
Copiez le secret de webhook généré s’il s’affiche pendant la configuration.
Exemple d’URL de rappel : https://chatgpt.com/connector/oauth/<callback_id>
Ne supprimez pas l’identifiant de rappel, n’ajoutez pas de barre oblique à la fin et ne remplacez pas cette URL par une URL ChatGPT générique.
Créer l’application GitHub dans GitHub Enterprise
Ouvrez votre hôte GitHub Enterprise, par exemple
https://github.example.com.Accédez à l’organisation ou au compte qui doit être propriétaire de l’application.
Ouvrez Paramètres > Paramètres de développement > Applications GitHub.
Sélectionnez Nouvelle application GitHub.
Saisissez un nom d’application clair, par exemple ChatGPT GitHub Enterprise.
Saisissez une URL de page d’accueil. S’il n’existe aucune page interne dédiée, utilisez l’URL de l’organisation GitHub Enterprise.
Dans URL de rappel, collez l’URL de rappel exacte copiée depuis ChatGPT.
Laissez l’option Faire expirer les jetons d’autorisation utilisateur activée, à moins que votre équipe de sécurité ait une raison précise de la modifier.
Activez Demander l’autorisation de l’utilisateur pendant l’installation pour que les utilisateurs puissent autoriser l’application lors de l’installation ou de la connexion.
Sous Où cette application GitHub peut-elle être installée?, choisissez l’option la plus restrictive qui convient à votre déploiement.
Créez l’application GitHub.
Configurer les autorisations et les événements
Choisissez les autorisations minimales requises pour les actions ChatGPT que vous prévoyez activer.
Pour la découverte de dépôts et les questions-réponses en lecture seule, commencez par des autorisations de lecture comme :
Métadonnées : lecture seule. GitHub exige l’accès aux métadonnées pour les applications GitHub.
Contenu : lecture seule, pour accéder au contenu des fichiers et des dépôts.
Tickets : lecture seule, si la recherche ou la lecture de tickets est nécessaire.
Pull requests : lecture seule, si la recherche de pull requests ou le contexte de révision est nécessaire.
Actions : lecture seule, si l’état d’exécution des flux de travail, les tâches, les journaux ou les artefacts sont nécessaires.
Pour les flux de travail en écriture, ajoutez des autorisations d’écriture uniquement là où c’est nécessaire, par exemple pour Contenu, Pull requests, Tickets, Actions ou Flux de travail. Utilisez les autorisations les plus restreintes qui permettent les actions ChatGPT prévues.
Les événements de webhook doivent correspondre aux flux de travail que vous prenez en charge. Les événements courants comprennent Installation, Dépôts de l’installation, Envoi, Pull request, Tickets, Commentaire de ticket, Exécution de flux de travail et Tâche de flux de travail.
Générer et copier les identifiants de l’application GitHub
Dans les paramètres de l’application GitHub, copiez l’Identifiant client.
Générez un Secret client et copiez-le immédiatement.
Sous Clés privées, générez une clé privée.
Téléchargez le fichier .pem et conservez-le en lieu sûr.
Ouvrez le fichier .pem localement et copiez tout le texte PEM, y compris les lignes de début et de fin.
La clé privée est une donnée sensible. Traitez-la comme un identifiant d’authentification. Si elle est exposée, générez une nouvelle clé privée, mettez à jour la configuration de l’application ChatGPT et supprimez la clé compromise dans GitHub Enterprise.
Terminer la configuration dans ChatGPT
Retournez à l’onglet de configuration du modèle ChatGPT.
Collez l’identifiant client de l’application GitHub dans Identifiant client OAuth.
Collez le secret client de l’application GitHub dans Secret client OAuth.
Laissez les Portées inchangées, sauf si votre organisation doit délibérément remplacer les valeurs par défaut du modèle.
Vérifiez que le nom d’hôte GitHub Enterprise contient uniquement le nom d’hôte, comme
github.example.com.Collez ou téléversez la clé privée PEM de l’application GitHub dans Clé privée de l’application GitHub.
Vérifiez que le secret de webhook généré est présent.
Créez le brouillon de l’application.
Dans ChatGPT, ouvrez les détails du brouillon de l’application créé et copiez l’URL de webhook générée.
L’URL de webhook devrait ressembler à ceci : https://connectors.api.openai.org/connectors/<connector_id>/webhook
Terminer la configuration du webhook dans GitHub Enterprise
Retournez aux paramètres de l’application GitHub dans GitHub Enterprise.
Ouvrez les paramètres généraux de l’application GitHub.
Activez Webhooks actifs si ce n’est pas déjà fait.
Collez l’URL de webhook ChatGPT dans URL de webhook.
Collez le secret de webhook ChatGPT dans Secret de webhook.
Gardez la vérification SSL activée.
Vérifiez que les événements de webhook auxquels vous êtes abonné correspondent aux autorisations et aux actions que vous avez activées.
Enregistrez les modifications.
Publier et gérer l’application dans ChatGPT
La création du brouillon de l’application ne la rend pas automatiquement accessible aux membres. Après avoir examiné le brouillon :
Publiez le brouillon de l’application.
Dans les paramètres de l’espace de travail, ouvrez la page Applications, puis Activées, et confirmez que l’application s’affiche. Vous pouvez aussi ouvrir la page Applications à l’aide de l’option Gérer les anciennes applications dans Console d’administration > Modules d’extension.
Dans Enterprise et Edu, utilisez Accès des utilisateurs pour choisir les rôles qui peuvent utiliser l’application. Dans Business, gérez la disponibilité de l’application dans l’ensemble de l’espace de travail.
Vérifiez le Contrôle des actions pour les actions de lecture et d’écriture.
Vérifiez les Autorisations de l’application pour choisir quand ChatGPT demande l’accord des membres avant d’utiliser l’application.
Demandez à un utilisateur de test autorisé d’ouvrir Applications dans ChatGPT et de confirmer que l’application s’affiche.
Ces autorisations de l’application s’appliquent aux conversations ChatGPT. Les agents de l’espace de travail utilisent des contrôles propres à chaque agent, définis par son créateur, pour déterminer les actions de l’application qui sont accessibles et quand les utilisateurs finaux doivent les approuver. Pour en savoir plus sur le comportement des agents, consultez : Agents de l’espace de travail ChatGPT pour Enterprise et Business.
Installer et tester l’application GitHub
Dans GitHub Enterprise, installez l’application GitHub sur l’organisation ou le compte.
Choisissez tous les dépôts ou certains dépôts, selon la politique de l’espace de travail.
Lancez le processus de connexion depuis ChatGPT en tant qu’utilisateur autorisé.
Autorisez l’application GitHub lorsque vous y êtes invité.
Exécutez d’abord une petite action de lecture, comme dresser la liste des dépôts accessibles ou récupérer une pull request connue.
Si les actions d’écriture sont activées, testez-les avec un dépôt à faible risque avant un déploiement plus large.
Nom d’hôte et comportement OAuth
ChatGPT utilise le nom d’hôte pour déterminer les points de terminaison GitHub Enterprise. Saisissez uniquement l’hôte, comme github.example.com ou octocorp.ghe.com.
Ne saisissez pas de chemin d’API, de chemin de dépôt ni github.com, sauf s’il s’agit de l’hôte GitHub Enterprise exact pour cette application.
Dépannage
Non-concordance de l’URI de redirection : vérifiez que l’URL de rappel de l’application GitHub correspond exactement à celle affichée dans ChatGPT.
ChatGPT ne peut pas créer ou enregistrer le brouillon de l’application : vérifiez que tous les champs requis sont présents, y compris le nom d’hôte, l’Identifiant client OAuth, le Secret client OAuth, la clé privée et le secret de webhook.
L’authentification réussit, mais les appels au dépôt échouent : vérifiez que l’application GitHub est installée et a accès au dépôt.
L’API renvoie une erreur 403 ou indique des autorisations insuffisantes : ajoutez l’autorisation manquante à l’application GitHub et demandez au propriétaire de l’installation d’approuver les autorisations mises à jour si une invite s’affiche.
Aucun dépôt ne s’affiche : vérifiez que l’installation de l’application inclut les dépôts attendus et que l’utilisateur qui accorde l’autorisation dans ChatGPT y a accès.
Les envois du webhook échouent : vérifiez que l’URL et le secret de webhook correspondent aux valeurs de ChatGPT, gardez la vérification SSL activée et assurez-vous que l’hôte GitHub Enterprise peut joindre
connectors.api.openai.org.Erreurs de clé privée : vérifiez que tout le contenu PEM a été copié, y compris les lignes de début et de fin.
