Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Connectez vos référentiels GitHub afin que votre agent puisse lire le code source, rechercher des erreurs, créer des problèmes, déclencher des flux de travail et faire correspondre les déploiements avec des incidents.
Conseil / Astuce
Vue d’ensemble rapide
- L’accès au code donne à votre agent le code source, l’IaC et les configurations en tant que contexte d’investigation.
- GitHub Connector permet les opérations sur les tickets, les pull requests et les workflows.
- GitHub MCP fournit un accès complet aux outils de GitHub avec des contrôles de gouvernance.
- Authentifiez-vous avec L’application OAuth, PAT ou BYO GitHub. Tous les trois travaillent sur
github.com. GitHub Enterprise Cloud (<tenant>.ghe.com) nécessite l’application BYO.
Votre code source, vos définitions d’infrastructure, vos configurations de déploiement, vos compétences et vos runbooks vivent dans GitHub. Lorsque votre agent peut lire ces artefacts, les enquêtes passent de la résolution des problèmes génériques à l’analyse de la cause racine qui référence le fichier exact, la validation exacte et la modification exacte de la configuration.
Utilisation du connecteur GitHub par votre agent
Azure agent SRE se connecte à GitHub de trois façons, chacun servant un objectif différent :
| Type de connexion | Où vous le configurez | Ce que votre agent obtient |
|---|---|---|
| Accès au code | Accès au code de Builder > | Recherche de code, fichier lu par chemin/branche, corrélation d’erreur à source, recherche de code sémantique |
| connecteur GitHub | Builder > Connecteurs > Ajouter un connecteur | Créer/lister des issues, ouvrir/fusionner des PR, déclencher et suivre les workflows GitHub Actions |
| GitHub MCP | Builder > Connecteurs > Ajouter un connecteur | Catalogue complet d’outils GitHub via MCP, avec des stratégies d’approbation et des contrôles de sélection d’outils |
Vous pouvez utiliser plusieurs types de connexion sur le même agent. Chacun d’eux a un rôle d’exécution différent.
Méthodes d’authentification pour le connecteur GitHub
Séparément de ce que fait l’agent, choisissez comment il s’authentifie pour GitHub. Trois méthodes sont disponibles et fonctionnent sur tous les types de connexion.
| Méthode d’authentification | Fonctionnement | Hôtes pris en charge | Idéal pour |
|---|---|---|---|
| OAuth | Connectez-vous avec votre compte GitHub dans une fenêtre contextuelle de navigateur | github.com |
Configuration interactive rapide (limite : 10 jetons par agent) |
| PAT | Fournissez un jeton d’accès personnel affiné avec une étendue repo |
github.com |
Comptes de service, environnements non interactifs |
| Application BYO GitHub | Inscrivez votre propre application GitHub, stockez la clé privée dans Azure Key Vault |
github.com et <tenant>.ghe.com |
Gouvernance d’entreprise, environnements UEM, GitHub Enterprise Cloud |
Pour github.com, les trois méthodes fonctionnent sur tous les types de connexion. Pour GitHub hôtes Enterprise Cloud (<tenant>.ghe.com), seule l’application BYO GitHub est disponible.
Autorisations par type d’authentification
| Operation | OAuth ou PAT minimum | Application GitHub minimale |
|---|---|---|
| Métadonnées du dépôt et clonage/lecture |
repo pour les dépôts privés, public_repo pour un accès public uniquement |
Référentiel Métadonnées : lecture et Contenu : lecture |
| Répertorier/créer des problèmes | Étendue du référentiel compatible avec les problèmes pour OAuth/PAT | Problèmes de référentiel : lecture/écriture si nécessaire |
| Opérations de pull request | Étendue de référentiel compatible PR pour OAuth/PAT | Demandes de récupération de référentiel : lecture/écriture en fonction des besoins |
Conseil / Astuce
Actualisation automatique des jetons OAuth
GitHub jetons OAuth expirent après environ huit heures, mais l’agent les actualise automatiquement avant l’expiration à l’aide d’une mémoire tampon de 20 minutes. Chaque actualisation génère un nouveau jeton d’actualisation, créant une chaîne de renouvellement autonome qui dure environ six mois. Votre connecteur reste connecté pendant les longues investigations et les tâches planifiées pendant la nuit, sans devoir vous connecter manuellement.
Cette actualisation automatique s’applique uniquement aux connexions OAuth. Les connexions PAT nécessitent une rotation manuelle des jetons. Pour les connexions d’application GitHub BYO, faites pivoter la clé privée dans Azure Key Vault si nécessaire.
Quand vous devez ré-authentifier : Si le jeton d’actualisation expire (environ six mois), si vous révoquez l’autorisation d’application GitHub, ou si votre connecteur a été configuré avant la version 26.247.0 (une nouvelle authentification stocke le jeton d’actualisation et active l’actualisation automatique à l’avenir).
Ce que l’agent peut faire avec le connecteur GitHub
Fonctionnalités d’analyse du code source
- Recherchez du code sur tous les référentiels connectés.
- Lire le contenu du fichier par chemin et branche.
- Mettre en corrélation les erreurs avec le code source : mapper des erreurs de ressource Azure à des fichiers et des numéros de ligne spécifiques.
- Recherche de code sémantique : recherchez du code lié à un incident à l’aide de requêtes en langage naturel.
- Identifiez les fichiers IaC : détectez les modèles Bicep, Terraform et ARM dans vos dépôts.
Gestion des problèmes et des demandes de tirage
- Créez des issues avec le titre, la description, les étiquettes et les assignés.
- Commentez les problèmes et les pull requests y compris les mots-clés pour clôture automatique.
- Mettez à jour les problèmes en modifiant le titre, le contenu, les étiquettes ou l'état.
- Consultez les alertes Dependabot pour examiner les failles de sécurité.
Automatisation de workflow
- Déclencher des workflows GitHub Actions pour lancer des déploiements canary ou de production.
- Suivez les exécutions de flux de travail pour suivre l’état des flux de travail déclenchés.
- Vérifiez le statut de fusion des PR afin de vérifier si une pull request est fusionnée.
GitHub Enterprise Cloud
Connectez des référentiels hébergés sur GitHub Enterprise Cloud (<tenant>.ghe.com) à l’aide d’une application BYO GitHub. L'agent utilise la clé privée de votre application, que vous stockez dans Azure Key Vault, pour créer des jetons d'installation de courte durée pour chaque dépôt.
Assurez-vous d’avoir effectué ce qui suit :
- Une application GitHub créée sur votre instance GHE avec l’autorisation Contenu : lecture seule.
- La clé privée de l'application stockée en tant que secret dans Azure Key Vault.
- L’identité gérée de l’agent s’est vu attribuer le rôle Utilisateur des secrets Key Vault sur le coffre.
Pour consulter le guide de configuration complet, voir Connecter des dépôts GitHub Enterprise Cloud.
Configurer le même référentiel dans plusieurs chemins d’accès
Configurez le même dépôt dans plusieurs chemins d’accès GitHub. Chaque chemin d’accès sert à différentes tâches d’exécution.
| Scénario | Approche recommandée |
|---|---|
| Besoin d’un contexte de code et d’opérations de problème | Configurer l’accès au code et GitHub Connecteur ou GitHub MCP |
| Besoin d’un catalogue d’outils MCP large uniquement | Utiliser GitHub MCP uniquement |
Besoin d’un hôte d’entreprise (<tenant>.ghe.com) |
Utiliser l’application GHE BYO via l’accès au code |
| Besoin d’un comportement de contrat de connecteur strict | Utiliser le connecteur GitHub |
Limites et contraintes
| Ressource | Conseils |
|---|---|
| Hosts | Configurer chaque hôte indépendamment (github.com, <tenant>.ghe.com) |
| Enregistrements d’authentification | Limité à l’hôte ; la déconnexion d’un hôte n’entraîne pas celle d’un autre hôte |
| Authentification GitHub Enterprise Cloud | Application BYO uniquement |
| Exigence Key Vault pour BYO App | La clé privée doit être dans Key Vault et lisible par l’identité de l’agent |
Résolution des problèmes
| Symptôme | Cause la plus probable | Réparer |
|---|---|---|
| La ligne du référentiel d’accès au code affiche Échec, mais les requêtes de problème fonctionnent toujours | Échec du contrôle d’intégrité sur un autre point de terminaison ou à un autre instant | Tester à nouveau la connexion d’accès au code et vérifier les autorisations de métadonnées du dépôt |
| Échec de la validation de l’application BYO | Incompatibilité de l’identifiant client, de l’URI de clé privée ou de la portée d’installation de l’application | Vérifier l’ID client, le contenu du secret Key Vault et la portée de l’installation de l’application |
<tenant>.ghe.com l’hôte n’affiche pas OAuth/PAT |
Comportement attendu | Utiliser l’application BYO GitHub |
| Échec du clonage/de la lecture malgré la réussite de l’authentification | Autorisations de lecture de métadonnées/contenu manquantes sur l’application ou le jeton | Accorder les autorisations de dépôt requises et réessayer |
| Échec des actions associées aux problèmes ou PR | Autorisations manquantes pour les problèmes/PR | Ajouter les autorisations pour les problèmes/PR à la portée OAuth/PAT ou à l’application GitHub |
Prise en main du connecteur GitHub
| Ce que vous voulez faire | Guide |
|---|---|
| Donner à votre assistant le contexte du code pour les investigations (OAuth/PAT) | Connecter le code source |
| Activer les opérations de problème, PR et de flux de travail (OAuth/PAT) | Configurer GitHub connecteur |
Configurer l’application BYO GitHub pour github.com ou <tenant>.ghe.com |
Connectez GitHub Enterprise Cloud |
| Ajouter des outils MCP GitHub avec des contrôles de gouvernance | Configurer un connecteur MCP |