OIDC에서 API 게이트웨이 사용하기
GitHub Actions를 사용하면 OIDC(OpenID Connect) 토큰을 사용하여 GitHub Actions 외부에서 워크플로를 인증할 수 있습니다.예를 들어 OIDC 토큰을 사용하여 들어오는 요청을 인증한 다음, 개인 네트워크의 워크플로를 대신하여 API 요청을 만드는 API 게이트웨이를 개인 네트워크 가장자리에서 실행할 수 있습니다.
다음 다이어그램에서는 이 솔루션의 아키텍처에 대한 개요를 제공합니다.
OIDC 토큰이 GitHub Actions에서 온 것뿐만 아니라, 다른 GitHub Actions 사용자가 개인 네트워크의 서비스에 액세스할 수 없도록 예상되는 워크플로에서 왔음을 확인하는 것이 중요합니다. OIDC 클레임을 사용하여 이러한 조건을 만들 수 있습니다. 자세한 내용은 "OpenID Connect를 사용한 보안 강화 정보"을 참조하세요.
이 방법의 주요 단점은 API 게이트웨이를 구현하여 사용자 대신 요청하고 네트워크 가장자리에서 실행해야 한다는 것입니다.
다음과 같은 이점이 적용됩니다.
- 방화벽을 구성하거나 개인 네트워크의 라우팅을 수정할 필요가 없습니다.
- API 게이트웨이에는 상태가 없으므로 고가용성 및 높은 처리량을 위해 수평으로 스케일링됩니다.
자세한 내용은 github/actions-oidc-gateway 리포포지토리의 API 게이트웨이 구현 참고자료를 참조하세요. 이 구현은 사용 사례에 대한 사용자 지정을 필요로 하며, 그대로 실행할 수 있는 상태가 아닙니다.) 자세한 내용은 "OpenID Connect를 사용한 보안 강화 정보"을 참조하세요.