Agent Copilot cloud est un agent autonome qui a accès à votre code et peut envoyer des modifications à votre référentiel. Cela implique certains risques.
Dans la mesure du possible, GitHub a appliqué les atténuations appropriées. Cela donne Agent Copilot cloud une base forte de protections de sécurité intégrées que vous pouvez compléter en suivant les conseils de bonnes pratiques.
Le code non validé peut introduire des vulnérabilités
Par défaut, Agent Copilot cloud vérifie le code qu’il génère pour les problèmes de sécurité et obtient un deuxième avis sur son code avec révision du code Copilot. Il cherche à résoudre les problèmes identifiés avant de finaliser la pull request. Cela améliore la qualité du code et réduit la probabilité que le code généré par Agent Copilot cloud introduise des problèmes tels que des secrets codés en dur, des dépendances non sécurisées et d’autres vulnérabilités.
Agent Copilot cloudla validation de sécurité **ne nécessite pas** de GitHub Secret Protection, GitHub Code Security, or GitHub Advanced Security licence.
* ** CodeQL ** est utilisé pour identifier les problèmes de sécurité du code.
- Les dépendances nouvellement introduites sont vérifiées par rapport aux GitHub Advisory Database avis de programmes malveillants et pour toutes les vulnérabilités élevées ou critiques de CVSS.
-
** Secret scanning ** permet de détecter des informations sensibles telles que des clés API, des jetons et d’autres secrets. - Des détails sur l’analyse effectuée et les actions effectuées Agent Copilot cloud par peuvent être examinés dans le journal de session. Consultez « Suivi des sessions GitHub Copilot ».
Si vous le souhaitez, vous pouvez désactiver un ou plusieurs outils de validation de la qualité du code et de la sécurité utilisés par Agent Copilot cloud. Consultez « Configuration des paramètres pour l’agent cloud GitHub Copilot ».
Agent Copilot cloud peut envoyer (push) des modifications de code à votre référentiel
Pour atténuer ce risque, GitHubprocédez comme suit :
-
**Limite qui peut déclencher l’agent.** Seuls les utilisateurs disposant d’un accès en écriture au référentiel peuvent déclencher Agent Copilot cloud pour fonctionner. Les commentaires des utilisateurs sans accès en écriture ne sont jamais transmis à l'agent. -
**Limite la branche vers laquelle l'agent peut pousser.** Agent Copilot cloud a uniquement la possibilité d’envoyer (push) vers une seule branche. Lorsque l’agent est déclenché en mentionnant `@copilot` sur une demande de tirage existante, Copilot dispose d’un accès en écriture à la branche de la demande de tirage. Dans d’autres cas, une nouvelle `copilot/` branche est créée pour Copilot, et l’agent ne peut envoyer (push) qu’à cette branche. L'agent est également soumis à toutes les protections de branche et aux vérifications requises pour le référentiel de travail. -
**Limite les informations d’identification de l’agent.** Agent Copilot cloud peut uniquement effectuer des opérations push simples. Il n’est pas en mesure d’exécuter directement `git push` ou d’autres commandes Git. -
**Nécessite une révision humaine avant de fusionner.** Les pull requests en brouillon créées par Agent Copilot cloud doivent être examinées et fusionnées par un humain. Agent Copilot cloud ne peut pas marquer ses demandes de tirage comme « Prêt pour révision » et ne peut pas approuver ou fusionner une demande de tirage. -
**Limite les exécutions GitHub Actions de flux de travail.** Par défaut, les flux de travail ne sont pas déclenchés tant Agent Copilot cloudque le code n’est pas examiné et qu’un utilisateur disposant d’un accès en écriture au référentiel clique sur le bouton **Approuver et exécuter les flux de travail** . Si vous le souhaitez, vous pouvez configurer Copilot pour autoriser l’exécution automatique des flux de travail. Consultez « [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/review-copilot-prs#managing-github-actions-workflow-runs) ». -
**Empêche l’utilisateur qui a créé Agent Copilot cloud une demande de tirage de l’approuver.** Cela permet de conserver les contrôles attendus dans la règle « Approbations requises » et la protection des branches. Consultez « [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/available-rules-for-rulesets) ».
Agent Copilot cloud a accès aux informations sensibles
Agent Copilot cloud a accès au code et à d’autres informations sensibles, et peut le fuiter, accidentellement ou en raison d’une entrée utilisateur malveillante.
Pour atténuer ce risque, GitHublimite Agent Copilot cloudl’accès à Internet. Consultez « Personnalisation ou désactivation du pare-feu pour l’agent cloud GitHub Copilot ».
Les commandes d’IA peuvent être vulnérables aux attaques par injection
Les utilisateurs peuvent inclure des messages masqués dans les problèmes attribués à Agent Copilot cloud ou dans les commentaires laissés pour Agent Copilot cloud sous forme de d’injection d’invite.
Pour atténuer ce risque, GitHubfiltre les caractères masqués avant de passer l’entrée utilisateur à Agent Copilot cloud: par exemple, le texte entré en tant que commentaire HTML dans un problème ou un commentaire de demande de tirage n’est pas passé à Agent Copilot cloud.
Les administrateurs peuvent perdre de vue le travail des agents
Pour atténuer ce risque, Agent Copilot cloud il est conçu pour être auditable et traçable.
-
Agent Copilot cloudLes commits sont rédigés par Copilot, le développeur qui a attribué le problème ou demandé le changement du pull request étant identifié comme co-auteur. Cela facilite l’identification du code généré par Agent Copilot cloud et par qui a démarré la tâche. - Les journaux de session et les événements du journal d’audit sont disponibles pour les administrateurs.
- Le message de validation de chaque validation créée par l’agent inclut un lien vers les journaux de session de l’agent, pour la révision et l’audit du code. Consultez « Suivi des sessions GitHub Copilot ».
-
Agent Copilot cloudles validations sont signées, de sorte qu’elles apparaissent sous la forme « Vérifié » sur GitHub. Cela garantit que les validations ont été effectuées par Agent Copilot cloud et n’ont pas été modifiées.