IAM-Berechtigung zur Verwendung der Amazon SageMaker Ground Truth-Konsole erteilen - Amazon SageMaker AI

IAM-Berechtigung zur Verwendung der Amazon SageMaker Ground Truth-Konsole erteilen

Um den Ground-Truth-Bereich der SageMaker-AI-Konsole nutzen zu können, müssen Sie einer Entität die Berechtigung erteilen, auf SageMaker AI und andere AWS-Dienste zuzugreifen, mit denen Ground Truth interagiert. Die erforderlichen Zugriffsberechtigungen für andere AWS Dienste richten sich nach Ihrem Anwendungsfall:

  • Amazon S3-Berechtigungen sind für alle Anwendungsfälle erforderlich. Diese Berechtigungen müssen den Zugriff auf die Amazon-S3-Buckets gewähren, die Eingabe- und Ausgabedaten enthalten.

  • Für den Einsatz von Mitarbeitern eines Anbieters sind AWS Marketplace Berechtigungen erforderlich.

  • Für die Einrichtung eines privaten Arbeitsteams ist eine Amazon Cognito-Berechtigung erforderlich.

  • Um die für die Verschlüsselung der Ausgabedaten verwendeten AWS KMS Schlüssel sehen zu können, sind AWS KMS Berechtigungen erforderlich.

  • Um bereits vorhandene Ausführungsrollen aufzulisten oder eine neue zu erstellen sind IAM-Berechtigungen erforderlich. Darüber hinaus müssen Sie eine PassRole-Berechtigung hinzufügen, damit SageMaker AI die Ausführungsrolle verwenden kann, die zum Starten des Kennzeichnungsauftrags ausgewählt wurde.

In den folgenden Abschnitten sind Richtlinien aufgeführt, die Sie einer Rolle ggf. zuweisen sollten, um eine oder mehrere Funktionen von Ground Truth zu nutzen.

Konsolenberechtigungen für Ground Truth

Um einem Benutzer oder einer Rolle die Berechtigung zu erteilen, mit Hilfe des Ground-Truth-Bereichs der SageMaker-AI-Konsole einen Kennzeichnungsauftrag zu erstellen, weisen Sie dem Benutzer oder der Rolle die folgende Richtlinie zu. Mit der folgenden Richtlinie wird einer IAM-Rolle die Berechtigung erteilt, einen Kennzeichnungsauftrag unter Verwendung eines integrierten Aufgabentyps zu erstellen. Wenn Sie einen benutzerdefinierten Kennzeichnungs-Workflow erstellen möchten, fügen Sie die Richtlinie in Workflow-Berechtigungen für benutzerdefinierte Kennzeichnungsaufträge zu der folgenden Richtlinie hinzu. Jede der in der folgenden Richtlinie enthaltene Statement wird unter diesem Codeblock beschrieben.

JSON
{ "Version": "2012-10-17", "Statement": [ { "Sid": "SageMakerApis", "Effect": "Allow", "Action": [ "sagemaker:*" ], "Resource": "*" }, { "Sid": "KmsKeysForCreateForms", "Effect": "Allow", "Action": [ "kms:DescribeKey", "kms:ListAliases" ], "Resource": "*" }, { "Sid": "AccessAwsMarketplaceSubscriptions", "Effect": "Allow", "Action": [ "aws-marketplace:ViewSubscriptions" ], "Resource": "*" }, { "Sid": "SecretsManager", "Effect": "Allow", "Action": [ "secretsmanager:CreateSecret", "secretsmanager:DescribeSecret", "secretsmanager:ListSecrets" ], "Resource": "*" }, { "Sid": "ListAndCreateExecutionRoles", "Effect": "Allow", "Action": [ "iam:ListRoles", "iam:CreateRole", "iam:CreatePolicy", "iam:AttachRolePolicy" ], "Resource": "*" }, { "Sid": "PassRoleForExecutionRoles", "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": "*", "Condition": { "StringEquals": { "iam:PassedToService": "sagemaker.amazonaws.com" } } }, { "Sid": "GroundTruthConsole", "Effect": "Allow", "Action": [ "groundtruthlabeling:*", "lambda:InvokeFunction", "lambda:ListFunctions", "s3:GetObject", "s3:PutObject", "s3:ListBucket", "s3:GetBucketCors", "s3:PutBucketCors", "s3:ListAllMyBuckets", "cognito-idp:AdminAddUserToGroup", "cognito-idp:AdminCreateUser", "cognito-idp:AdminDeleteUser", "cognito-idp:AdminDisableUser", "cognito-idp:AdminEnableUser", "cognito-idp:AdminRemoveUserFromGroup", "cognito-idp:CreateGroup", "cognito-idp:CreateUserPool", "cognito-idp:CreateUserPoolClient", "cognito-idp:CreateUserPoolDomain", "cognito-idp:DescribeUserPool", "cognito-idp:DescribeUserPoolClient", "cognito-idp:ListGroups", "cognito-idp:ListIdentityProviders", "cognito-idp:ListUsers", "cognito-idp:ListUsersInGroup", "cognito-idp:ListUserPoolClients", "cognito-idp:ListUserPools", "cognito-idp:UpdateUserPool", "cognito-idp:UpdateUserPoolClient" ], "Resource": "*" } ] }

