Amazon Virtual Private Cloud를 사용한 작업 보호 - Amazon Comprehend

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

Amazon Virtual Private Cloud를 사용한 작업 보호

Amazon Comprehend는 Amazon Comprehend에서 데이터가 저장된 작업 컨테이너를 사용하는 동안 데이터의 안전을 보장하기 위해 다양한 보안 조치를 사용합니다. 하지만 작업 컨테이너는 인터넷을 통해 데이터 및 모델 AWS 아티팩트를 저장하는 Amazon S3 버킷과 같은 리소스에 액세스합니다.

사용자 데이터에 대한 액세스를 제어하려면 Virtual Private Cloud(VPC)를 생성하고 구성하여 데이터와 컨테이너가 인터넷을 통해 액세스 되지 않도록 구성하는 것이 좋습니다. VPC 생성 및 구성에 대한 내용은 Amazon VPC 사용 설명서Amazon VPC 시작하기를 참조하십시오. VPC를 사용하면 사용자 데이터가 인터넷에 연결되지 않도록 VPC를 구성할 수 있기 때문에 데이터 보호에 도움이 됩니다. 또한 VPC를 사용하면 VPC 흐름 로그를 통하여 당사 작업 컨테이너에 들어오고 나가는 모든 네트워크 트래픽을 모니터링할 수 있습니다. 자세한 내용은 Amazon VPC 사용 설명서VPC 흐름 로그를 참조하세요.

작업을 생성할 때 서브넷 및 보안 그룹을 지정하여 프라이빗 VPC 구성을 지정합니다. 서브넷 및 보안 그룹을 지정할 때 Amazon Comprehend가 서브넷 중 하나에 있는 보안 그룹과 연결된 탄력적 네트워크 인터페이스(ENI)를 생성합니다. ENI를 통해 작업 컨테이너는 사용자 VPC에 있는 리소스와 연결될 수 있습니다. ENI에 대한 자세한 내용은 Amazon VPC 사용 설명서탄력적 네트워크 인터페이스를 참조하세요.

참고

작업의 경우, 사용자는 사용자 인스턴스가 실행되는 공유 하드웨어의 기본 테넌시 VPC 만을 사용하여 서브넷을 구성할 수 있습니다. VPC 테넌시에 대한 자세한 내용은 Linux 인스턴스용 Amazon EC2 사용 설명서전용 인스턴스를 참조하세요.

Amazon VPC 액세스를 위한 작업 구성

사용자 VPC에서 서브넷 및 보안 그룹을 지정하려면 해당 API의 VpcConfig 요청 파라미터를 사용하거나 Amazon Comprehend 콘솔에서 작업을 생성할 때 이 정보를 제공합니다. Amazon Comprehend는 이 정보를 사용하여 ENI를 생성하고 이를 당사 작업 컨테이너에 연결합니다. ENI는 당사 작업 컨테이너에 인터넷과 연결되지 않은 사용자 VPC 내부에서 네트워크 연결을 제공합니다.

다음 API에는 VpcConfig 요청 파라미터가 포함되어 있습니다.

다음은 API 호출에 포함하는 VpcConfig 파라미터의 예시입니다.

"VpcConfig": { "SecurityGroupIds": [ " sg-0123456789abcdef0" ], "Subnets": [ "subnet-0123456789abcdef0", "subnet-0123456789abcdef1", "subnet-0123456789abcdef2" ] }

Amazon Comprehend 콘솔에서 VPC를 구성하려면 작업 생성 시 선택적 VPC 설정섹션에서 구성 세부 정보를 선택합니다.


    분석 작업 생성 시 선택적 VPC 섹션

Amazon Comprehend 작업을 위한 사용자 VPC 구성

사용자 Amazon Comprehend 용 VPC를 구성할 때 다음 지침을 따릅니다. VPC 설정에 관한 자세한 내용은 Amazon VPC 사용 설명서VPCs 및 서브넷 작업을 참조하세요.

서브넷에 충분한 IP 주소를 확보해야 합니다

사용자 VPC 서브넷에는 각 작업 인스턴스 별로 최소 2개 이상의 프라이빗 IP 주소가 있어야 합니다. 자세한 내용은 Amazon VPC 사용 설명서VPC 및 서브넷 IPv4 크기 조정을 참조하세요.

Amazon S3 VPC 엔드포인트 생성

작업 컨테이너가 인터넷에 액세스하지 않도록 사용자 VPC를 구성하면 사용자가 액세스를 허용하는 VPC 엔드포인트를 생성하지 않는 VPC는 사용자 데이터가 들어 있는 Amazon S3 버킷에 연결할 수 없습니다. VPC 엔드포인트를 생성하면 교육 및 분석 작업 중에 작업 컨테이너가 데이터에 액세스할 수 있습니다.

VPC 엔드포인트를 생성할 때 다음 값을 구성하십시오.

  • 서비스 범주를 서비스로 선택합니다.AWS

  • 서비스를 다음과 같이 지정합니다. com.amazonaws.region.s3

  • VPC 엔드포인트 유형으로 게이트웨이 선택

를 AWS CloudFormation 사용하여 VPC 엔드포인트를 생성하는 경우 VPCendPoint 설명서를 따르십시오.AWS CloudFormation 다음 예는 템플릿의 VPCEndPoint 구성을 보여줍니다. AWS CloudFormation

