翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
インターフェイス VPC エンドポイント経由で Amazon SageMaker Studio と Studio Classic に接続する
インターネット経由で接続する代わりに、VPC のインターフェイスエンドポイントを介して Amazon Virtual Private Cloud (Amazon VPC) から Amazon SageMaker Studio や Amazon SageMaker Studio Classic に接続できます。インターフェイス VPC エンドポイント (インターフェイスエンドポイント) を使用する場合、VPC と Studio または Studio Classic 間の通信は、 AWS ネットワーク内で完全かつ安全に実施されます。
Studio と Studio Classic は、AWS PrivateLink を基盤とするインターフェイスエンドポイントをサポートしています。各インターフェイスエンドポイントは、VPC サブネット内の 1 つ以上の Elastic Network Interface とプライベート IP アドレスで表されます。
Studio と Studio Classic は、Amazon SageMaker AI
VPC エンドポイントの作成
コンソールまたは AWS AWS Command Line Interface () を使用して Studio または Studio Classic に接続するインターフェイスエンドポイントを作成できますAWS CLI。手順については、「インターフェイスエンドポイントの作成」を参照してください。Studio や Studio Classic に接続する VPC 内のすべてのサブネットに対してインターフェイスエンドポイントを作成する必要があります。
インターフェイスエンドポイントを作成する際は、Studio や Studio Classic に関連付けられたセキュリティグループからの HTTPS トラフィックへのインバウンドアクセスを、エンドポイントのセキュリティグループが許可していることを確認します。詳細については、「VPC エンドポイントでサービスへのアクセスを制御する」を参照してください。
注記
Studio や Studio Classic に接続するためのインターフェイスエンドポイントを作成する以外にも、Amazon SageMaker API に接続するためのインターフェイスエンドポイントを作成する必要があります。ユーザーが CreatePresignedDomainUrl
を呼び出して Studio や Studio Classic に接続するための URL を取得する場合、その呼び出しは SageMaker API への接続に使用されるインターフェイスエンドポイントを経由します。
インターフェイスエンドポイントを作成するときに、サービス名として aws.sagemaker.
を指定します。インターフェイスエンドポイントを作成したら、エンドポイントのプライベート DNS を有効にします。SageMaker API、 AWS CLI、またはコンソールを使用して VPC 内から Studio または Studio Classic に接続する場合、パブリックインターネットではなくインターフェイスエンドポイントを介して接続します。Studio や Studio Classic が VPC エンドポイント URL ではなく Region
.studioapi.sagemaker.$region.amazonaws.com
エンドポイントを使用して SageMaker API にアクセスできるように、プライベートホストゾーンを使用して Amazon VPC エンドポイントにカスタム DNS を設定する必要があります。プライベートホストゾーンの設定手順については、「プライベートホストゾーンの使用」を参照してください。
Studio または Studio Classic の VPC エンドポイントポリシーを作成する
Studio または Studio Classic への接続に使用するインターフェイス VPC エンドポイントには、Amazon VPC エンドポイントポリシーをアタッチできます。エンドポイントポリシーは、Studio または Studio Classic へのアクセスを制御します。以下を指定することができます。
-
アクションを実行できるプリンシパル。
-
実行可能なアクション。
-
アクションを実行できるリソース。
Studio または Studio Classic で VPC エンドポイントを使用するには、KernelGateway アプリケーションタイプでの CreateApp
オペレーションをエンドポイントポリシーで許可する必要があります。これにより、VPC エンドポイントを経由してルーティングされるトラフィックで CreateApp
API を呼び出すことができます。次の VPC エンドポイントポリシーの例は、CreateApp
オペレーションを許可する方法を示しています。
{ "Statement": [ { "Action": "sagemaker:CreateApp", "Effect": "Allow", "Resource": "arn:aws:sagemaker:us-west-2:acct-id:app/domain-id/*", "Principal": "*" } ] }
詳細については、「VPC エンドポイントでサービスへのアクセスを制御する」を参照してください。
次の VPC エンドポイントポリシーの例では、エンドポイントにアクセスできるすべてのユーザーが、指定されたドメイン ID を持つ SageMaker AI ドメインのユーザープロファイルにアクセスすることを許可するように指定しています。他のドメインへのアクセスは拒否されます。
{ "Statement": [ { "Action": "sagemaker:CreatePresignedDomainUrl", "Effect": "Allow", "Resource": "arn:aws:sagemaker:us-west-2:acct-id:user-profile/domain-id/*", "Principal": "*" } ] }
VPC 内からのアクセスのみを許可する
VPC にインターフェイスエンドポイントを設定した場合でも、VPC 外部のユーザーはインターネットを介して Studio または Studio Classic に接続できます。
VPC 内からの接続のみにアクセスを許可するには、そのような趣旨の AWS Identity and Access Management (IAM) ポリシーを作成します。このポリシーを Studio または Studio Classic へのアクセスに使用されるすべてのユーザー、グループ、またはロールに追加します。この機能は、認証に IAM モードを使用する場合にのみサポートされ、IAM アイデンティティセンターモードではサポートされません。次の例は、そのようなポリシーの作成方法を示しています。
重要
次のいずれかの例のような IAM ポリシーを適用すると、ユーザーは SageMaker AI コンソールから Studio、Studio Classic、または指定された SageMaker APIs にアクセスできなくなります。Studio または Studio Classic にアクセスするには、ユーザーは署名済み URL を使用するか、SageMaker API を直接呼び出す必要があります。
例 1: インターフェイスエンドポイントのサブネット内でのみ接続を許可する
以下のポリシーでは、インターフェイスエンドポイントを作成したサブネット内の発信者にのみ接続を許可します。
{ "Id": "sagemaker-studio-example-1", "Version": "2012-10-17", "Statement": [ { "Sid": "Enable SageMaker Studio Access", "Effect": "Allow", "Action": [ "sagemaker:CreatePresignedDomainUrl", "sagemaker:DescribeUserProfile" ], "Resource": "*", "Condition": { "StringEquals": { "aws:SourceVpc":
"vpc-111bbaaa"
} } } ] }
例 2: aws:sourceVpce
を使用してインターフェイスエンドポイントを介した接続のみを許可する
以下のポリシーでは、aws:sourceVpce
条件キーで指定したインターフェイスエンドポイントを介して作成された接続のみを許可します。例えば、最初のインターフェイスエンドポイントは SageMaker AI コンソールを介したアクセスを許可できます。2 番目のインターフェイスエンドポイントは SageMaker API を介したアクセスを許可します。
{ "Id": "sagemaker-studio-example-2", "Version": "2012-10-17", "Statement": [ { "Sid": "Enable SageMaker Studio Access", "Effect": "Allow", "Action": [ "sagemaker:CreatePresignedDomainUrl", "sagemaker:DescribeUserProfile" ], "Resource": "*", "Condition": { "ForAnyValue:StringEquals": { "aws:sourceVpce": [
"vpce-111bbccc"
,"vpce-111bbddd"
] } } } ] }
このポリシーには DescribeUserProfile
アクションが含まれます。通常は、DescribeUserProfile
を呼び出して、ユーザープロファイルのステータスが InService
であることを確認してから、ドメインへの接続を試みます。例:
aws sagemaker describe-user-profile \ --domain-id
domain-id
\ --user-profile-nameprofile-name
レスポンス:
{ "DomainId": "domain-id", "UserProfileArn": "arn:aws:sagemaker:us-west-2:acct-id:user-profile/domain-id/profile-name", "UserProfileName": "profile-name", "HomeEfsFileSystemUid": "200001", "Status": "InService", "LastModifiedTime": 1605418785.555, "CreationTime": 1605418477.297 }
aws sagemaker create-presigned-domain-url --domain-id
domain-id
\ --user-profile-nameprofile-name
レスポンス:
{ "AuthorizedUrl": "https://domain-id.studio.us-west-2.sagemaker.aws/auth?token=AuthToken" }
これらの呼び出しの両方で、2018 年 8 月 13 日より前にリリースされたバージョンの AWS SDK を使用している場合は、呼び出しでエンドポイント URL を指定する必要があります。例えば、以下の例は、create-presigned-domain-url
への呼び出しを示しています。
aws sagemaker create-presigned-domain-url --domain-id
domain-id
\ --user-profile-nameprofile-name
\ --endpoint-urlvpc-endpoint-id
.api.sagemaker.Region
.vpce.amazonaws.com
例 3: aws:SourceIp
を使用した IP アドレスからの接続を許可する
以下のポリシーでは、aws:SourceIp
条件キーを使用した、指定範囲の IP アドレスからの接続のみを許可します。
{ "Id": "sagemaker-studio-example-3", "Version": "2012-10-17", "Statement": [ { "Sid": "Enable SageMaker Studio Access", "Effect": "Allow", "Action": [ "sagemaker:CreatePresignedDomainUrl", "sagemaker:DescribeUserProfile" ], "Resource": "*", "Condition": { "IpAddress": { "aws:SourceIp": [
"192.0.2.0/24"
,"203.0.113.0/24"
] } } } ] }
例 4: aws:VpcSourceIp
を使用してインターフェイスエンドポイント経由の IP アドレスからの接続を許可する
インターフェイスエンドポイントを介して Studio または Studio Classic にアクセスする場合は、以下のポリシーに示されるとおり、aws:VpcSourceIp
条件キーを使用することによって、インターフェイスエンドポイントを作成したサブネット内の指定された範囲の IP アドレスからの接続のみを許可することができます。
{ "Id": "sagemaker-studio-example-4", "Version": "2012-10-17", "Statement": [ { "Sid": "Enable SageMaker Studio Access", "Effect": "Allow", "Action": [ "sagemaker:CreatePresignedDomainUrl", "sagemaker:DescribeUserProfile" ], "Resource": "*", "Condition": { "IpAddress": { "aws:VpcSourceIp": [
"192.0.2.0/24"
,"203.0.113.0/24"
] }, "StringEquals": { "aws:SourceVpc":"vpc-111bbaaa"
} } } ] }