使用 Amazon 虛擬私有雲來保護工作 - Amazon Comprehend

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

使用 Amazon 虛擬私有雲來保護工作

Amazon Comprehend 使用各種安全措施,透過我們的任務容器在 Amazon Comprehend 正在使用時儲存資料的容器,確保資料的安全性。但是,任務容器會透過網際網路存取 AWS 資源 (例如存放資料和模型人工因素的 Amazon S3 儲存貯體)。

若要控制對資料的存取,我們建議您建立虛擬私有雲 (VPC) 並進行設定,以便無法透過網際網路存取資料和容器。如需有關建立和設定的資訊VPC,請參閱 Amazon VPC使用者指南VPC中的 Amazon 入門。使用有VPC助於保護您的數據,因為您可以配置您VPC的數據,以便它不連接到互聯網。使用VPC也可讓您使用VPC流程記錄來監控工作容器的所有進出網路流量。如需詳細資訊,請參閱 Amazon VPC 使用者指南中的VPC流程日誌

您可以在建立工作時指定您的組VPC態,方法是指定子網路和安全性群組。當您指定子網路和安全群組時,Amazon Comprehend 會建立與其中一個子網路中的安全群組相關聯的彈性網路界面 (ENIs)。ENIs允許我們的工作容器連接到VPC. 如需相關資訊ENIs,請參閱 Amazon VPC 使用者指南中的彈性網路界面

注意

針對工作,您只能使用預設租用來設定子網路,而您的執行個體會VPC在共用硬體上執行。如需有關的租用屬性的詳細資訊VPCs,請參閱 Amazon EC2 使用者指南中的專用執行個體

為 Amazon VPC 訪問配置任務

若要在您的中指定子網路和安全群組VPC,請使用適用項目的VpcConfig請求參數API,或在 Amazon Comprehend 主控台中建立任務時提供此資訊。Amazon Comprehend 使用這些資訊來建立這些資訊,ENIs並將其附加到我們的任務容器。ENIs為我們的工作容器提供您VPC內部未連接到互聯網的網絡連接。

以下內容APIs包含VpcConfig請求參數:

以下是您在API呼叫中包含的 VpcConfig 參數範例:

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

若要VPC從 Amazon Comprehend 主控台進行設定,請在建立任務時從可選VPC設定區段中選擇組態詳細資料。

建立分析 Job 中的選擇性VPC區段

設定您VPC的 Amazon Comprehend 任務

VPC為您的 Amazon Comprehend 任務設定時,請遵循下列準則。如需有關設定的資訊VPC,請參閱 Amazon VPC 使用者指南中的使用VPCs和子網路

確保子網路具有足夠的 IP 位址

對於工作中的每個執行個體,VPC子網路應該至少有兩個私有 IP 位址。如需詳細資訊,請參閱 Amazon VPC 使用者指南IPv4的VPC和子網路大小調整

創建一個 Amazon S3 VPC 端點

如果您設定VPC讓任務容器無法存取網際網路,則除非您建立允許存取的VPC端點,否則它們將無法連線到包含您資料的 Amazon S3 儲存貯體。透過建立VPC端點,您可以允許工作容器在訓練和分析工作期間存取您的資料。

建立VPC端點時,請設定下列值:

  • 選擇服務類別作為「AWS 服務

  • 將服務指定為 com.amazonaws.region.s3

  • 選取閘道作為VPC端點類型

如果您使用 AWS CloudFormation 建立VPC端點,請遵循AWS CloudFormation VPCEndpoint文件。下列範例顯示範 AWS CloudFormation 本中的VPCEndpoint組態。

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 URLs (例如http://s3-aws-region.amazonaws.com/amzn-s3-demo-bucket) 解析。如果您未使用預DNS設設定,請URLs確定您用來指定工作中資料位置的解析方式是透過設定端點路由表來解析。如需有關VPC端點路由表的資訊,請參閱 Amazon 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搭配分析工作使用時,DataAccessRole用於Create*和作Start*業的使用也必須具有存取輸入文件和輸出值區的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 使用者指南中的安全群組規則

Connect 到您外部的資源 VPC

如果您將設定為VPC使其無法存取網際網路,則使用的VPC工作無法存取您外部的資源VPC。如果您的工作需要存取您以外的資源VPC,請使用下列其中一個選項提供存取權:

  • 如果您的工作需要存取支援介面VPC端點的 AWS 服務,請建立端點以連線至該服務。如需支援界面端點的服務清單,請參閱 Amazon VPC 使用者指南中的VPC端點。如需建立介面VPC端點的相關資訊,請參閱 Amazon VPC 使用者指南中的介面VPC端點 (AWS PrivateLink)

  • 如果您的工作需要存取不支援介面VPC端點的 AWS 服務或外部資源 AWS,請建立NAT閘道並設定安全群組以允許輸出連線。如需設定NAT閘道的相關資訊VPC,請參閱 Amazon VPC 使用者指南中的案例 2:使用公VPC有和私有子網路 (NAT)