Verbinden von Amazon SageMaker Studio und Studio Classic über einen VPC-Schnittstellenendpunkt
Sie können eine Verbindung zu Amazon SageMaker Studio und Amazon SageMaker Studio Classic von Ihrer Amazon Virtual Private Cloud (Amazon VPC) aus über einen Schnittstellenendpunkt in Ihrer VPC herstellen, anstatt eine Verbindung über das Internet herzustellen. Wenn Sie einen VPC-Schnittstellenendpunkt (Schnittstellenendpunkt) verwenden, erfolgt die Kommunikation zwischen Ihrer VPC und Studio oder Studio Classic vollständig und sicher über das AWS-Netzwerk.
Studio und Studio Classic unterstützen Schnittstellenendpunkte, die von AWS PrivateLink betrieben werden. Jeder Schnittstellenendpunkt wird durch eine oder mehrere Elastic-Netzwerkschnittstellen mit privaten IP-Adressen in Ihren VPC-Subnetzen repräsentiert.
Studio und Studio Classic unterstützen Schnittstellenendpunkte in allen AWS-Regionen, in denen sowohl Amazon SageMaker AI
Themen
Erstellen eines VPC-Endpunktes
Sie können einen Schnittstellenendpunkt erstellen, um eine Verbindung zu Studio oder Studio Classic entweder über die AWS-Konsole oder über AWS Command Line Interface (AWS CLI) herzustellen. Anweisungen finden Sie unter Erstellen eines Schnittstellenendpunkts. Stellen Sie sicher, dass Sie Schnittstellenendpunkte für alle Subnetze in Ihrer VPC erstellen, von denen Sie eine Verbindung zu Studio und Studio Classic herstellen möchten.
Wenn Sie einen Schnittstellenendpunkt erstellen, stellen Sie sicher, dass die Sicherheitsgruppen auf Ihrem Endpunkt eingehenden Zugriff auf HTTPS-Verkehr von den mit Studio und Studio Classic verknüpften Sicherheitsgruppen zulassen. Weitere Informationen finden Sie unter Steuerung des Zugriffs auf Services mit VPC-Endpunkten.
Anmerkung
Erstellen Sie nicht nur einen Schnittstellenendpunkt für die Verbindung mit Studio und Studio Classic, sondern auch einen Schnittstellenendpunkt für die Verbindung mit der Amazon-SageMaker-API. Wenn Benutzer CreatePresignedDomainUrl aufrufen, um die URL für die Verbindung mit Studio und Studio Classic abzurufen, erfolgt dieser Aufruf über den Schnittstellenendpunkt, der für die Verbindung mit der SageMaker-API verwendet wird.
Wenn Sie den Schnittstellenendpunkt erstellen, geben Sie aws.sagemaker. als Service-Namen für Studio oder Studio Classic an. Nachdem Sie den Schnittstellenendpunkt erstellt haben, aktivieren Sie privates DNS für Ihren Endpunkt. Wenn Sie sich von der VPC aus mit Studio oder Studio Classic verbinden, indem Sie das SageMaker-API, die AWS CLI oder die Konsole verwenden, stellen Sie die Verbindung über den Schnittstellenendpunkt her und nicht über das öffentliche Internet. Sie müssen auch ein benutzerdefiniertes DNS mit privaten gehosteten Zonen für den Amazon VPC-Endpunkt einrichten, damit Studio oder Studio Classic über den Region.studioapi.sagemaker.$region.amazonaws.com-Endpunkt auf die SageMaker-API zugreifen kann, anstatt die VPC-Endpunkt-URL zu verwenden. Anweisungen zum Einrichten einer privat gehosteten Zone finden Sie unter Arbeiten mit privat gehosteten Zonen.
Erstellen einer VPC-Endpunktrichtlinie für Studio oder Studio Classic
Sie können eine Amazon VPC-Endpunktrichtlinie an die Schnittstellen-VPC-Endpunkte anfügen, die Sie für die Verbindung mit SageMaker Studio verwenden. Die Endpunktrichtlinie steuert den Zugriff auf Studio oder Studio Classic. Sie können folgende Formen angeben:
-
Prinzipal, der die Aktionen ausführen kann.
-
Aktionen, die ausgeführt werden können
-
Die Ressourcen, für die Aktionen ausgeführt werden können.
Um einen VPC-Endpunkt mit Studio oder Studio Classic zu verwenden, muss Ihre Endpunktrichtlinie den CreateApp-Vorgang auf dem App-Typ KernelGateway zulassen. Dadurch kann der Datenverkehr, der über den VPC-Endpunkt geleitet wird, die CreateApp API aufrufen. Das folgende Beispiel für eine VPC-Endpunktrichtlinie zeigt, wie der CreateApp-Vorgang zugelassen werden kann.
{ "Statement": [ { "Action": "sagemaker:CreateApp", "Effect": "Allow", "Resource": "arn:aws:sagemaker:us-west-2:acct-id:app/domain-id/*", "Principal": "*" } ] }
Weitere Informationen finden Sie unter Steuern des Zugriffs auf Services mit VPC-Endpunkten.
Das folgende Beispiel für eine VPC-Endpunktrichtlinie legt fest, dass alle Benutzer, die Zugriff auf den Endpunkt haben, auf die Benutzerprofile in der SageMaker-AI-Domain mit der angegebenen Domain-ID zugreifen dürfen. Der Zugriff auf andere Domains wird abgelehnt.
{ "Statement": [ { "Action": "sagemaker:CreatePresignedDomainUrl", "Effect": "Allow", "Resource": "arn:aws:sagemaker:us-west-2:acct-id:user-profile/domain-id/*", "Principal": "*" } ] }
Zugriff nur von Ihrer VPC aus zulassen
Benutzer außerhalb Ihrer VPC können sich über das Internet mit Studio oder Studio Classic verbinden, auch wenn Sie in Ihrer VPC einen Schnittstellenendpunkt eingerichtet haben.
Um den Zugriff nur auf Verbindungen zu ermöglichen, die von Ihrer VPC aus hergestellt wurden, erstellen Sie eine entsprechende AWS Identity and Access Management (IAM-) Richtlinie. Fügen Sie diese Richtlinie zu jedem Benutzer, jeder Gruppe oder Rolle hinzu, die für den Zugriff auf Studio oder Studio Classic verwendet wird. Dieses Feature wird nur bei Verwendung des IAM-Modus für die Authentifizierung unterstützt und ist im Modus IAM Identity Center nicht verfügbar. Die folgenden Beispiele veranschaulichen, wie solche Richtlinien erstellt werden.
Wichtig
Wenn Sie eine IAM-Richtlinie ähnlich einem der folgenden Beispiele anwenden, können Benutzer nicht über die SageMaker-AI-Konsole auf Studio oder Studio Classic oder die angegebenen SageMaker-APIs zugreifen. Um auf Studio oder Studio Classic zuzugreifen, müssen Benutzer eine vorsignierte URL verwenden oder die SageMaker-APIs direkt aufrufen.
Beispiel 1: Verbindungen nur innerhalb des Subnetzes eines Schnittstellenendpunkts zulassen
Die folgende Richtlinie erlaubt nur Verbindungen zu Anrufern innerhalb des Teilnetzes, in dem Sie den Schnittstellenendpunkt erstellt haben.
Beispiel 2: Verbindungen nur über Schnittstellenendpunkte zulassen mit aws:sourceVpce
Die folgende Richtlinie erlaubt nur Verbindungen zu Verbindungen, die über die durch den aws:sourceVpce Bedingungsschlüssel angegebenen Schnittstellenendpunkte hergestellt werden. Beispielsweise könnte der erste Schnittstellenendpunkt den Zugriff über das SageMaker-AI-Konsole ermöglichen. Der zweite Schnittstellenendpunkt könnte den Zugriff über die SageMaker-API ermöglichen.
Diese Richtlinie muss auch die Aktion DescribeUserProfile enthalten. Normalerweise rufen Sie DescribeUserProfile auf, um sicherzustellen, dass der Status des Benutzerprofils InService ist, bevor Sie versuchen, eine Verbindung zur Domain herzustellen. Zum Beispiel:
aws sagemaker describe-user-profile \ --domain-iddomain-id\ --user-profile-nameprofile-name
Antwort:
{ "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-iddomain-id\ --user-profile-nameprofile-name
Antwort:
{ "AuthorizedUrl": "https://domain-id.studio.us-west-2.sagemaker.aws/auth?token=AuthToken" }
Wenn Sie eine Version des AWS SDK verwenden, die vor dem 13. August 2018 veröffentlicht wurde, müssen Sie für diese beiden Aufrufe die Endpunkt-URL im Aufruf angeben. Das folgende Beispiel zeigt einen Aufruf an create-presigned-domain-url:
aws sagemaker create-presigned-domain-url --domain-iddomain-id\ --user-profile-nameprofile-name\ --endpoint-urlvpc-endpoint-id.api.sagemaker.Region.vpce.amazonaws.com
Beispiel 3: Verbindungen von IP-Adressen zulassen mit aws:SourceIp
Die folgende Richtlinie erlaubt nur Verbindungen aus dem angegebenen IP-Adressbereich unter Verwendung des aws:SourceIp Bedingungsschlüssels.
Beispiel 4: Verbindungen von IP-Adressen über einen Schnittstellenendpunkt zulassen mit aws:VpcSourceIp
Wenn Sie über einen Schnittstellenendpunkt auf Studio oder Studio Classic zugreifen, können Sie den aws:VpcSourceIp-Bedingungsschlüssel verwenden, um Verbindungen nur aus dem angegebenen IP-Adressbereich innerhalb des Subnetzes zuzulassen, in dem Sie den Schnittstellenendpunkt erstellt haben, wie in der folgenden Richtlinie dargestellt: