Installieren Sie Richtlinien und Berechtigungen für lokale Jupyter-Umgebungen - 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.

Installieren Sie Richtlinien und Berechtigungen für lokale Jupyter-Umgebungen

Sie müssen die erforderlichen Berechtigungen und Richtlinien einrichten, um Notebook-Jobs in einer lokalen Jupyter-Umgebung zu planen. Der IAM-Benutzer benötigt Berechtigungen, um Jobs an SageMaker KI zu senden, und die IAM-Rolle, die der Notebook-Job selbst annimmt, benötigt je nach Job-Aufgaben Berechtigungen für den Zugriff auf Ressourcen. Im Folgenden finden Sie Anweisungen zur Einrichtung der erforderlichen Berechtigungen und Richtlinien.

Sie müssen zwei Berechtigungssätze installieren. Das folgende Diagramm zeigt die Berechtigungsstruktur, mit der Sie Notebook-Jobs in einer lokalen Jupyter-Umgebung planen können. Der IAM-Benutzer muss IAM-Berechtigungen einrichten, um Jobs an KI senden zu können. SageMaker Sobald der Benutzer den Notebook-Auftrag übermittelt hat, nimmt der Auftrag selbst eine IAM-Rolle an, die je nach Auftragsaufgabe über Berechtigungen für den Zugriff auf Ressourcen verfügt.

Die vom Benutzer benötigten IAM-Berechtigungen und die IAM-Rolle, die der Job bei der Ausführung eines Notebooks einnimmt.

Die folgenden Abschnitte helfen Ihnen bei der Installation der erforderlichen Richtlinien und Berechtigungen sowohl für den IAM-Benutzer als auch für die Auftragausführungsrolle.

IAM-Benutzerberechtigungen

Berechtigungen zum Einreichen von Aufträgen an KI SageMaker

Führen Sie die folgenden Schritte aus, um Berechtigungen zum Abrufen von Aufträgen hinzuzufügen:

  1. Öffnen Sie die IAM-Konsole.

  2. Wählen Sie im linken Bereich Benutzer.

  3. Suchen Sie den IAM-Benutzer für Ihren Notebook-Auftrag und wählen Sie den Benutzernamen aus.

  4. Wählen Sie Berechtigungen hinzufügen und dann Inline-Richtlinie erstellen aus dem Dropdown-Menü aus.

  5. Wählen Sie den Tab JSON.

  6. Kopieren Sie die folgende Richtlinie und fügen Sie sie ein:

    { "Version": "2012-10-17", "Statement": [ { "Sid": "EventBridgeSchedule", "Effect": "Allow", "Action": [ "events:TagResource", "events:DeleteRule", "events:PutTargets", "events:DescribeRule", "events:EnableRule", "events:PutRule", "events:RemoveTargets", "events:DisableRule" ], "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/sagemaker:is-scheduling-notebook-job": "true" } } }, { "Sid": "IAMPassrole", "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::*:role/*", "Condition": { "StringLike": { "iam:PassedToService": [ "sagemaker.amazonaws.com", "events.amazonaws.com" ] } } }, { "Sid": "IAMListRoles", "Effect": "Allow", "Action": "iam:ListRoles", "Resource": "*" }, { "Sid": "S3ArtifactsAccess", "Effect": "Allow", "Action": [ "s3:PutEncryptionConfiguration", "s3:CreateBucket", "s3:PutBucketVersioning", "s3:ListBucket", "s3:PutObject", "s3:GetObject", "s3:GetEncryptionConfiguration", "s3:DeleteObject", "s3:GetBucketLocation" ], "Resource": [ "arn:aws:s3:::sagemaker-automated-execution-*" ] }, { "Sid": "S3DriverAccess", "Effect": "Allow", "Action": [ "s3:ListBucket", "s3:GetObject", "s3:GetBucketLocation" ], "Resource": [ "arn:aws:s3:::sagemakerheadlessexecution-*" ] }, { "Sid": "SagemakerJobs", "Effect": "Allow", "Action": [ "sagemaker:DescribeTrainingJob", "sagemaker:StopTrainingJob", "sagemaker:DescribePipeline", "sagemaker:CreateTrainingJob", "sagemaker:DeletePipeline", "sagemaker:CreatePipeline" ], "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/sagemaker:is-scheduling-notebook-job": "true" } } }, { "Sid": "AllowSearch", "Effect": "Allow", "Action": "sagemaker:Search", "Resource": "*" }, { "Sid": "SagemakerTags", "Effect": "Allow", "Action": [ "sagemaker:ListTags", "sagemaker:AddTags" ], "Resource": [ "arn:aws:sagemaker:*:*:pipeline/*", "arn:aws:sagemaker:*:*:space/*", "arn:aws:sagemaker:*:*:training-job/*", "arn:aws:sagemaker:*:*:user-profile/*" ] }, { "Sid": "ECRImage", "Effect": "Allow", "Action": [ "ecr:GetAuthorizationToken", "ecr:BatchGetImage" ], "Resource": "*" } ] }

