Verwenden eines API-Gateways mit OIDC
Mit GitHub Actions kannst du OIDC-Token (OpenID Connect) verwenden, um deine Workflow außerhalb von GitHub Actions zu authentifizieren. Sie können beispielsweise ein API-Gateway am Edge Ihres privaten Netzwerks ausführen, das eingehende Anforderungen mit dem OIDC-Token authentifiziert und dann API-Anforderungen im Auftrag Ihres Workflows in deinem privaten Netzwerk ausführt.
Im folgenden Diagramm finden Sie einen Überblick über die Architektur dieser Lösung:
Es ist wichtig, nicht nur sicherzustellen, dass das OIDC-Token aus GitHub Actions stammt, sondern speziell aus Ihren erwarteten Workflows, sodass andere GitHub Actions-Benutzer nicht auf Dienste in Ihrem privaten Netzwerk zugreifen können. Sie können OIDC-Ansprüche verwenden, um diese Bedingungen zu erstellen. Weitere Informationen finden Sie unter Informationen zur Sicherheitshärtung mit OpenID Connect.
Die Hauptnachteile dieses Ansatzes sind, dass Sie das API-Gateway implementieren müssen, damit Anforderungen in Ihrem Auftrag ausgeführt werden, und Sie das Gateway am Rand Ihres Netzwerks ausführen müssen.
Die folgenden Vorteile gelten.
- Sie müssen keine Firewalls konfigurieren oder das Routing Ihres privaten Netzwerks ändern.
- Das API-Gateway ist zustandslos und wird daher für Hochverfügbarkeit und hohen Durchsatz horizontal skaliert.
Weitere Informationen finden Sie in einer Referenzimplementierung eines API-Gateways im Github/actions-oidc-gateway-Repository. Diese Implementierung erfordert Anpassungen für Ihren Anwendungsfall und ist nicht bereit für die Ausführung. Weitere Informationen finden Sie unter Informationen zur Sicherheitshärtung mit OpenID Connect.