AWS Glue에 대한 인터페이스 VPC 엔드포인트(AWS PrivateLink) 구성(AWS PrivateLink) - AWS Glue

AWS Glue에 대한 인터페이스 VPC 엔드포인트(AWS PrivateLink) 구성(AWS PrivateLink)

인터페이스 VPC 엔드포인트를 생성하여 VPC와 AWS Glue 간에 프라이빗 연결을 설정할 수 있습니다. 인터페이스 엔드포인트는 인터넷 게이트웨이, NAT 디바이스, VPN 연결 또는 AWS Direct Connect 연결 없이 비공개로 AWS Glue API에 액세스할 수 있도록 지원하는 AWS PrivateLink 기술로 구동됩니다. VPC의 인스턴스는 AWS Glue API와 통신하는 데 퍼블릭 IP 주소를 필요로 하지 않습니다. VPC와 AWS Glue 간의 트래픽은 Amazon 네트워크를 벗어나지 않습니다.

각 인터페이스 엔드포인트는 서브넷에서 하나 이상의 탄력적 네트워크 인터페이스로 표현됩니다.

자세한 내용은 Amazon VPC 사용 설명서에서 인터페이스 VPC 종단점(AWS PrivateLink)을 참조하십시오.

AWS Glue VPC 엔드포인트 고려 사항

AWS Glue에 대한 인터페이스 VPC 엔드포인트를 설정하기 전에 Amazon VPC 사용 설명서에서 인터페이스 엔드포인트 속성 및 제한 사항을 검토해야 합니다.

AWS Glue은 VPC에서 모든 API 작업에 대한 직접 호출 수행을 지원합니다.

AWS Glue에 대한 인터페이스 VPC 엔드포인트 생성

Amazon VPC 콘솔이나 AWS Command Line Interface(AWS CLI)을 사용하여 AWS Glue 서비스에 대한 VPC 엔드포인트를 생성할 수 있습니다. 자세한 내용은 Amazon VPC 사용 설명서의 인터페이스 엔드포인트 생성을 참조하세요.

다음 서비스 이름을 사용하여 AWS Glue용 VPC 종단점을 생성합니다.

  • com.amazonaws.region.glue

엔드포인트에 프라이빗 DNS를 사용하도록 설정하는 경우, 리전에 대한 기본 DNS 이름(예: glue.us-east-1.amazonaws.com)을 사용하여 AWS Glue에 API 요청을 할 수 있습니다.

자세한 내용은 Amazon VPC 사용 설명서인터페이스 엔드포인트를 통해 서비스 액세스를 참조하세요.

AWS Glue에 대한 VPC 엔드포인트 정책 생성

AWS Glue에 대한 액세스를 제어하는 VPC 엔드포인트에 엔드포인트 정책을 연결할 수 있습니다. 이 정책은 다음 정보를 지정합니다.

  • 작업을 수행할 수 있는 보안 주체.

  • 수행할 수 있는 작업.

  • 작업을 수행할 수 있는 리소스.

자세한 정보는 Amazon VPC 사용 설명서VPC 엔드포인트를 통해 서비스에 대한 액세스 제어를 참조하십시오.

예제: AWS Glue에서 작업 생성 및 업데이트를 허용하도록 하는 VPC 엔드포인트 정책

다음은 AWS Glue에 대한 엔드포인트 정책의 예입니다. 이 정책은 엔드포인트에 연결될 때 모든 리소스의 모든 보안 주체에 대한 액세스 권한을 나열된 AWS Glue 작업에 부여합니다.

{ "Statement":[ { "Principal":"*", "Effect":"Allow", "Action":[ "glue:CreateJob", "glue:UpdateJob", "iam:PassRole" ], "Resource":"*" } ] }
예제: 읽기 전용 Data Catalog 액세스를 허용하는 VPC 엔드포인트 정책

다음은 AWS Glue에 대한 엔드포인트 정책의 예입니다. 이 정책은 엔드포인트에 연결될 때 모든 리소스의 모든 보안 주체에 대한 액세스 권한을 나열된 AWS Glue 작업에 부여합니다.

{ "Statement": [ { "Principal": "*", "Effect": "Allow", "Action": [ "glue:GetDatabase", "glue:GetDatabases", "glue:GetTable", "glue:GetTables", "glue:GetTableVersion", "glue:GetTableVersions", "glue:GetPartition", "glue:GetPartitions", "glue:BatchGetPartition", "glue:SearchTables" ], "Resource": "*" } ] }