AWS에서 임시 자격 증명을 검색하기 위한 OpenID Connect 구성
AWS에서 임시 자격 증명을 검색하기 위한 OpenID Connect 구성에 대해 설명합니다.
Warning CI_JOB_JWT_V2 는 GitLab 15.9에서 더 이상 사용되지 않음 으로 표시되었으며 GitLab 17.0에서 제거될 예정입니다. 대신 ID 토큰 을 사용하세요. 이 튜토리얼에서는 JSON 웹 토큰(JWT)과 함께 GitLab CI/CD 작업을 사용하여 시크릿을 저장하지 않고 AWS에서 임시 자격 증명을 검색하는 방법을 보여줍니다. 이를 위해 GitLab과 AWS 간의 ID 페더레이션을 위한 OpenID Connect(OIDC)를 구성해야 합니다. OIDC를 사용하여 GitLab을 통합하기 위한 배경 및 요구 사항은 클라우드 서비스에 연결 을 참조하세요. 이 튜토리얼을 완료하려면: ID 공급자 추가 역할 및 신뢰 구성 임시 자격 증명 검색 ID 공급자 추가 # 다음 지침 에 따라 AWS에서 GitLab을 IAM OIDC 공급자로 생성합니다. 다음 정보를 포함합니다: 공급자 URL : https://gitlab.com 또는 http://gitlab.example.com 과 같은 GitLab 인스턴스 주소. 이 주소는 공개적으로 접근 가능해야 합니다. 공개적으로 접근 불가능한 경우, 공개되지 않은 GitLab 인스턴스 구성 방법을 참조하세요. 대상 : 요청된 보안 토큰과 함께 사용하려는 대상 서비스의 논리적 이름. AWS OIDC 통합에서, 이는 일반적으로 IAM OIDC ID 공급자에 구성된 대상 값과 일치합니다(종종 sts.amazonaws.com 또는 GitLab 인스턴스 URL). 이 값은 토큰이 특정 ID 공급자를 위한 것임을 확인하기 위해 AWS에서 검증됩니다. [!note] https://gitlab.com 또는 GitLab 인스턴스 URL은 AWS ID 공급자 참조가 일치하는 경우 작동할 수 있지만, 의미상으로는 잘못된 것입니다. 대상은 토큰을 검증하고 수락하는 서비스를 나타내야 합니다. 역할 및 신뢰 구성 # ID 공급자를 생성한 후, GitLab 리소스에 대한 접근을 제한하는 조건과 함께 웹 ID 역할 을 구성합니다. 임시 자격 증명은 AWS Security Token Service 를 사용하여 얻으므로, Action 을 sts:AssumeRoleWithWebIdentity 로 설정합니다. 특정 그룹, 프로젝트, 브랜치 또는 태그로 권한 부여를 제한하기 위해 역할에 대한 사용자 지정 신뢰 정책 을 만들 수 있습니다. 지원되는 필터링 유형의 전체 목록은 클라우드 서비스에 연결 을 참조하세요. { "Version" : "2012-10-17" , "Statement" : [ { "Effect" : "Allow" , "Principal" : { "Federated" : "arn:aws:iam::AWS_ACCOUNT:oidc-provider/gitlab.example.com" } , "Action" : "sts:AssumeRoleWithWebIdentity" , "Condition" : { "StringEquals" : { "gitlab.example.com:sub" : "project_path:mygroup
