AWS CodeCommit 는 더 이상 신규 고객이 사용할 수 없습니다. AWS CodeCommit 의 기존 고객은 정상적으로 서비스를 계속 이용할 수 있습니다. 자세히 알아보기
기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
교체 자격 증명을 사용하여 AWS CodeCommit 리포지토리에 연결
사용자에게 IAM 사용자를 구성하거나 액세스 키 및 보안 키를 사용하지 않고도 AWS CodeCommit 리포지토리에 대한 액세스 권한을 부여할 수 있습니다. 페더레이션 보안 인증 정보 권한을 부여하려면 역할을 생성하고 해당 역할의 권한을 정의합니다. 페더레이션 자격 증명이 인증되면 역할이 연결되고 역할에 정의된 권한이 부여됩니다. 페더레이션 역할에 대한 자세한 내용은 IAM 사용 설명서의 타사 자격 증명 공급자(페더레이션)에 대한 역할 생성을 참조하세요. IAM Identity Center를 사용하는 경우 권한 세트를 구성합니다. 인증 후 자격 증명이 액세스할 수 있는 대상을 제어하기 위해 IAM Identity Center는 권한 세트를 IAM의 역할과 상호 연관시킵니다. 권한 집합에 대한 자세한 내용은 AWS IAM Identity Center 사용 설명서의 권한 집합을 참조하세요. 또한 IAM 사용자가 별도의 Amazon Web Services 계정(계정 간 액세스라고 하는 기법)에서 CodeCommit 리포지토리에 액세스할 수 있도록 역할 기반 액세스를 구성할 수 있습니다. 리포지토리에 대한 크로스 계정 액세스를 구성하는 연습은 역할을 사용하여 AWS CodeCommit 리포지토리에 대한 교차 계정 액세스 구성 단원을 참조하세요.
다음과 같은 방법으로 인증하려는(또는 인증해야 하는) 사용자에 대해 액세스를 구성할 수 있습니다.
-
보안 어설션 마크업 언어(SAML)
-
다중 인증(MFA)
-
연동
-
Login with Amazon
-
Amazon Cognito
-
Facebook
-
Google
-
OpenID Connect(OIDC) 호환 자격 증명 공급자
참고
다음 정보는 git-remote-codecommit 또는 AWS CLI 보안 인증 도우미를 사용하여 CodeCommit 리포지토리에 연결하는 경우에만 적용됩니다. 임시 또는 페더레이션 액세스에 권장되는 접근 방식은를 설정하는 것이므로 git-remote-codecommit이 주제 CodeCommit 에서는 해당 유틸리티를 사용하는 예제를 제공합니다. 자세한 내용은 HTTPS AWS CodeCommit 를 사용하여에 대한 git-remote-codecommit 연결 설정 단계 단원을 참조하십시오.
SSH 또는 Git 보안 인증 정보와 HTTPS를 사용하여 교대 또는 임시 액세스 보안 인증 정보로 CodeCommit 리포지토리에 연결할 수 없습니다.
다음 요구 사항이 모두 충족될 경우에는 이 단계들을 완료할 필요가 없습니다.
-
Amazon EC2 인스턴스에 로그인했습니다.
-
자격 AWS CLI 증명 도우미와 함께 Git 및 HTTPS를 사용하여 Amazon EC2 인스턴스에서 CodeCommit 리포지토리로 연결합니다.
-
Amazon EC2 인스턴스에는 AWS CLI 보안 인증 도우미를 사용하여 Linux, macOS, Unix에서 HTTPS 연결 또는에 설명된 액세스 권한이 포함된 연결된 IAM 인스턴스 프로파일이 있습니다AWS CLI 보안 인증 도우미를 사용하여 Windows에서 HTTPS 연결.
-
AWS CLI 보안 인증 도우미를 사용하여 Linux, macOS, Unix에서 HTTPS 연결 또는에 설명된 대로 Amazon EC2 인스턴스에 Git 자격 증명 도우미를 설치하고 구성했습니다AWS CLI 보안 인증 도우미를 사용하여 Windows에서 HTTPS 연결.
이전 요구 사항을 충족하는 Amazon EC2 인스턴스는 사용자를 대신하여 임시 액세스 자격 증명을 CodeCommit 에 전달하도록 이미 설정되어 있습니다.
참고
Amazon EC2 인스턴스git-remote-codecommit에서를 구성하고 사용할 수 있습니다.
사용자에게 CodeCommit 리포지토리에 대한 임시 액세스 권한을 부여하려면 다음 단계를 완료하세요.
1단계: 필수 구성 요소 완성
설정 단계를 완료하여 사용자에게 교체 자격 증명을 사용하여 the CodeCommit 리포지토리에 대한 액세스 권한을 제공합니다.
-
교차 계정 액세스에 대한 자세한 내용은 연습: IAM 역할 및를 사용하여 Amazon Web Services 계정 간 액세스 위임을 참조하세요역할을 사용하여 AWS CodeCommit 리포지토리에 대한 교차 계정 액세스 구성.
-
SAML 및 페더레이션의 경우 조직의 인증 시스템을 사용하여 AWS 리소스 및 AboutWord 2.0 기반 페더레이션에 대한 액세스 권한 부여를 참조하세요. AWS STS SAML
-
MFA의 경우 에서 다중 인증(MFA) 디바이스 사용 AWS 및 임시 보안 자격 증명 생성을 참조하여 IAM 사용자에 대한 액세스를 활성화합니다.
-
Amazon, Amazon Cognito, Facebook, Google 또는 OIDC 호환 자격 증명 공급자를 사용한 로그인은 AWS STS Web Identity Federation 정보를 참조하세요.
의 정보를 사용하여 사용자에게 부여할 CodeCommit 권한을 AWS CodeCommit에 대한 인증 및 액세스 제어 지정합니다.
2단계: 역할 이름 또는 액세스 보안 인증 정보 가져오기
사용자가 역할을 수임하여 리포지토리에 액세스하도록 하려면 사용자에게 해당 역할의 Amazon 리소스 이름(ARN)을 제공합니다. 그렇지 않으면 액세스 설정 방법에 따라 사용자는 다음 방법 중 하나를 사용하여 교체 보안 인증 정보를 얻을 수 있습니다.
-
교차 계정 액세스를 위해 the AWS CLI assume-role 명령을 호출하거나 AWS STS AssumeRole API를 호출합니다.
-
SAML의 경우 AWS CLI assume-role-with-saml 명령 또는 AWS STS AssumeRoleWithSAMLWord API를 호출합니다.
-
페더레이션의 경우 the AWS CLI assume-role 또는 get-federation-token 명령 또는 AWS STS AssumeRole 또는 GetFederationToken APIs를 호출합니다.
-
MFA의 경우 AWS CLI get-session-token 명령 또는 AWS STS GetSessionToken API를 호출합니다.
-
Amazon, Amazon Cognito, Facebook, Google 또는 OIDC 호환 자격 증명 공급자로 로그인하려면 AWS CLI assume-role-with-web 자격 증명 명령 또는 AWS STS AssumeRoleWithWebIdentity API를 호출합니다.
3단계: git-remote-codecommit 설치 및 구성 AWS CLI
AWS CLI에서 git-remote-codecommit
-
설정 의 지침에 따라 AWS CLI를 설정합니다. aws configure 명령을 사용하여 하나 이상의 프로필을 구성합니다. 교체 자격 증명을 사용하여 CodeCommit 리포지토리에 연결할 때 사용할 명명된 프로파일을 생성하는 것이 좋습니다.
-
다음 방법 중 하나로 자격 증명을 사용자의 AWS CLI 이름이 지정된 프로필과 연결할 수 있습니다.
-
역할을 수임하여 CodeCommit에 액세스하는 경우 해당 역할을 수임하는 데 필요한 정보로 명명된 프로파일을 구성합니다. 예를 들어 라는 역할을 수임하려는 경우
CodeCommitAccess
Amazon Web Services 계정 111111111111에서 다른 AWS 리소스로 작업할 때 사용할 기본 프로파일과 해당 역할을 수임할 때 사용할 명명된 프로파일을 구성할 수 있습니다. 다음 명령은 라는 이름의 프로파일을 생성합니다.CodeAccess
라는 역할을 수임하는CodeCommitAccess
사용자 이름.Maria_Garcia
는 세션과 연결되며 기본 프로필은 AWS 보안 인증의 소스로 설정됩니다.aws configure set role_arn arn:aws:iam::111111111111:role/
CodeCommitAccess
--profileCodeAccess
aws configure set source_profile default --profileCodeAccess
aws configure set role_session_name "Maria_Garcia
" --profileCodeAccess
변경 사항을 확인하려면
~/.aws/config
파일(Linux용) 또는%UserProfile%.aws\config
파일(Windows용)을 수동으로 보거나 편집하고 명명된 프로필 아래의 정보를 검토합니다. 예를 들어 파일은 다음과 비슷할 것입니다.[default] region = us-east-1 output = json [profile CodeAccess] source_profile = default role_session_name = Maria_Garcia role_arn = arn:aws:iam::111111111111:role/
CodeCommitAccess
명명된 프로파일을 구성한 후 명명된 프로파일을 사용하여 git-remote-codecommit 유틸리티로 CodeCommit 리포지토리를 복제할 수 있습니다. 예를 들어 라는 리포지토리를 복제하려면
MyDemoRepo
:git clone codecommit://
CodeAccess
@MyDemoRepo
-
웹 자격 증명 페더레이션 및 OpenID Connect(OIDC)를 사용하는 경우 임시 자격 증명을 새로 고치기 위해 사용자를 대신하여 AWS Security Token Service (AWS STS)
AssumeRoleWithWebIdentity
API를 호출하는 명명된 프로파일을 구성합니다. aws configure set 명령을 사용하거나~/.aws/credentials
파일(Linux의 경우) 또는%UserProfile%.aws\credentials
파일(Windows의 경우)을 수동으로 편집하여 필요한 설정 값이 포함된 AWS CLI 명명된 프로파일을 추가합니다. 예를 들어,를 수임하는 프로파일을 생성하려면CodeCommitAccess
역할 및는 웹 ID 토큰 파일 ~/를 사용합니다.my-credentials
/my-token-file
:[
CodeCommitWebIdentity
] role_arn = arn:aws:iam::111111111111:role/CodeCommitAccess
web_identity_token_file=~/
role_session_name = Maria_Garciamy-credentials
/my-token-file
자세한 내용은 AWS Command Line Interface 사용 설명서의 구성 AWS Command Line Interface 및 IAM 역할 사용을 AWS CLI 참조하세요.
-
4단계: CodeCommit 리포지토리 액세스
사용자가의 지침에 따라 CodeCommit 리포지토리리포지토리에 연결에 연결했다고 가정하면 사용자는 git-remote-codecommit 및 Git에서 제공하는 확장 기능을 사용하여 git clone, 및를 호출git pushgit pull하고, 액세스 권한이 있는 CodeCommit 리포지토리를 복제, 푸시 및 가져옵니다. 예를 들어 리포지토리를 복제하려면 다음과 같이 합니다.
git clone codecommit://
CodeAccess
@MyDemoRepo
Git 커밋, 푸시 및 풀 명령은 일반 Git 구문을 사용합니다.
사용자가를 사용하고 회전하는 액세스 자격 증명과 연결된 AWS CLI 명명된 프로파일을 AWS CLI 지정하면 해당 프로파일에 범위가 지정된 결과가 반환됩니다.