AWS KMS Berechtigungsrichtlinie (optional)

Standardmäßig werden die Amazon S3-Eingabe- und Ausgabe-Buckets mit serverseitiger Verschlüsselung verschlüsselt. Sie können jedoch einen benutzerdefinierten KMS-Schlüssel angeben, um Ihre Daten im Amazon S3-Ausgabe-Bucket und das an den Notebook-Auftrag angehängte Speichervolume zu verschlüsseln.

Wenn Sie einen benutzerdefinierten KMS-Schlüssel verwenden möchten, wiederholen Sie die vorherigen Anweisungen, fügen Sie die folgende Richtlinie hinzu und geben Sie Ihren eigenen KMS-Schlüssel-ARN an.

{ "Version": "2012-10-17", "Statement": [ { "Effect":"Allow", "Action":[ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:DescribeKey", "kms:CreateGrant" ], "Resource":"your_KMS_key_ARN" } ] }

Berechtigungen der Auftragsausführungsrolle

Vertrauensstellungen

Führen Sie die folgenden Schritte aus, um die Vertrauensbeziehungen der Rolle für die Auftragsausführung zu ändern:

  1. Öffnen Sie die IAM-Konsole.

  2. Wählen Sie im linken Navigationsbereich Rollen aus.

  3. Suchen Sie die Auftragsausführungsrolle für Ihren Notebook-Auftrag und wählen Sie den Rollennamen aus.

  4. Wählen Sie die Registerkarte Trust relationships (Vertrauensstellungen).

  5. Wählen Sie Vertrauensrichtlinie bearbeiten aus.

  6. Kopieren Sie die folgende Richtlinie und fügen Sie sie ein:

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": [ "sagemaker.amazonaws.com", "events.amazonaws.com" ] }, "Action": "sts:AssumeRole" } ] }

Zusätzliche Berechtigungen

Nach dem Absenden benötigt der Notebook-Auftrag Berechtigungen für den Zugriff auf Ressourcen. Die folgenden Anweisungen zeigen Ihnen, wie Sie einen Mindestsatz an Berechtigungen hinzufügen. Fügen Sie bei Bedarf weitere Berechtigungen hinzu, die den Anforderungen Ihres Notebook-Auftrags entsprechen. Führen Sie zum Hinzufügen von Berechtigungen für Ihre Auftragsausführungsrolle die folgenden Schritte aus:

  1. Öffnen Sie die IAM-Konsole.

  2. Wählen Sie im linken Navigationsbereich Rollen aus.

  3. Suchen Sie die Jobausführungsrolle für Ihren Notebook-Auftrag und wählen Sie den Rollennamen aus.

  4. Wählen Sie Berechtigungen hinzufügen und dann Inline-Richtlinie erstellen aus dem Dropdown-Menü aus.

  5. Wählen Sie den Tab JSON.

  6. Kopieren Sie die folgende Richtlinie und fügen Sie sie ein:

    { "Version": "2012-10-17", "Statement": [ { "Sid": "PassroleForJobCreation", "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::*:role/*", "Condition": { "StringLike": { "iam:PassedToService": "sagemaker.amazonaws.com" } } }, { "Sid": "S3ForStoringArtifacts", "Effect": "Allow", "Action": [ "s3:PutObject", "s3:GetObject", "s3:ListBucket", "s3:GetBucketLocation" ], "Resource": "arn:aws:s3:::sagemaker-automated-execution-*" }, { "Sid": "S3DriverAccess", "Effect": "Allow", "Action": [ "s3:ListBucket", "s3:GetObject", "s3:GetBucketLocation" ], "Resource": [ "arn:aws:s3:::sagemakerheadlessexecution-*" ] }, { "Sid": "SagemakerJobs", "Effect": "Allow", "Action": [ "sagemaker:StartPipelineExecution", "sagemaker:CreateTrainingJob" ], "Resource": "*" }, { "Sid": "ECRImage", "Effect": "Allow", "Action": [ "ecr:GetDownloadUrlForLayer", "ecr:BatchGetImage", "ecr:GetAuthorizationToken", "ecr:BatchCheckLayerAvailability" ], "Resource": "*" } ] }
  7. Fügen Sie Berechtigungen für andere Ressourcen hinzu, auf die Ihr Notebook-Auftrag zugreift.

  8. Wählen Sie Richtlinie prüfen.

  9. Geben Sie einen Namen für Ihre Richtlinie ein.

  10. Wählen Sie Richtlinie erstellen aus.