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 API en périphérie de votre réseau privé, qui authentifie les requêtes entrantes à l’aide du jeton OIDC, puis émet des requêtes d’API au nom de votre workflow dans votre réseau privé.
Le diagramme suivant donne une vue d’ensemble de l’architecture de cette solution :
Il est important de vérifier le fait que le jeton OIDC provient de GitHub Actions, mais également qu’il provient spécifiquement des workflows attendus. Ainsi, les autres utilisateurs GitHub Actions ne peuvent pas accéder aux services de votre réseau privé. Vous pouvez utiliser des revendications OIDC pour créer ces conditions. Pour plus d’informations, consultez « À propos du renforcement de la sécurité avec 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 fait l’objet d’une mise à l’échelle horizontale pour prendre en charge la 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’utilisation et n’est pas prête à l’emploi en l’état. Pour plus d’informations, consultez « À propos du renforcement de la sécurité avec OpenID Connect ».