CodeCommit에 대한 자격 증명 기반 정책(IAM 정책) 사용 - AWS CodeCommit

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

CodeCommit에 대한 자격 증명 기반 정책(IAM 정책) 사용

다음 자격 증명 기반 정책의 예는 계정 관리자가 권한 정책을 IAM 자격 증명(즉, 사용자, 그룹 및 역할)에 연결하고 이 과정을 통해 CodeCommit 리소스에서 작업을 수행할 권한을 부여할 수 있는 방법을 보여줍니다.

중요

CodeCommit 리소스에 대한 액세스 관리를 위해 제공되는 기본 개념과 옵션 설명에 대한 소개 주제 부분을 먼저 읽어 보십시오. 자세한 내용은 CodeCommit 리소스에 대한 액세스 권한 관리 개요 섹션을 참조하세요.

다음은 자격 증명 기반 권한 정책의 예입니다.

{ "Version": "2012-10-17", "Statement" : [ { "Effect" : "Allow", "Action" : [ "codecommit:BatchGetRepositories" ], "Resource" : [ "arn:aws:codecommit:us-east-2:111111111111:MyDestinationRepo", "arn:aws:codecommit:us-east-2:111111111111:MyDemo*" ] } ] }

이 정책에는 사용자가 us-east-2 리전의 MyDemo라는 이름으로 시작하는 모든 CodeCommit 리포지토리와 MyDestinationRepo라는 이름의 CodeCommit 리포지토리에 대한 정보를 가져오도록 허용하는 명령문이 있습니다.

CodeCommit 콘솔 사용에 필요한 권한

각 CodeCommit API 작업에 필요한 권한을 설정하는 방법과 CodeCommit 작업에 대한 자세한 내용은 CodeCommit 권한 참조 단원을 참조하세요.

사용자에게 CodeCommit 콘솔을 사용하도록 허용하려는 경우 관리자는 CodeCommit 작업에 대한 권한을 부여해야 합니다. 예를 들어 AWSCodeCommitPowerUser 관리형 정책 또는 이와 동등한 정책을 사용자나 그룹에 연결할 수 있습니다.

자격 증명 기반 정책을 통해 사용자에게 부여하는 권한 외에도, CodeCommit에는 AWS Key Management Service(AWS KMS) 작업에 대한 권한이 필요합니다. IAM 사용자는 이러한 작업에 대한 명시적인 Allow 권한이 필요하지 않지만 다음 권한을 Deny로 설정하는 어떠한 정책에도 연결되면 안 됩니다.

"kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt", "kms:GenerateDataKey", "kms:GenerateDataKeyWithoutPlaintext", "kms:DescribeKey"

암호화 및 CodeCommit에 대한 자세한 내용은 AWS KMS 및 암호화 단원을 참조하세요.

콘솔에서 리소스 보기

CodeCommit 콘솔에는 로그인한 AWS 리전의 Amazon Web Services 계정에 대한 리포지토리 목록을 표시할 수 있는 ListRepositories 권한이 필요합니다. 또한 콘솔에는 리소스의 대/소문자를 구분하지 않고 빠르게 검색할 수 있는 Go to resource(리소스로 이동) 기능이 포함되어 있습니다. 이 검색은 로그인한 AWS 리전의 Amazon Web Services 계정에서 수행됩니다. 다음 서비스에 표시되는 리소스는 다음과 같습니다.

  • AWS CodeBuild: 빌드 프로젝트

  • AWS CodeCommit: 리포지토리

  • AWS CodeDeploy: 애플리케이션

  • AWS CodePipeline: 파이프라인

모든 서비스의 리소스에서 이 검색을 수행하려면 다음 권한이 있어야 합니다.

  • CodeBuild: ListProjects

  • CodeCommit: ListRepositories

  • CodeDeploy: ListApplications

  • CodePipeline: ListPipelines

해당 서비스에 대한 권한이 없는 경우 서비스의 리소스에 대한 결과가 반환되지 않습니다. 리소스를 볼 수 있는 권한이 있더라도 해당 리소스 보기에 대한 명시적 Deny가 있으면 특정 리소스가 반환되지 않습니다.