Isolieren von Domainressourcen - Amazon SageMaker KI

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Isolieren von Domainressourcen

Wichtig

Benutzerdefinierte IAM-Richtlinien, die es Amazon SageMaker Studio oder Amazon SageMaker Studio Classic ermöglichen, SageMaker Amazon-Ressourcen zu erstellen, müssen auch Berechtigungen zum Hinzufügen von Tags zu diesen Ressourcen gewähren. Die Berechtigung zum Hinzufügen von Tags zu Ressourcen ist erforderlich, da Studio und Studio Classic automatisch alle von ihnen erstellten Ressourcen taggen. Wenn eine IAM-Richtlinie Studio und Studio Classic das Erstellen von Ressourcen, aber kein Tagging erlaubt, können "AccessDenied" Fehler beim Versuch, Ressourcen zu erstellen, auftreten. Weitere Informationen finden Sie unter Erteilen Sie Berechtigungen für das Taggen von SageMaker KI-Ressourcen.

AWS verwaltete Richtlinien für Amazon SageMaker AIdie Berechtigungen zum Erstellen von SageMaker Ressourcen gewähren, beinhalten bereits Berechtigungen zum Hinzufügen von Tags beim Erstellen dieser Ressourcen.

Sie können Ressourcen zwischen den einzelnen Domänen in Ihrem Konto isolieren und dabei eine AWS Identity and Access Management (IAM-) Richtlinie AWS-Region verwenden. Auf die isolierten Ressourcen wird nicht mehr von anderen Domains aus zugegriffen. In diesem Thema werden wir die Voraussetzungen für die IAM-Richtlinie und deren Anwendung besprechen.

Die Ressourcen, die durch diese Richtlinie isoliert werden können, sind die Ressourcentypen, deren Bedingungsschlüssel aws:ResourceTag/${TagKey} oder sagemaker:ResourceTag/${TagKey} enthalten. Eine Referenz zu den SageMaker KI-Ressourcen und den zugehörigen Bedingungsschlüsseln finden Sie unter Aktionen, Ressourcen und Bedingungsschlüssel für Amazon SageMaker AI.

Warnung

Die Ressourcentypen, die die oben genannten Bedingungsschlüssel nicht enthalten (und somit die Aktionen, die die Ressourcentypen verwenden), sind von dieser Richtlinie zur Ressourcenisolierung nicht betroffen. Beispielsweise enthält der Ressourcentyp pipeline-execution die oben genannten Bedingungsschlüssel nicht und ist von dieser Richtlinie nicht betroffen. Daher werden die folgenden Aktionen mit dem Ressourcentyp „pipeline-execution“ für die Ressourcenisolierung nicht unterstützt:

  • DescribePipelineExecution

  • StopPipelineExecution

  • UpdatePipelineExecution

  • RetryPipelineExecution

  • DescribePipelineDefinitionForExecution

  • ListPipelineExecutionSteps

  • SendPipelineExecutionStepSuccess

  • SendPipelineExecutionStepFailure

Das folgende Thema zeigt, wie Sie eine neue IAM-Richtlinie erstellen, die den Zugriff auf Ressourcen in der Domain auf Benutzerprofile mit dem Domain-Tag beschränkt, und wie Sie diese Richtlinie der IAM-Ausführungsrolle der Domain zuordnen. Sie müssen diesen Vorgang für jede Domain in Ihrem Konto wiederholen. Weitere Informationen zu Domain-Tags und zum Auffüllen dieser Tags finden Sie unter Übersicht über mehrere Domains

Konsole

Der folgende Abschnitt zeigt, wie Sie eine neue IAM-Richtlinie erstellen, die den Zugriff auf Ressourcen in der Domain auf Benutzerprofile mit dem Domain-Tag beschränkt, und wie Sie diese Richtlinie über die Amazon SageMaker AI-Konsole an die IAM-Ausführungsrolle der Domain anhängen.

Anmerkung

