在 VPC 中設定 Amazon SageMaker Canvas 而不存取網際網路 - Amazon SageMaker

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

在 VPC 中設定 Amazon SageMaker Canvas 而不存取網際網路

Amazon SageMaker Canvas 應用程式會在受 AWS 管 Amazon Virtual Private Cloud () 中的容器中執行VPC。如果您想要進一步控制對資源的存取,或在沒有公有網際網路存取的情況下執行 SageMaker Canvas,您可以設定您的 Amazon SageMaker 網域和VPC設定。在您自己的 中VPC,您可以設定安全群組 (控制來自 Amazon EC2執行個體的傳入和傳出流量的虛擬防火牆) 和子網路 (您 中 IP 地址的範圍) 等設定VPC。若要進一步了解 VPCs,請參閱 Amazon 如何VPC運作

當 SageMaker Canvas 應用程式在 AWS 受管 中執行時VPC,它可以使用網際網路連線或透過客戶受管 VPC(無需公有網際網路存取) 中建立的VPC端點與其他 AWS 服務互動。 SageMaker Canvas 應用程式可以透過 Studio Classic 建立的網路介面來存取這些VPC端點,該介面可提供與客戶受管 的連線VPC。 SageMaker Canvas 應用程式的預設行為是具有網際網路存取權。使用網際網路連線時,先前任務的容器會透過網際網路存取 AWS 資源,例如存放訓練資料和模型成品的 Amazon S3 儲存貯體。

不過,如果您有安全需求來控制對資料和任務容器的存取,建議您設定 SageMaker Canvas 和 ,VPC以便無法透過網際網路存取您的資料和容器。 SageMaker 會使用您在為 SageMaker Canvas 設定網域時指定的VPC組態設定。

如果您想要在沒有網際網路存取的情況下設定 SageMaker Canvas 應用程式,則必須在加入 Amazon SageMaker 網域 時設定VPC設定、設定VPC端點,並授予必要的 AWS Identity and Access Management 許可。如需在 Amazon VPC中設定 的資訊 SageMaker,請參閱 選擇 Amazon VPC。下列各節說明如何在沒有公有網際網路存取VPC的情況下在 中執行 SageMaker Canvas。

在 VPC 中設定 Amazon SageMaker Canvas 而不存取網際網路

您可以透過自己的 ,將流量從 SageMaker Canvas 傳送至其他 AWS 服務VPC。如果您自己的 VPC 沒有公有網際網路存取,而且您已將網域設定為VPC僅模式,則 SageMaker Canvas 也將不會擁有公有網際網路存取。這包括所有請求,例如存取 Amazon S3 中的資料集或標準建置的訓練任務,以及請求會經過您 中的VPC端點,VPC而不是公有網際網路。當您加入網域 和 時選擇 Amazon VPC,您可以將自己的 指定VPC為網域VPC的預設值,以及所需的安全群組和子網路設定。然後, SageMaker在 SageMaker Canvas 用來存取 中VPC端點VPC的 中建立網路介面VPC。

請確定您在 中設定一或多個安全群組VPC,其中包含允許安全群組 內TCP流量的傳入和傳出規則。這是 Jupyter Server 應用程式與 Kernel Gateway 應用程式之間的連線所必需。您必須至少允許存取範圍 8192-65535 內的連接埠。此外,請務必為每個使用者設定檔建立不同的安全群組,並從相同的安全群組新增傳入存取。我們不建議為使用者設定檔重複使用網域層級安全群組。如果網域層級安全群組允許傳入存取其本身,則網域中的所有應用程式都可以存取網域中的所有其他應用程式。請注意,安全群組和子網路設定會在您完成網域加入後設定。

加入網域時,如果您選擇公有網際網路作為網路存取類型, VPC會受到 SageMaker 管理並允許網際網路存取。

您可以只選擇 ,VPC SageMaker以將所有流量傳送到在指定 中 SageMaker 建立的網路介面VPC。選擇此選項時,您必須提供與 SageMaker API 和 SageMaker Runtime 通訊所需的子網路、安全群組和VPC端點,以及 SageMaker Canvas 使用的各種 AWS 服務 CloudWatch,例如 Amazon S3 和 Amazon 。請注意,您只能從與 位於相同區域的 Amazon S3 儲存貯體匯入資料VPC。

下列程序說明如何將這些設定設定為在沒有網際網路的情況下使用 SageMaker Canvas。

步驟 1:加入 Amazon SageMaker 網域

若要將 SageMaker Canvas 流量傳送到您自己的網路介面,VPC而不是透過網際網路,請指定VPC您在加入 Amazon SageMaker 網域 時要使用的 。您還必須在 中指定至少兩個VPC SageMaker 可以使用的子網路。選擇標準設定,並在設定網域的網路和儲存區段時執行下列程序。

  1. 選取所需的 VPC

  2. 選擇兩個或多個子網路。如果您未指定子網路, SageMaker 會使用 中的所有子網路VPC。

  3. 選擇一或多個安全群組

  4. 選擇VPC僅關閉託管 SageMaker Canvas VPC的 AWS 受管 中的直接網際網路存取。

停用網際網路存取後,請完成登入程序以設定您的網域。如需 Amazon SageMaker 網域VPC設定的詳細資訊,請參閱 選擇 Amazon VPC

步驟 2:設定VPC端點和存取

注意

若要在您自己的 中設定 CanvasVPC,您必須為VPC端點啟用私有DNS主機名稱。如需詳細資訊,請參閱 SageMaker 透過VPC介面端點 連線至

SageMaker Canvas 只會存取其他服務 AWS 來管理和儲存其功能的資料。例如,如果您的使用者存取 Amazon Redshift 資料庫,它就會連線到 Amazon Redshift。它可以使用網際網路連線或VPC端點連線到 Amazon Redshift 等 AWS 服務。如果您想要設定從 VPC連線至不使用公有網際網路 AWS 的服務,請使用VPC端點。

VPC 端點會建立 AWS 服務的私有連線,該服務使用與公有網際網路隔離的網路路徑。例如,如果您使用自己的VPC端點設定 Amazon S3 的存取權VPC,則 SageMaker Canvas 應用程式可以透過您 中的網路界面存取 Amazon S3,VPC然後透過連線至 Amazon S3 的VPC端點存取 Amazon S3。 SageMaker Canvas 和 Amazon S3 之間的通訊是私有的。

如需為 設定VPC端點的詳細資訊VPC,請參閱 AWS PrivateLink。如果您在 Canvas 中使用 Amazon Bedrock 模型搭配 VPC,如需控制資料存取的詳細資訊,請參閱 Amazon Bedrock 使用者指南 中的使用 保護任務VPC

以下是您可以與 SageMaker Canvas 搭配使用的每個服務的VPC端點:

服務 端點 端點類型

AWS Application Auto Scaling

com.amazonaws。Region.application-autoscaling

介面

Amazon Athena

com.amazonaws。Regionathena.

介面

Amazon SageMaker

com.amazonaws。Region.sagemaker.api

com.amazonaws。Region.sagemaker.runtime

com.amazonaws。Region.notebook

介面

AWS Security Token Service

com.amazonaws。Region.sts

介面

Amazon Elastic Container Registry (Amazon ECR)

com.amazonaws。Region.ecr.api

com.amazonaws。Region.ecr.dkr

介面

Amazon Elastic Compute Cloud (Amazon EC2)

com.amazonaws。Region.ec2

介面

Amazon Simple Storage Service (Amazon S3)

com.amazonaws。Region.s3

閘道

Amazon Redshift

com.amazonaws。Region.redshift-data

介面

AWS Secrets Manager

com.amazonaws。Region.secretsmanager

介面

AWS Systems Manager

com.amazonaws。Region.ssm

介面

Amazon CloudWatch

com.amazonaws。Region.監控

介面

Amazon CloudWatch Logs

com.amazonaws。Region.logs

介面

Amazon Forecast

com.amazonaws。Region.預測

com.amazonaws。Region.forecastquery

介面

Amazon Textract

com.amazonaws。Region.textract

介面

Amazon Comprehend

com.amazonaws。Region.comprehend

介面

Amazon Rekognition

com.amazonaws。Region.rekognition

介面

AWS Glue

com.amazonaws。Region.glue

介面

AWS Application Auto Scaling

com.amazonaws。Region.application-autoscaling

介面

Amazon Relational Database Service (Amazon RDS)

com.amazonaws。Region.rds

介面

Amazon Bedrock

com.amazonaws。Region.bedrock-執行時間

介面

Amazon Kendra

com.amazonaws。Region.kendra

介面

Amazon EMR Serverless

com.amazonaws。Region.emr-serverless

介面

注意

對於 Amazon Bedrock,介面端點服務名稱 com.amazonaws.Region.bedrock 已被棄用。使用上表中列出的服務名稱建立新的VPC端點。

