

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

# 인터페이스 VPC 엔드포인트 AWS CodeCommit 와 함께 사용
<a name="codecommit-and-interface-VPC"></a>

Amazon Virtual Private Cloud(VPC)를 사용하여 AWS 리소스를 호스팅하는 경우 VPC와 CodeCommit 간에 프라이빗 연결을 설정할 수 있습니다. 이 연결을 사용하면 CodeCommit이 퍼블릭 인터넷을 통하지 않고 VPC의 리소스와 통신하게 할 수 있습니다.

Amazon VPC는 정의한 가상 네트워크에서 AWS 리소스를 시작하는 데 사용할 수 있는 AWS 서비스입니다. VPC를 사용하여 IP 주소 범위, 서브넷, 라우팅 테이블, 네트워크 게이트웨이 등의 네트워크 설정을 제어할 수 있습니다. VPC 엔드포인트를 사용하면 VPC와 AWS 서비스 간의 라우팅이 AWS 네트워크에서 처리되며 IAM 정책을 사용하여 서비스 리소스에 대한 액세스를 제어할 수 있습니다.

VPC를 CodeCommit에 연결하려면 CodeCommit에 대해 *인터페이스 VPC 엔드포인트*를 정의합니다. 인터페이스 엔드포인트는 지원되는 AWS 서비스로 향하는 트래픽의 진입점 역할을 하는 프라이빗 IP 주소가 있는 탄력적 네트워크 인터페이스입니다. 이 엔드포인트를 이용하면 인터넷 게이트웨이나 Network Address Translation(NAT) 인스턴스 또는 VPN 연결 없이도 CodeCommit에 안정적이고 확장 가능하게 연결됩니다. 자세한 내용은 *Amazon VPC 사용 설명서*의 [Amazon VPC란 무엇입니까](https://docs.aws.amazon.com/vpc/latest/userguide/)를 참조하세요.

**참고**  
와 같이 VPC 지원을 제공하고 CodeCommit과 통합되는 다른 AWS 서비스는 해당 통합에 Amazon VPC 엔드포인트 사용을 지원하지 않을 AWS CodePipeline수 있습니다. 예를 들어 CodePipeline과 CodeCommit 간의 트래픽은 VPC 서브넷 범위로 제한할 수 없습니다. 통합을 지원하는 서비스(예: [AWS Cloud9](setting-up-ide-c9.md))에는 AWS Systems Manager와 같은 추가 서비스가 필요할 수 있습니다.

 인터페이스 VPC 엔드포인트는 프라이빗 IP 주소가 있는 탄력적 네트워크 인터페이스를 사용하여 AWS 서비스 간의 프라이빗 통신을 지원하는 AWS 기술인 AWS PrivateLink로 구동됩니다. 자세한 내용은 [AWS PrivateLink](https://aws.amazon.com/privatelink/) 섹션을 참조하세요.

다음은 Amazon VPC 사용자를 위한 단계들입니다. 자세한 내용은 *Amazon VPC 사용 설명서*의 [시작하기](https://docs.aws.amazon.com/vpc/latest/userguide/GetStarted.html)를 참조하세요.

## 가용성
<a name="codecommit-interface-VPC-availability"></a>

CodeCommit은 현재 AWS 리전다음에서 VPC 엔드포인트를 지원합니다.
+ 미국 동부(오하이오) 
+ 미국 동부(버지니아 북부)
+ 미국 서부(캘리포니아 북부)
+ 미국 서부(오리건)
+ 유럽(아일랜드)
+ 유럽(런던)
+ 유럽(파리)
+ 유럽(프랑크푸르트)
+ 유럽(스톡홀름)
+ 유럽(밀라노)
+ 아프리카(케이프타운)
+ 이스라엘(텔아비브)
+ 아시아 태평양(도쿄)
+ 아시아 태평양(싱가포르)
+ 아시아 태평양(시드니)
+ 아시아 태평양(자카르타)
+ 중동(UAE)
+ 아시아 태평양(서울)
+ 아시아 태평양(오사카)
+ 아시아 태평양(뭄바이)
+ 아시아 태평양(하이데라바드)
+ 아시아 태평양(홍콩)
+ 남아메리카(상파울루)
+ Middle East (Bahrain)
+ 캐나다(중부)
+ 중국(베이징)
+ 중국(닝샤)
+ AWS GovCloud(미국 서부)
+ AWS GovCloud(미국 동부)

## CodeCommit의 VPC 엔드포인트 생성
<a name="create-vpc-endpoint-for-codecommit"></a>

VPC로 CodeCommit을 사용하려면, CodeCommit을 위한 인터페이스 VPC 엔드포인트를 생성합니다. CodeCommit은 Git 작업과 CodeCommit API 작업을 위해 별도의 엔드포인트가 필요합니다. 비즈니스 요구 사항에 따라 VPC 엔드포인트를 두 개 이상 생성해야 할 수 있습니다. CodeCommit을 위한 VPC 엔드포인트를 생성하려면, **AWS 서비스**를 선택하고, **서비스 이름**의 다음 옵션 중에서 선택합니다.
+ **com.amazonaws.*region*.git-codecommit**: CodeCommit 리포지토리로 Git 작업을 하기 위한 VPC 엔드포인트를 생성하려는 경우 이 옵션을 선택합니다. 예를 들어 사용자가 CodeCommit 리포지토리와 상호 작용할 때 Git 클라이언트와 `git pull`, `git commit`, `git push` 등의 명령을 사용려는 경우 이 옵션을 선택합니다.
+ **com.amazonaws.*region*.git-codecommit-fips**: CodeCommit 리포지토리로 미국 연방 정보 처리 표준(FIPS) Publication 140-2 US 정부 표준을 준수하는 Git 작업을 위한 VPC 엔드포인트를 생성하려는 경우 이 옵션을 선택합니다.
**참고**  
일부 AWS 리전에서는 Git용 FIPS 엔드포인트를 사용할 수 없습니다. 자세한 내용은 [Git 연결 엔드포인트](regions.md#regions-git) 단원을 참조하십시오.
+ **com.amazonaws.*region*.codecommit**: CodeCommit API 작업을 위한 VPC 엔드포인트를 생성하려는 경우 이 옵션을 선택합니다. 예를 들어 사용자가 AWS CLI, CodeCommit API 또는 AWS SDKs를 사용하여 , `CreateRepository` `ListRepositories`및와 같은 작업을 위해 CodeCommit과 상호 작용하는 경우이 옵션을 선택합니다`PutFile`.
+ **com.amazonaws.*region*.codecommit-fips**: 미국 연방 정보 처리 표준(FIPS) Publication 140-2 US 정부 표준을 준수하는 CodeCommit API 작업을 위한 VPC 엔드포인트를 생성하려는 경우 이 옵션을 선택합니다.
**참고**  
일부 AWS 리전에서는 FIPS 엔드포인트를 사용할 수 없습니다. 자세한 내용은 FIPS(Federal Information Processing Standard) 140-2 개요 AWS CodeCommit 의 항목을 참조하세요. [https://aws.amazon.com/compliance/fips/](https://aws.amazon.com/compliance/fips/) 

## CodeCommit을 위한 VPC 엔드포인트 정책 생성
<a name="create-vpc-endpoint-policy-for-codecommit"></a>

CodeCommit의 Amazon VPC 엔드포인트에 대한 정책을 생성할 수 있습니다. 이 정책에서는 다음을 지정할 수 있습니다.
+ 작업을 수행할 수 있는 위탁자.
+ 수행할 수 있는 작업.
+ 작업을 수행할 수 있는 리소스.

예를 들어 한 회사가 리포지토리에 대한 액세스를 VPC의 네트워크 주소 범위로 제한하고자 할 수 있습니다. 이 종류의 정책 예는 [예제 3: 지정 IP 주소 범위에서 연결된 사용자에게 리포지토리에 대한 액세스 허용](customer-managed-policies.md#identity-based-policies-example-3)에서 볼 수 있습니다. 이 회사는 미국 동부(오하이오) 리전에 대해 `com.amazonaws.us-east-2.codecommit`과 `com-amazonaws.us-east-2.git-codecommit-fips`라는 두 Git VPC 엔드포인트를 구성했습니다. 이 회사는 FIPS를 준수하는 엔드포인트에서만 *MyDemoRepo*라는 CodeCommit 리포지토리로 코드를 푸시할 수 있도록 허용합니다. 그리고 이를 강제하기 위해 Git 푸시 작업을 명확히 거부하는 `com.amazonaws.us-east-2.codecommit` 엔드포인트에 대해 다음과 비슷한 정책을 구성합니다.

```
{
    "Statement": [
        {
            "Action": "*",
            "Effect": "Allow",
            "Resource": "*",
            "Principal": "*"
        },
        {
            "Action": "codecommit:GitPush",
            "Effect": "Deny",
            "Resource": "arn:aws:codecommit:us-east-2:123456789012:MyDemoRepo",
            "Principal": "*"
        }
    ]
}
```

**중요**  
전역 조건 키`aws:VpcSourceIp`는 `git push` 명령에 대한 IAM 정책에서 CodeCommit 리포지토리가 지원되지 않습니다.

자세한 내용은 *Amazon VPC 사용 설명서*의 [인터페이스 엔드포인트 생성](https://docs.aws.amazon.com/vpc/latest/userguide/vpce-interface.html#create-interface-endpoint.html)을 참조하세요.