Diese Richtlinie enthält die folgenden Aussagen. Sie können jede dieser Aussagen eingrenzen, indem Sie konkrete Ressourcen auf die Resource Liste für diese Anweisung setzen.

SageMakerApis

Diese Anweisung enthält sagemaker:*. Damit kann der Benutzer alle Aktionen der SageMaker-AI-API durchführen. Sie können den Umfang dieser Richtlinie einschränken, indem Sie Benutzer daran hindern, Aktionen auszuführen, die bei der Erstellung und Überwachung eines Kennzeichnungsauftrags keine Anwendung finden.

KmsKeysForCreateForms

Sie müssen diese Anweisung nur geben, wenn Sie einem Benutzer die Berechtigung erteilen möchten, AWS KMS Schlüssel in der Ground-Truth-Konsole aufzulisten und auszuwählen, die für die Verschlüsselung der Ausgabedaten verwendet werden sollen. Die o.g. Richtlinie gibt dem Benutzer die Berechtigung, im Konto unter AWS KMS beliebige Schlüssel aufzulisten und auszuwählen. Geben Sie unter Resource die Schlüssel-ARN an, um einzuschränken, welche Schlüssel ein Benutzer auflisten und auswählen kann.

SecretsManager

Diese Anweisung gibt dem Benutzer die Berechtigung, in AWS Secrets Manager Ressourcen zu beschreiben, aufzulisten und zu erstellen, die für die Erstellung des Kennzeichnungsauftrags erforderlich sind.

ListAndCreateExecutionRoles

Diese Anweisung erteilt einem Benutzer die Berechtigung, IAM-Rollen in Ihrem Konto aufzulisten (ListRoles) und zu erstellen (CreateRole). Sie gibt dem Benutzer auch die Berechtigung, Richtlinien zu erstellen (CreatePolicy) und sie an Entitäten anzuhängen (AttachRolePolicy). Diese sind erforderlich, um in der Konsole eine Ausführungsrolle aufzulisten, auszuwählen und ggf. zu erstellen.

Wenn Sie bereits eine Ausführungsrolle erstellt haben und den Umfang dieser Anweisung einschränken möchten, so dass Benutzer in der Konsole nur diese Rolle auswählen kann, geben Sie die ARN der Rollen an, die der Benutzer in Resource einsehen können soll, und entfernen Sie die Aktionen CreateRole, CreatePolicy und AttachRolePolicy.

AccessAwsMarketplaceSubscriptions

Diese Berechtigungen sind erforderlich, um Arbeitsteams von Lieferanten anzeigen und auswählen zu können, die Sie bei der Erstellung eines Kennzeichnungsauftrags bereits abonniert haben. Um dem Benutzer die Berechtigung zu geben, Arbeitsteams von Lieferanten zu abonnieren, fügen Sie die Anweisung in Berechtigungen der Arbeitskräfte von Anbietern zu der obigen Richtlinie hinzu

PassRoleForExecutionRoles

Dies ist erforderlich, um dem Ersteller des Kennzeichnungsauftrags die Berechtigung zu geben, eine Vorschau der Worker-Benutzeroberfläche anzuzeigen und zu überprüfen, ob Eingabedaten, Beschriftungen und Anweisungen korrekt angezeigt werden. Diese Anweisung erteilt einer Entität die Berechtigung, die IAM-Ausführungsrolle, die zur Erstellung des Kennzeichnungsauftrags verwendet wurde, an SageMaker AI zu übergeben, um die Worker-Benutzeroberfläche zu rendern und eine Vorschau anzuzeigen. Um den Umfang dieser Richtlinie einzugrenzen, fügen Sie unter Resource die Rollen-ARN der Ausführungsrolle hinzu, mit der der Kennzeichnungsauftrag erstellt wurde.