此外,您無法在無法存取網際網路VPCs的情況下,從 Canvas 微調基礎模型。這是因為 Amazon Bedrock 不支援模型自訂 的VPC端點APIs。若要進一步了解如何微調 Canvas 中的基礎模型,請參閱 微調基礎模型

您還必須新增 Amazon S3 的端點政策,以控制VPC端點的主要 AWS 存取。如需有關如何更新VPC端點政策的資訊,請參閱使用VPC端點政策控制對端點的存取。

以下是兩個您可以使用的VPC端點政策。如果您只想要授予 Canvas 基本功能的存取權,例如匯入資料和建立模型,請使用第一個政策。如果您想要授予對 Canvas 中其他生成性 AI 功能的存取權,請使用第二個政策。

Basic VPC endpoint policy

下列政策授予您在 Canvas 中基本操作所需的VPC端點存取權。

{ "Effect": "Allow", "Action": [ "s3:GetObject", "s3:PutObject", "s3:DeleteObject", "s3:CreateBucket", "s3:GetBucketCors", "s3:GetBucketLocation" ], "Resource": [ "arn:aws:s3:::*SageMaker*", "arn:aws:s3:::*Sagemaker*", "arn:aws:s3:::*sagemaker*" ] }, { "Effect": "Allow", "Action": [ "s3:ListBucket", "s3:ListAllMyBuckets" ], "Resource": "*" }
Generative AI VPC endpoint policy

下列政策授予您在 Canvas 中基本操作以及使用生成式 AI 基礎模型對VPC端點的必要存取權。

{ "Effect": "Allow", "Action": [ "s3:GetObject", "s3:PutObject", "s3:DeleteObject", "s3:CreateBucket", "s3:GetBucketCors", "s3:GetBucketLocation" ], "Resource": [ "arn:aws:s3:::*SageMaker*", "arn:aws:s3:::*Sagemaker*", "arn:aws:s3:::*sagemaker*", "arn:aws:s3:::*fmeval/datasets*", "arn:aws:s3:::*jumpstart-cache-prod*" ] }, { "Effect": "Allow", "Action": [ "s3:ListBucket", "s3:ListAllMyBuckets" ], "Resource": "*" }

步驟 3:授予IAM許可

SageMaker Canvas 使用者必須具有必要 AWS Identity and Access Management 許可,才能允許連線至VPC端點。您授予許可的角色必須與您加入 Amazon SageMaker 網域時使用IAM的角色相同。您可以將 SageMaker 受管AmazonSageMakerFullAccess政策連接至 IAM角色,讓使用者授予使用者所需的許可。如果您需要更嚴格的IAM許可,並改用自訂政策,則請授予使用者角色ec2:DescribeVpcEndpointServices許可。 SageMaker Canvas 需要這些許可,以驗證標準建置任務所需的VPC端點是否存在。如果它偵測到這些VPC端點,則標準建置任務會在您的 中預設執行VPC。否則,它們將在預設 AWS 受管 中執行VPC。

如需如何將AmazonSageMakerFullAccessIAM政策連接至使用者IAM角色的指示,請參閱新增和移除IAM身分許可

若要授予使用者IAM角色精細ec2:DescribeVpcEndpointServices權限,請使用下列程序。

  1. 登入 AWS Management Console 並開啟IAM主控台

  2. 在導覽窗格中,選擇角色

  3. 在清單中,選擇您要授予許可的角色名稱。

  4. 選擇許可索引標籤標籤。

  5. 選擇新增許可,然後選擇建立內嵌政策

  6. 選擇 JSON索引標籤並輸入下列政策,以授予ec2:DescribeVpcEndpointServices許可:

    { "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": "ec2:DescribeVpcEndpointServices", "Resource": "*" } ] }
  7. 選擇檢閱政策然後輸入政策的名稱 (例如 VPCEndpointPermissions)。

  8. 選擇 建立政策

使用者IAM的角色現在應具有存取 中設定VPC端點的許可VPC。

(選擇性) 步驟 4:覆寫特定使用者的安全群組設定

如果您是管理員,您可能會希望不同的使用者擁有不同的VPC設定或使用者特定的VPC設定。當您覆寫特定使用者的預設 VPC安全群組設定時,這些設定會傳遞至該使用者的 SageMaker Canvas 應用程式。

您可以在 Studio Classic 中設定新使用者設定檔VPC時,覆寫特定使用者在 中可存取的安全群組。您可以使用 CreateUserProfile SageMaker API呼叫 (或 create_user_profile 搭配 AWS CLIUserSettings,然後在 中SecurityGroups為使用者指定 。