Utilisation d’une passerelle API avec OIDC
Avec GitHub Actions, vous pouvez utiliser des jetons OIDC (OpenID Connect) pour authentifier votre workflow hors de GitHub Actions. Par exemple, vous pouvez exécuter une passerelle d’API sur la périphérie de votre réseau privé qui authentifie les requêtes entrantes avec le jeton OIDC, puis effectue des demandes d’API pour le compte de votre flux de travail dans votre réseau privé.
Le diagramme suivant donne une vue d’ensemble de l’architecture de cette solution :

Il est important que vous vérifiiez non seulement que le jeton OIDC provient, mais qu’il provient GitHub Actionsspécifiquement de vos flux de travail attendus, afin que d’autres GitHub Actions utilisateurs ne puissent pas accéder aux services dans votre réseau privé. Vous pouvez utiliser les revendications OIDC pour établir ces conditions. Pour plus d’informations, consultez « Informations de référence sur OpenID Connect ».
Le principaux inconvénients de cette approche sont que vous devez implémenter la passerelle API pour émettre des requêtes en votre nom et que vous devez exécuter la passerelle en périphérie de votre réseau.
Les avantages suivants s’appliquent.
- Vous n’avez pas besoin de configurer de pare-feu, ni de modifier le routage de votre réseau privé.
- La passerelle API est sans état et s'étend horizontalement pour assurer une haute disponibilité et un débit élevé.
Pour plus d’informations, consultez une implémentation de référence d’une passerelle API dans le référentiel github/actions-oidc-gateway. Cette implémentation nécessite une personnalisation pour votre cas d’usage et n’est pas prête à être exécutée as-is. Pour plus d’informations, consultez « OpenID Connect ».