VpcEndpoint: Type: AWS::EC2::VPCEndpoint Properties: PolicyDocument: Version: '2012-10-17' Statement: - Action: - s3:GetObject - s3:PutObject - s3:ListBucket - s3:GetBucketLocation - s3:DeleteObject - s3:ListMultipartUploadParts - s3:AbortMultipartUpload Effect: Allow Resource: - "*" Principal: "*" RouteTableIds: - Ref: RouteTable ServiceName: Fn::Join: - '' - - com.amazonaws. - Ref: AWS::Region - ".s3" VpcId: Ref: VPC

사용자 VPC의 S3 버킷 액세스 요청 만을 허용하는 사용자 정의 정책의 생성을 권장합니다. 자세한 내용은 Amazon VPC 사용 설명서Amazon S3용 엔드포인트 정책을 참조하세요.

다음 정책은 S3 버킷 액세스를 허용합니다. 작업에 필요한 리소스에만 액세스할 수 있도록 이 정책을 편집하십시오.

{ "Version": "2008-10-17", "Statement": [ { "Effect": "Allow", "Principal": "*", "Action": [ "s3:GetObject", "s3:PutObject", "s3:ListBucket", "s3:GetBucketLocation", "s3:DeleteObject", "s3:ListMultipartUploadParts", "s3:AbortMultipartUpload" ], "Resource": "*" } ] }

사용자 엔드포인트 라우팅 테이블에 기본 DNS 설정을 사용하면 표준 Amazon S3 URL(예:http://s3-aws-region.amazonaws.com/MyBucket )이 결정됩니다. 기본 DNS 설정을 사용하지 않는다면 엔드포인트 라우팅 테이블을 구성하여 사용자 작업의 데이터 위치를 지정하는 데 사용한 URL이 결정되도록 합니다. VPC 엔드포인트 라추팅 테이블에 관한 내용은 Amazon VPC 사용 설명서게이트웨이 VPC 엔드포인트 라우팅을 참조하세요.

기본 엔드포인트 정책은 사용자가 당사 작업 컨테이너에 있는 Amazon Linux 및 Amazon Linux 2에서 패키지를 설치하도록 허용합니다. 사용자가 해당 리포지토리의 패키지를 설치하지 않도록 하려면 Amazon Linux 및 Amazon Linux 2 리포지토리에 대한 액세스를 명시적으로 거부하는 사용자 지정 엔드포인트 정책을 생성합니다. Comprehend 자체에는 이러한 패키지가 필요하지 않으므로 기능에 영향을 미치지 않습니다. 다음은 이러한 리포지토리에 대한 액세스를 거부하는 정책의 예입니다.

{ "Statement": [ { "Sid": "AmazonLinuxAMIRepositoryAccess", "Principal": "*", "Action": [ "s3:GetObject" ], "Effect": "Deny", "Resource": [ "arn:aws:s3:::packages.*.amazonaws.com/*", "arn:aws:s3:::repo.*.amazonaws.com/*" ] } ] } { "Statement": [ { "Sid": "AmazonLinux2AMIRepositoryAccess", "Principal": "*", "Action": [ "s3:GetObject" ], "Effect": "Deny", "Resource": [ "arn:aws:s3:::amazonlinux.*.amazonaws.com/*" ] } ] }

DataAccessRole에 대한 권한

분석 작업에 VPC를 사용하는 경우 Create*Start*작업에 사용되는 DataAccessRole은 입력 문서 및 출력 버킷에 액세스하는 VPC에 대한 권한도 있어야 합니다.

다음 정책은 Create*Start* 작업에 사용되는 DataAccessRole에게 필요한 액세스를 제공합니다.

{ "Version": "2008-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:CreateNetworkInterface", "ec2:CreateNetworkInterfacePermission", "ec2:DeleteNetworkInterface", "ec2:DeleteNetworkInterfacePermission", "ec2:DescribeNetworkInterfaces", "ec2:DescribeVpcs", "ec2:DescribeDhcpOptions", "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups" ], "Resource": "*" } ] }

VPC 보안 그룹 구성

분산형 작업에서 동일한 작업의 다른 컨테이너 사이의 통신을 허용해야 합니다. 이렇게 하려면 동일한 보안 그룹의 멤버 간의 인바운드 연결을 허용하는 보안 그룹 규칙을 구성합니다. 자세한 내용은 Amazon VPC 사용 설명서보안 그룹 규칙을 참조하세요.

VPC 외부 리소스에 연결

인터넷 액세스가 되지 않도록 사용자 VPC를 구성하면 해당 VPC를 사용하는 작업은 사용자 VPC 외부의 리소스에 액세스할 수 없습니다. 사용자 작업에 VPC 외부 리소스 액세스가 필요하면 다음 옵션 중 하나를 사용하여 액세스를 제공합니다.

  • 작업에 인터페이스 VPC 엔드포인트를 지원하는 AWS 서비스에 액세스해야 하는 경우 해당 서비스에 연결할 엔드포인트를 생성하세요. 인터페이스 엔드포인트를 지원하는 서비스 목록은 Amazon VPC 사용 설명서VPC 엔드포인트를 참조하세요. 인터페이스 VPC 엔드포인트 생성에 대한 자세한 내용은 Amazon VPC 사용 설명서의 인터페이스 VPC 엔드포인트 ()AWS PrivateLink 를 참조하십시오.

  • 작업에 인터페이스 VPC 엔드포인트를 지원하지 않는 AWS 서비스나 외부 리소스에 대한 액세스가 필요한 경우 AWS, NAT 게이트웨이를 만들고 아웃바운드 연결을 허용하도록 보안 그룹을 구성하세요. VPC용 NAT 게이트웨이에 대한 자세한 내용은 Amazon VPC 사용 설명서시나리오 2: 퍼블릭 서브넷과 프라이빗 서브넷 VPC(NAT)를 참조하세요.