AWS CodeConnections로 Git 리포지토리에 연결하기

AWS CodeConnections로 Git 리포지토리에 연결하기

AWS CodeConnections는 AWS 서비스를 타사 소스 코드 리포지토리에 안전하게 연결할 수 있는 방법을 제공해요. AWS CodeConnections는 GitHub, GitLab, Bitbucket 및 기타 제공자를 지원합니다. 자세히 알아보고 시작하려면 연결 작업을 참고하세요.

출처: 문서

본문

Argo CD와 함께 AWS CodeConnections 사용하기

Argo CD용 EKS 기능을 사용할 때 AWS CodeConnections를 선택해 장기 자격 증명이나 개인 액세스 토큰을 관리하지 않고도 Git 리포지토리에 안전하게 인증할 수 있어요. AWS CodeConnections는 OAuth 인증 흐름을 처리하고 Git 제공자와의 연결을 관리하여, 타사 Git 제공자에 저장된 GitOps 리포지토리와 애플리케이션 매니페스트에 액세스하는 안전하고 관리 가능한 방법을 제공합니다.

사전 조건

  • Argo CD 기능이 생성된 Amazon EKS 클러스터

  • Git 제공자에 대해 AWS CodeConnections에서 생성된 연결

  • Argo CD가 연결을 사용할 수 있도록 구성된 IAM 권한

Argo CD 리포지토리 액세스를 위한 CodeConnections 구성

CodeConnections 콘솔에서 연결을 생성합니다.

  1. CodeConnections 콘솔을 엽니다.
  2. 연결 생성(Create connection)을 선택합니다.
  3. 제공자(GitHub, GitLab 또는 Bitbucket)를 선택하고 인증 흐름을 따릅니다.
  4. Argo CD 구성에서 사용할 연결 ARN을 기록해 둡니다.

Argo CD 기능 역할이 리소스 기반 정책으로 연결을 사용할 권한이 있는지 확인합니다.

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "codeconnections:UseConnection",
        "codeconnections:GetConnection"
      ],
      "Resource": "arn:aws:codeconnections:region:account-id:connection/connection-id"
    }
  ]
}

리포지토리를 추가할 때 CodeConnections 리소스 엔드포인트를 리포지토리 URL로 사용하도록 Argo CD를 구성하면, Argo CD 기능이 장기 자격 증명 없이도 연결을 사용해 Git 제공자에 인증합니다.

Argo CD와 함께 CodeConnections를 사용할 때의 고려 사항

EKS Argo CD 기능과 함께 AWS CodeConnections를 사용할 때 다음 사항에 유의하세요.

  • CodeConnections 연결은 EKS 클러스터와 동일한 AWS 리전에 있어야 합니다.
  • Argo CD 기능 역할에는 codeconnections:UseConnection 및 codeconnections:GetConnection 권한이 있어야 합니다.
  • CodeConnections는 OAuth 흐름과 자격 증명 수명 주기를 자동으로 관리해요.

Argo CD로 리포지토리 액세스를 구성하는 방법에 대한 자세한 내용은 리포지토리 액세스 구성을 참고하세요.

더 알아보기 (Learn more)