GroundTruthConsole

  • groundtruthlabeling – Damit kann ein Benutzer Aktionen ausführen, die für die Nutzung bestimmter Funktionen der Ground-Truth-Konsole erforderlich sind. Dazu gehören Berechtigungen zur Beschreibung des Status des Kennzeichnungsauftrags (DescribeConsoleJob), zum Auflisten aller Datensatz-Objekte in der Eingabe-Manifestdatei (ListDatasetObjects), zum Filtern des Datensatzes, wenn die Datensatz-Probenahme ausgewählt ist (RunFilterOrSampleDatasetJob), sowie zum Generieren von Eingabe-Manifestdateien, falls das automatische Daten-Labeling verwendet wird (RunGenerateManifestByCrawlingJob). Diese Aktionen stehen nur bei Verwendung der Ground-Truth-Konsole zur Verfügung und können nicht direkt über eine API aufgerufen werden.

  • lambda:InvokeFunction und lambda:ListFunctions – diese Aktionen geben dem Benutzer die Berechtigung, Lambda-Funktionen aufzulisten und aufzurufen, die zur Ausführung eines benutzerdefinierten Kennzeichnungs-Workflows verwendet werden.

  • s3:* – Alle in dieser Anweisung enthaltenen Amazon S3-Berechtigungen dienen dazu, Amazon-S3-Buckets für die automatisierte Dateneinrichtung anzuzeigen (ListAllMyBuckets), in Amazon S3 auf Eingabedaten zuzugreifen (ListBucket,GetObject), ggf. nach CORS-Richtlinien in Amazon S3 zu suchen und diese zu erstellen (GetBucketCors und PutBucketCors) und Ausgabedateien für Kennzeichnungsaufträge in S3 zu schreiben (PutObject).

  • cognito-idp- Diese Berechtigungen dienen dazu, mithilfe von Amazon Cognito private Arbeitskräfte zu erstellen, anzuzeigen und zu verwalten. Weitere Informationen zu diesen Aktionen finden Sie in den Amazon Cognito API-Referenzen.

Workflow-Berechtigungen für benutzerdefinierte Kennzeichnungsaufträge

Fügen Sie die folgende Anweisung zu einer Richtlinie hinzu, ähnlich der in Konsolenberechtigungen für Ground Truth, um einem Benutzer die Berechtigung zu erteilen, bereits vorhandene Lambda-Funktionen vor und nach der Anmerkung auszuwählen und dabei einen benutzerdefinierten Kennzeichnungs-Workflow zu erstellen.

{ "Sid": "GroundTruthConsoleCustomWorkflow", "Effect": "Allow", "Action": [ "lambda:InvokeFunction", "lambda:ListFunctions" ], "Resource": "*" }

Informationen darüber, wie Sie einer Entität die Berechtigung erteilen, Lambda-Funktionen vor und nach der Annotation zu erstellen und zu testen, finden Sie unter Erforderliche Berechtigungen zur Verwendung von Lambda mit Ground Truth.

Berechtigungen für private Arbeitskräfte

Wenn die folgende Berechtigung zu einer Berechtigungsrichtlinie hinzugefügt wird, gewährt sie Zugriff auf die Erstellung und Verwaltung privater Arbeitskräfte und eines Arbeitsteams mit Hilfe von Amazon Cognito. Diese Berechtigungen sind nicht erforderlich, um OIDC-IdP-Arbeitskräfte zu verwenden.

{ "Effect": "Allow", "Action": [ "cognito-idp:AdminAddUserToGroup", "cognito-idp:AdminCreateUser", "cognito-idp:AdminDeleteUser", "cognito-idp:AdminDisableUser", "cognito-idp:AdminEnableUser", "cognito-idp:AdminRemoveUserFromGroup", "cognito-idp:CreateGroup", "cognito-idp:CreateUserPool", "cognito-idp:CreateUserPoolClient", "cognito-idp:CreateUserPoolDomain", "cognito-idp:DescribeUserPool", "cognito-idp:DescribeUserPoolClient", "cognito-idp:ListGroups", "cognito-idp:ListIdentityProviders", "cognito-idp:ListUsers", "cognito-idp:ListUsersInGroup", "cognito-idp:ListUserPoolClients", "cognito-idp:ListUserPools", "cognito-idp:UpdateUserPool", "cognito-idp:UpdateUserPoolClient" ], "Resource": "*" }

Weitere Informationen zum Erstellen privater Arbeitskräfte mit Hilfe von Amazon Cognito finden Sie unter Amazon Cognito – Arbeitskräfte.

Berechtigungen der Arbeitskräfte von Anbietern

Sie können zu der Richtlinie in IAM-Berechtigung zur Verwendung der Amazon SageMaker Ground Truth-Konsole erteilen die folgende Erklärung hinzufügen, um einer Entität die Berechtigung zu erteilen, Arbeitskräfte von einem Anbieter zu abonnieren.

{ "Sid": "AccessAwsMarketplaceSubscriptions", "Effect": "Allow", "Action": [ "aws-marketplace:Subscribe", "aws-marketplace:Unsubscribe", "aws-marketplace:ViewSubscriptions" ], "Resource": "*" }