Diese Richtlinie funktioniert nur in Domains, die Amazon SageMaker Studio Classic als Standarderlebnis verwenden.

  1. Erstellen Sie eine IAM-Richtlinie StudioDomainResourceIsolationPolicy-domain-id mit dem Namen des folgenden JSON-Richtliniendokuments, indem Sie die Schritte unter Erstellen der IAM-Richtlinien (Konsole) ausführen.

    JSON
    { "Version":"2012-10-17", "Statement": [ { "Sid": "CreateAPIs", "Effect": "Allow", "Action": "sagemaker:Create*", "NotResource": [ "arn:aws:sagemaker:*:*:domain/*", "arn:aws:sagemaker:*:*:user-profile/*", "arn:aws:sagemaker:*:*:space/*" ] }, { "Sid": "ResourceAccessRequireDomainTag", "Effect": "Allow", "Action": [ "sagemaker:Update*", "sagemaker:Delete*", "sagemaker:Describe*" ], "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/sagemaker:domain-arn": "domain-arn" } } }, { "Sid": "AllowActionsThatDontSupportTagging", "Effect": "Allow", "Action": [ "sagemaker:DescribeImageVersion", "sagemaker:UpdateImageVersion", "sagemaker:DeleteImageVersion", "sagemaker:DescribeModelCardExportJob", "sagemaker:DescribeAction" ], "Resource": "*" }, { "Sid": "DeleteDefaultApp", "Effect": "Allow", "Action": "sagemaker:DeleteApp", "Resource": "arn:aws:sagemaker:*:*:app/domain-id/*/jupyterserver/default" } ] }
  2. Ordnen Sie die StudioDomainResourceIsolationPolicy-domain-id-Richtlinie der Ausführungsrolle der Domain zu, indem Sie die Schritte unter Ändern einer Rolle (Konsole) ausführen.

AWS CLI

Im folgenden Abschnitt wird gezeigt, wie Sie eine neue IAM-Richtlinie erstellen, die den Zugriff auf Ressourcen in der Domain auf Benutzerprofile mit dem Domain-Tag beschränkt, und wie Sie diese Richtlinie der Ausführungsrolle der Domain zuordnen, und zwar über den AWS CLI.

Anmerkung

Diese Richtlinie funktioniert nur in Domains, die Amazon SageMaker Studio Classic als Standarderlebnis verwenden.

  1. Erstellen Sie eine lokale Datei mit dem Namen StudioDomainResourceIsolationPolicy-domain-id und den folgenden Inhalten:

    JSON
    { "Version":"2012-10-17", "Statement": [ { "Sid": "CreateAPIs", "Effect": "Allow", "Action": "sagemaker:Create*", "NotResource": [ "arn:aws:sagemaker:*:*:domain/*", "arn:aws:sagemaker:*:*:user-profile/*", "arn:aws:sagemaker:*:*:space/*" ] }, { "Sid": "ResourceAccessRequireDomainTag", "Effect": "Allow", "Action": [ "sagemaker:Update*", "sagemaker:Delete*", "sagemaker:Describe*" ], "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/sagemaker:domain-arn": "domain-arn" } } }, { "Sid": "AllowActionsThatDontSupportTagging", "Effect": "Allow", "Action": [ "sagemaker:DescribeImageVersion", "sagemaker:UpdateImageVersion", "sagemaker:DeleteImageVersion", "sagemaker:DescribeModelCardExportJob", "sagemaker:DescribeAction" ], "Resource": "*" }, { "Sid": "DeleteDefaultApp", "Effect": "Allow", "Action": "sagemaker:DeleteApp", "Resource": "arn:aws:sagemaker:*:*:app/domain-id/*/jupyterserver/default" } ] }
  2. So erstellen Sie eine IAM-Richtlinie mithilfe der StudioDomainResourceIsolationPolicy-domain-id.

    aws iam create-policy --policy-name StudioDomainResourceIsolationPolicy-domain-id --policy-document file://StudioDomainResourceIsolationPolicy-domain-id
  3. Ordnen Sie die neu erstellte Richtlinie einer neuen oder vorhandenen Rolle zu, die als Ausführungsrolle der Domain verwendet wird.

    aws iam attach-role-policy --policy-arn arn:aws:iam:account-id:policy/StudioDomainResourceIsolationPolicy-domain-id --role-name domain-execution-role