AWS CodeCommit 리포지토리 공유 - AWS CodeCommit

AWS CodeCommit 는 더 이상 신규 고객이 사용할 수 없습니다. AWS CodeCommit 의 기존 고객은 정상적으로 서비스를 계속 이용할 수 있습니다. 자세히 알아보기

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

AWS CodeCommit 리포지토리 공유

CodeCommit 리포지토리를 생성한 후 다른 사용자와 공유할 수 있습니다. 먼저, 액세스 시 페더레이션 액세스, 임시 자격 증명 또는 IAM Identity Center와 같은 웹 자격 증명 공급자를 사용할지 CodeCommit또는 IAM 사용자와 Git 자격 증명 또는 SSH 키 페어를 사용할지 결정합니다. 전자를 사용하는 경우에는 자격 증명 공급자에 대한 사용자, 엑세스, 권한 등을 설정한 다음 사용자가 git-remote-codecommit을 사용하는 데 필요한 지침을 제공해야 합니다. 자세한 내용은 HTTPS AWS CodeCommit 를 사용하여에 대한 git-remote-codecommit 연결 설정 단계교체 자격 증명을 사용하여 AWS CodeCommit 리포지토리에 연결 단원을 참조하세요.

페더레이션 액세스 또는 자격 증명 공급자에는 Git 자격 증명 또는 SSH 키 페어를 사용할 수 없지만, 많은 사용자가 이러한 자격 증명을 가장 잘 IDEs 사용합니다. 이 경우 Git 클라이언트 또는를 사용하여 리포지토리에 연결할 때 사용자에게 추천할 프로토콜(HTTPS 또는 SSH)IDE을 결정합니다. 그런 다음 URL 및 연결 정보를 리포지토리를 공유할 사용자에게 전송합니다. 보안 요구 사항에 따라 리포지토리를 공유하려면 IAM 그룹을 생성하거나, 해당 그룹에 관리형 정책을 적용하거나, IAM 정책을 편집하여 액세스를 구체화하거나, IAM 역할을 생성하고 사용해야 할 수도 있습니다.

참고

사용자에게 리포지토리에 대한 콘솔 액세스 권한을 부여한 후 사용자는 Git 클라이언트 또는 기타 연결을 설정할 필요 없이 콘솔에서 직접 파일을 추가하거나 편집할 수 있습니다. 자세한 내용은 AWS CodeCommit 리포지토리에 파일 생성 또는 추가AWS CodeCommit 리포지토리에서 파일의 콘텐츠 편집 단원을 참조하세요.

이 지침들은 사용자가 설정 리포지토리 생성의 단계를 이미 완료했다는 가정하에 작성되었습니다.

참고

사용량에 따라, 리포지토리를 생성하거나 액세스하는 것에 대한 비용이 부과될 수 있습니다. 자세한 내용은 CodeCommit 제품 정보 페이지의 요금을 참조하세요.

사용자들과 공유할 접속 프로토콜 선택

에서 리포지토리를 생성하면 두 개의 엔드포인트 CodeCommit가 생성됩니다. 하나는 HTTPS 연결용이고 다른 하나는 SSH 연결용입니다. 둘 다 네트워크를 통한 안전한 접속이 가능합니다. 사용자는 둘 중 한 가지 프로토콜을 사용할 수 있습니다. 해당 사용자들에게 어떤 프로토콜을 권장하든지 상관없이 두 엔드포인트 모두 활성화된 상태를 유지합니다.

HTTPS 연결에는 다음 중 하나가 필요합니다.

  • IAM 사용자가 IAM에서 직접 생성할 수 있는 Git 자격 증명. Git 보안 인증 정보는 리포지토리 사용자들이 설정하여 사용하기 가장 쉬운 방법입니다.

  • 리포지토리 사용자가 자격 증명 프로필에서 구성해야 하는 수임할 AWS 액세스 키 또는 역할입니다. git-remote-codecommit(권장)를 구성하거나 AWS CLI에 포함된 보안 인증 도우미를 구성할 수 있습니다. 이는 루트 계정 또는 페더레이션형 사용자에 사용할 수 있는 유일한 방법입니다.

SSH 연결에는 사용자가 다음을 수행해야 합니다.

  • 퍼블릭-프라이빗 키 페어를 생성합니다.

  • 퍼블릭 키를 저장합니다.

  • 퍼블릭 키를 IAM 사용자와 연결합니다.

  • 로컬 컴퓨터에서 알려진 호스트 파일을 구성합니다.

  • 로컬 컴퓨터에서 config 파일을 생성하고 유지합니다.

이는 더 복잡한 구성 프로세스이므로에 연결할 HTTPS 및 Git 자격 증명을 선택하는 것이 좋습니다 CodeCommit.

HTTPS, SSH, Git, git-remote-codecommit, 원격 리포지토리에 대한 자세한 내용은 설정 , 섹션을 참조교체 자격 증명을 사용하여 AWS CodeCommit 리포지토리에 연결하거나 Git 설명서를 참조하세요.

참고

Git은 다양한 연결 프로토콜을 지원하지만 CodeCommit 는 로컬 프로토콜 또는 일반와 같은 보안되지 않은 프로토콜과의 연결을 지원하지 않습니다HTTP.

리포지토리에 대한 IAM 정책 생성

AWS 는 IAM 용에 세 가지 관리형 정책을 제공합니다 CodeCommit. 이 정책은 편집할 수 없으며 Amazon Web Services 계정에 연결된 모든 리포지토리에 적용됩니다. 그러나 이러한 정책을 템플릿으로 사용함으로써 자신이 공유하고 싶은 리포지토리에만 적용되는 고유한 사용자 지정 관리형 정책을 생성할 수 있습니다. 이렇게 생성한 사용자 지정 관리형 정책은 자신이 공유하고 싶은 리포지토리에 한해 적용할 수 있습니다. 자세한 내용은 관리형 정책IAM 사용자 및 그룹을 참조하십시오.

작은 정보

리포지토리에 대한 액세스를 더 미세하게 관리하기 위해 고객 관리형 정책을 하나 이상 생성하여 이 정책을 여러 IAM 사용자 및 그룹에 적용할 수 있습니다.

관리형 정책 내용 검토 및 정책을 사용하여 권한 생성 및 적용에 대한 자세한 내용은 AWS CodeCommit에 대한 인증 및 액세스 제어 단원을 참조하세요.

리포지토리를 위한 고객 관리형 정책 만들기
  1. 에 로그인 AWS Management Console 하고에서 IAM 콘솔을 엽니다https://console.aws.amazon.com/iam/.

  2. 대시보드 탐색 영역에서 정책을 선택한 다음 정책 생성을 선택합니다.

  3. 정책 생성 페이지에서 관리형 정책 가져오기를 선택합니다.

  4. 관리형 정책 가져오기 페이지의 필터 정책AWSCodeCommitPowerUser를 입력합니다. 정책 이름 옆에 있는 버튼을 선택한 다음 가져오기를 선택합니다.

  5. 정책 생성 페이지에서를 선택합니다JSON. CodeCommit 작업에 대한 Resource 줄의 “*” 부분을 다음과 같이 CodeCommit 리포지토리의 Amazon 리소스 이름(ARN)으로 바꿉니다.

    "Resource": [ "arn:aws:codecommit:us-east-2:111111111111:MyDemoRepo" ]
    작은 정보

    CodeCommit 리포지토리ARN의를 찾으려면 CodeCommit 콘솔로 이동하여 목록에서 리포지토리 이름을 선택한 다음 설정을 선택합니다. 자세한 내용은 리포지토리 세부 정보 보기 단원을 참조하십시오.

    이 정책을 둘 이상의 리포지토리에 적용하려면 각 리포지토리를 로 지정하여 리소스로 추가합니다ARN. 다음과 같이 각 리소스 명령문 사이에 쉼표를 넣습니다.

    "Resource": [ "arn:aws:codecommit:us-east-2:111111111111:MyDemoRepo", "arn:aws:codecommit:us-east-2:111111111111:MyOtherDemoRepo" ]

    편집이 완료되면 정책 검토를 선택합니다.

  6. 정책 검토 페이지의 이름에 정책의 새 이름(예: AWSCodeCommitPowerUser-MyDemoRepo)을 입력합니다. 선택 사항으로 이 정책에 대한 설명을 제공할 수 있습니다.

  7. 정책 생성(Create Policy)을 선택합니다.

리포지토리 사용자를 위한 IAM 그룹 생성

자신의 리포지토리에 대한 액세스를 관리하려면 그 사용자들에 대한 IAM 그룹을 생성하여 이 그룹에 IAM 사용자를 추가한 후 이전 단계에서 생성한 고객 관리형 정책을 연결합니다. 또는 연결된 고객 관리형 정책을 사용하여 역할을 생성하고, 사용자에게 해당 역할을 수임하도록 할 수 있습니다.

