Skip to main content

À propos des applications

Vous pouvez créer des intégrations avec les API GitHub AE pour ajouter de la souplesse et réduire les frictions dans votre propre workflow.

Les applications sur GitHub vous permettent d’automatiser et d’améliorer votre workflow. Vous pouvez créer des applications pour améliorer votre workflow.

Les applications GitHub constituent le moyen officiellement recommandé pour l’intégration à GitHub, car elles offrent des autorisations beaucoup plus précises pour accéder aux données, mais GitHub prend en charge OAuth Apps et GitHub Apps. Pour plus d’informations sur le choix du type d’application, consultez « Différences entre les applications GitHub et les applications OAuth ».

Pour obtenir une procédure pas à pas du processus de création de GitHub App, consultez « Création de votre première application GitHub App. »

À propos de GitHub Apps

GitHub Apps sont des acteurs de première classe dans GitHub. GitHub App agit en son propre nom, en effectuant des actions via l’API directement à l’aide de sa propre identité. Cela signifie que vous n’avez pas besoin de gérer un bot ni un compte de service en tant qu’utilisateur distinct.

GitHub Apps peut être installé directement sur les comptes d’organisations et les comptes personnels, et être autorisé à avoir accès à des référentiels spécifiques. Elles sont fournies avec des webhooks intégrés et des autorisations spécifiques et limitées. Quand vous configurez votre GitHub App, vous pouvez sélectionner les référentiels auxquels l’application doit accéder. Vous pouvez par exemple configurer une application appelée MyGitHub qui écrit des problèmes dans le référentiel octocat et uniquement dans le référentiel octocat. Pour installer GitHub App, vous devez être propriétaire de l’organisation ou disposer d’autorisations d’administrateur dans un référentiel.

Par défaut, seuls les propriétaires d’organisation peuvent gérer les paramètres des applications GitHub dans une organisation. Pour permettre à d’autres utilisateurs de modifier les paramètres de développeur des applications GitHub appartenant à l’organisation, un propriétaire peut leur accorder des autorisations de gestionnaire d’applications GitHub. Les gestionnaires d’applications GitHub ne peuvent pas gérer les applications tierces. Pour plus d’informations sur l’ajout et la suppression de gestionnaires d’applications GitHub dans votre organisation, consultez « Gestionnaires d’applications GitHub ».

GitHub Apps sont des applications qui nécessitent un hébergement. Pour des instructions pas à pas couvrant les serveurs et l’hébergement, consultez « Création de votre première application GitHub App. »

Pour améliorer votre workflow, vous pouvez créer GitHub App qui contient plusieurs scripts ou une application entière, puis connecter cette application à de nombreux autres outils. Par exemple, vous pouvez connecter GitHub Apps à GitHub, Slack, d’autres applications internes que vous utilisez, des programmes de messagerie ou d’autres API.

Gardez ces idées à l’esprit lors de la création de GitHub Apps :

  • GitHub App doit effectuer des actions indépendamment d’un utilisateur (sauf si l’application utilise un jeton user-to-server). Pour sécuriser davantage les jetons d’accès utilisateur à serveur, vous pouvez utiliser des jetons d’accès qui expirent au bout de 8 heures ainsi qu’un jeton d’actualisation qui peut être échangé contre un nouveau jeton d’accès. Pour plus d’informations, consultez « Actualisation des jetons d’accès utilisateur à serveur ».

  • Assurez-vous que GitHub App s’intègre à des référentiels spécifiques.

  • GitHub App doit se connecter à un compte personnel ou à une organisation.

  • Ne vous attendez pas à ce que GitHub App soit en mesure de connaître et de réaliser tout ce qu’un utilisateur peut faire.

  • N’utilisez pas GitHub App si vous avez uniquement besoin d’un service « Se connecter avec GitHub ». Toutefois, GitHub App peut utiliser un flux d’identification utilisateur pour connecter les utilisateurs et effectuer d’autres opérations.

  • Ne générez pas GitHub App si vous souhaitez uniquement agir en tant qu’utilisateur GitHub et effectuer les mêmes opérations qu’un utilisateur.

Pour commencer à développer GitHub Apps, commencez par « Création de GitHub App. »

À propos de OAuth Apps

OAuth2 est un protocole qui permet aux applications externes de demander l’autorisation pour des détails privés du compte GitHub d’un utilisateur sans accéder à son mot de passe. Il est préférable à l’authentification de base, car les jetons peuvent être limités à des types de données spécifiques et peuvent être révoqués par les utilisateurs à tout moment.

Avertissement : La révocation de toutes les autorisations d’une OAuth App supprime toutes les clés SSH générées au nom de l’utilisateur par l’application, y compris les clés de déploiement.

