

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

# CodeCommit에 대한 자격 증명 기반 정책(IAM 정책) 사용
<a name="auth-and-access-control-iam-identity-based-access-control"></a>

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

**중요**  
CodeCommit 리소스에 대한 액세스 관리를 위해 제공되는 기본 개념과 옵션 설명에 대한 소개 주제 부분을 먼저 읽어 보세요. 자세한 내용은 [CodeCommit 리소스에 대한 액세스 권한 관리 개요](auth-and-access-control.md#auth-and-access-control-iam-access-control-identity-based) 단원을 참조하십시오.

**Topics**
+ [CodeCommit 콘솔 사용에 필요한 권한](#console-permissions)
+ [콘솔에서 리소스 보기](#console-resources)
+ [AWS CodeCommit에 대한 관리형 정책](security-iam-awsmanpol.md)
+ [고객 관리형 정책 예제](customer-managed-policies.md)

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

------
#### [ JSON ]

****  

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

------

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

## CodeCommit 콘솔 사용에 필요한 권한
<a name="console-permissions"></a>

각 CodeCommit API 작업에 필요한 권한을 설정하는 방법과 CodeCommit 작업에 대한 자세한 내용은 [CodeCommit 권한 참조](auth-and-access-control-permissions-reference.md) 단원을 참조하세요.

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

자격 증명 기반 정책에 의해 사용자에게 부여된 권한 외에도 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 및 암호화](encryption.md) 단원을 참조하세요.

## 콘솔에서 리소스 보기
<a name="console-resources"></a>

CodeCommit 콘솔에는 로그인한에서 Amazon Web Services 계정의 리포지토리 목록을 표시할 수 AWS 리전 있는 `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`가 있으면 특정 리소스가 반환되지 않습니다.