를 사용하는 경우 사용자가 SSH 퍼블릭 키를 업로드하고 연결하는 데 사용하는 IAM 사용자와 연결할 수 있도록 허용하는 관리형 정책인 다른 IAM 관리형 정책을 IAMUserSSHKeys 그룹에 연결SSH해야 합니다 CodeCommit.

  1. 에 로그인 AWS Management Console 하고에서 IAM 콘솔을 엽니다https://console.aws.amazon.com/iam/.

  2. 대시보드 탐색 영역에서 그룹을 선택한 다음 새 그룹 생성을 선택합니다.

  3. 그룹 이름 설정 페이지의 그룹 이름에서 그룹의 이름(예: MyDemoRepoGroup)을 입력한 다음 다음 단계를 선택합니다. 그룹 이름에는 리포지토리 이름을 포함시키는 것이 좋습니다.

    참고

    그룹 이름은 Amazon Web Services 계정 전체에서 고유해야 합니다.

  4. 이전 섹션에서 생성한 고객 관리형 정책 옆의 상자를 선택합니다(예: AWSCodeCommitPowerUser-MyDemoRepo).

  5. 검토 페이지에서 그룹 생성을 선택합니다.는 지정된 정책이 이미 연결된이 그룹을 IAM 생성합니다. 해당 그룹이 Amazon Web Services 계정에 연결된 그룹 목록에 나타납니다.

  6. 목록에서 그룹을 선택합니다.

  7. 그룹 요약 페이지에서 사용자 탭을 선택한 다음 그룹에 사용자 추가를 선택합니다. Amazon Web Services 계정과 연결된 모든 사용자를 보여주는 목록에서 CodeCommit 리포지토리에 대한 액세스를 허용할 사용자 옆의 상자를 선택한 다음 사용자 추가를 선택합니다.

    작은 정보

    검색 상자를 사용하여 이름별로 사용자를 빠르게 찾을 수 있습니다.

  8. 사용자를 추가했으면 IAM 콘솔을 닫습니다.

해당 사용자들과 접속 정보 공유

  1. https://console.aws.amazon.com/codesuite/codecommit/home에서 CodeCommit 콘솔을 엽니다.

  2. 리전 선택기에서 리포지토리가 생성된 AWS 리전 를 선택합니다. 리포지토리는에 고유합니다 AWS 리전. 자세한 내용은 리전 및 Git 연결 엔드포인트 단원을 참조하십시오.

  3. 리포지토리 페이지에서 공유할 리포지토리를 선택합니다.

  4. 복제URL에서 사용자가 사용할 프로토콜을 선택합니다. 이렇게 하면 연결 프로토콜의 복제본이 복사URL됩니다.

  5. 설치, 프로필 AWS CLI구성 또는 Git 설치와 같은 다른 지침과 URL 함께 사용자에게 복제본을 보냅니다. 연결 프로토콜에 대한 구성 정보를 포함해야 합니다(예: HTTPS).

다음 예제 이메일은 미국 동부(오하이오)(us-east-2) 리전에서 HTTPS 연결 프로토콜 및 Git 자격 증명을 사용하여 MyDemoRepo 리포지토리에 연결하는 사용자를 위한 정보를 제공합니다. 이 이메일은 사용자가 이미 Git을 설치했고 Git 사용에 익숙하다는 가정 하에 작성되었습니다.

I've created a CodeCommit repository for us to use while working on our project. The name of the repository is MyDemoRepo, and it is in the US East (Ohio) (us-east-2) region. Here's what you need to do in order to get started using it: 1. Make sure that your version of Git on your local computer is 1.7.9 or later. 2. Generate Git credentials for your IAM user by signing into the IAM console here: https://console.aws.amazon.com/iam/. Switch to the Security credentials tab for your IAM user and choose the Generate button in HTTPS Git credentials for CodeCommit. Make sure to save your credentials in a secure location! 3. Switch to a directory of your choice and clone the CodeCommit repository to your local machine by running the following command: git clone https://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo my-demo-repo 4. When prompted for user name and password, use the Git credentials you just saved. That's it! If you'd like to learn more about using CodeCommit, you can start with the tutorial here.

설정 에서 완전한 설정 관련 지침을 볼 수 있습니다.