OAuth App utilise GitHub comme fournisseur d’identité pour s’authentifier en tant qu’utilisateur qui autorise l’accès à l’application. Cela signifie que lorsqu’un utilisateur attribue un accès OAuth App, il autorise l’accès à tous les référentiels dans son compte, ainsi qu’aux organisations auxquelles il appartient où l’accès tiers n’est pas bloqué.

La création de OAuth App est une option judicieuse si vous créez des processus plus complexes que ceux traités par un simple script. Notez que les applications OAuth Apps nécessitent un hébergement.

Gardez ces idées à l’esprit lors de la création de OAuth Apps :

  • OAuth App doivent toujours agir comme l’utilisateur GitHub authentifié pour tout GitHub (par exemple quand ils fournissent des notifications utilisateur).
  • OAuth App peut être utilisé en tant que fournisseur d’identité en activant une « Connexion avec GitHub » pour l’utilisateur authentifié.
  • Ne générez pas de OAuth App si vous souhaitez que votre application agisse sur un référentiel unique. Dans l’étendue OAuth repo, OAuth Apps peut agir sur tous les référentiels d’utilisateurs authentifiés.
  • Ne créez pas de OAuth App pour servir d’application pour votre équipe ou votre entreprise. Les OAuth Apps s’authentifient en tant qu’utilisateur unique. Par conséquent, si une personne crée OAuth App pour une entreprise, puis quitte l’entreprise, aucun autre utilisateur n’y a accès.

Pour plus d’informations sur OAuth Apps, consultez « Création de OAuth App » et « Inscription de votre application. »

Personal access tokens

Un personal access token est une chaîne de caractères qui fonctionne de la même façon qu’un jeton OAuth dans lequel vous pouvez spécifier ses autorisations via des étendues. Un personal access token est également similaire à un mot de passe, sauf que vous pouvez en avoir plusieurs et que vous pouvez révoquer l’accès à chacun d’eux à tout moment.

Vous pouvez par exemple activer un personal access token pour écrire dans vos dépôts. Si vous exécutez ensuite une commande curl ou que vous écrivez un script qui crée un problème dans votre dépôt, vous allez passer le personal access token pour vous authentifier. Vous pouvez stocker le personal access token en tant que variable d’environnement pour éviter de devoir le taper chaque fois que vous l’utilisez.

Gardez ces idées à l’esprit lors de l’utilisation de personal access tokens :

  • N’oubliez pas d’utiliser ce jeton pour vous représenter uniquement.
  • Vous pouvez effectuer des demandes curl ponctuelles.
  • Vous pouvez exécuter des scripts personnels.
  • Ne configurez pas de script pour votre équipe ou votre entreprise entière.
  • Ne configurez pas de compte personnel partagé pour agir en tant qu’utilisateur de bot.
  • Accordez à votre jeton les privilèges minimaux dont il a besoin.
  • Définissez un délai d’expiration pour vos personal access tokens, afin de sécuriser vos informations.

Détermination de l’intégration à générer

Avant de commencer à créer des intégrations, vous devez déterminer le meilleur moyen d’accéder, d’authentifier et d’interagir avec les API GitHub AE. L’image suivante montre des questions à vous poser quand vous décidez d’utiliser des personal access tokens, des GitHub Apps ou des OAuth Apps pour votre intégration.

Présentation du flux d’interrogation des applications

Prenez en compte les questions suivantes concernant le comportement de votre intégration et les accès autorisés :

  • Mon intégration agira-t-elle uniquement comme moi ou agira-t-elle comme une application ?
  • Doit-elle agir indépendamment de moi, comme une entité propre ?
  • Les autorisations d’accès sont-elles identiques aux miennes ou dois-je limiter l’accès ?
  • S’agit-il d’une intégration simple ou complexe ? Par exemple, les personal access tokens sont adaptés aux commandes curl et aux scripts simples, tandis qu’une OAuth App peut gérer des scripts plus complexes.

Demande de support

Pour consulter les questions, les rapports de bogues et les discussions concernant GitHub Apps, OAuth Apps et le développement d’API, explorez les Discussions sur les API et les intégrations dans la communauté GitHub. Les discussions sont modérées et gérées par le personnel GitHub. Toutefois, il n’est pas garanti que les questions publiées sur le forum reçoivent une réponse du personnel GitHub.

Envisagez de contacter le Support GitHub directement à l’aide du formulaire de contact pour :

  • réponse garantie du personnel de GitHub AE
  • les demandes de soutien impliquant des données sensibles ou des préoccupations d’ordre privé
  • demandes de fonctionnalités
  • commentaires sur les produits GitHub AE