Berechtigungen und Sicherheit in Amazon Augmented AI - Amazon SageMaker

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.

Berechtigungen und Sicherheit in Amazon Augmented AI

Wenn Sie Amazon Augmented AI (Amazon A2I) verwenden, um einen Workflow zur Überprüfung durch Mitarbeiter für Ihre ML/KI-Anwendung zu erstellen, erstellen und konfigurieren Sie Ressourcen in Amazon, SageMaker z. B. eine menschliche Belegschaft und Vorlagen für Arbeiteraufgaben. Um einen Human Loop zu konfigurieren und zu starten, integrieren Sie Amazon A2I entweder in andere AWS Dienste wie Amazon Textract oder Amazon Rekognition oder verwenden die Amazon Augmented AI Runtime. API Um einen menschlichen Überprüfungs-Workflow zu erstellen und einen menschlichen Kreislauf in Gang zu setzen, müssen Sie Ihrer Rolle oder Ihrem Benutzer AWS Identity and Access Management (IAM) bestimmte Richtlinien zuordnen. Das heißt:

  • Wenn Sie am oder nach dem 12. Januar 2020 eine menschliche Schleife mit Bildeingabedaten starten, müssen Sie dem Amazon S3 S3-Bucket, der Ihre Eingabedaten enthält, eine CORS Header-Richtlinie hinzufügen. Weitere Informationen hierzu finden Sie unter CORSErlaubnisanforderung.

  • Wenn Sie eine Flow-Definition erstellen, müssen Sie eine Rolle bereitstellen, die die Berechtigung für den Zugriff auf sowohl zum Lesen von Objekten, die in einer Benutzeroberfläche für menschliche Aufgaben gerendert werden, als auch zum Schreiben der Ergebnisse der Prüfung durch Menschen gewährt.

    Dieser Rolle muss auch eine Vertrauensrichtlinie beigefügt sein, die die SageMaker Erlaubnis zur Übernahme der Rolle erteilt. Auf diese Weise kann Amazon A2I Aktionen entsprechend den Berechtigungen ausführen, die Sie der Rolle anfügen.

    Unter Fügen Sie der IAM Rolle, die zur Erstellung einer Flow-Definition verwendet wurde, Berechtigungen hinzu finden Sie Beispielrichtlinien, die Sie ändern und der Rolle anfügen können, die Sie zum Erstellen einer Flow-Definition verwenden. Dies sind die Richtlinien, die der IAM Rolle zugeordnet sind, die im Bereich Human Review Workflows im Amazon A2I-Bereich der SageMaker Konsole erstellt wurde.

  • Um menschliche Schleifen zu erstellen und zu starten, verwenden Sie entweder eine API Operation aus einem integrierten Aufgabentyp (wie DetectModerationLabel oderAnalyzeDocument) oder die Amazon A2I API Runtime-Operation StartHumanLoop in einer benutzerdefinierten ML-Anwendung. Sie müssen die AmazonAugmentedAIFullAccess verwaltete Richtlinie an den Benutzer anhängen, der diese API Operationen aufruft, um diesen Diensten die Erlaubnis zur Nutzung von Amazon A2I-Vorgängen zu erteilen. Um zu erfahren wie dies geht, vgl. Einen Benutzer erstellen, der Amazon API A2I Operations aufrufen kann.

    Diese Richtlinie gewährt keine Genehmigung zum Aufrufen von API Vorgängen des AWS Dienstes, die mit integrierten Aufgabentypen verknüpft sind. Erteilt beispielsweise AmazonAugmentedAIFullAccess keine Erlaubnis, den Amazon Rekognition DetectModerationLabel API Rekognition-Vorgang oder den Amazon Textract AnalyzeDocument API Textract-Vorgang aufzurufen. Sie können die allgemeinere Richtlinie AmazonAugmentedAIIntegratedAPIAccess verwenden, um diese Berechtigungen zu erteilen. Weitere Informationen finden Sie unter Einen Benutzer mit Berechtigungen zum Aufrufen von Amazon A2I-, Amazon Textract- und Amazon Rekognition Operations erstellen API. Dies ist eine gute Option, wenn Sie einem Benutzer umfassende Berechtigungen zur Nutzung von Amazon A2I und AWS der integrierten Dienste API gewähren möchten.

    Wenn Sie detailliertere Berechtigungen konfigurieren möchten, finden Sie unter Beispiele für identitätsbasierte Richtlinien von Amazon Rekognition und Beispiele für identitätsbasierte Richtlinien von Amazon Textract identitätsbasierte Richtlinien, die Sie verwenden können, um die Berechtigung zur Nutzung dieser einzelnen Services zu erteilen.

  • Um eine Vorschau Ihrer benutzerdefinierten Vorlage für die Benutzeroberfläche für Worker-Aufgaben anzuzeigen, benötigen Sie eine IAM Rolle mit Berechtigungen zum Lesen von Amazon S3 S3-Objekten, die auf Ihrer Benutzeroberfläche gerendert werden. Ein Richtlinienbeispiel finden Sie unter Aktivieren der Vorschau von Vorlagen für Auftragnehmeraufgaben .

CORSErlaubnisanforderung

Anfang 2020 haben weit verbreitete Browser wie Chrome und Firefox ihr Standardverhalten für das Drehen von Bildern auf der Grundlage von Bildmetadaten, den sogenannten EXIFDaten, geändert. Bisher wurden Bilder in Browsern immer genau so angezeigt, wie sie auf der Festplatte gespeichert sind, die normalerweise nicht gedreht ist. Nach der Änderung rotieren Bilder nun entsprechend einem Teil der Bildmetadaten, dem sogenannten Orientierungswert. Dies hat wichtige Auswirkungen auf die gesamte Community für das Machine Learning. Wenn beispielsweise die EXIF Ausrichtung nicht berücksichtigt wird, können Anwendungen, die zum Kommentieren von Bildern verwendet werden, Bilder in unerwarteter Ausrichtung anzeigen und zu falschen Beschriftungen führen.

Ab Chrome 89 AWS kann die Rotation von Bildern nicht mehr automatisch verhindert werden, da die Webstandardgruppe W3C entschieden hat, dass die Möglichkeit, die Rotation von Bildern zu steuern, gegen die Same-Origin-Richtlinie des Webs verstößt. Daher müssen Sie den S3-Buckets, die Ihre Eingabebilder enthalten, eine CORS Header-Richtlinie hinzufügen, um sicherzustellen, dass menschliche Mitarbeiter Ihre Eingabebilder in einer vorhersehbaren Ausrichtung kommentieren, wenn Sie Anfragen zur Erstellung einer menschlichen Schleife einreichen.

Wichtig

Wenn Sie den S3-Buckets keine CORS Konfiguration hinzufügen, die Ihre Eingabedaten enthält, schlagen die manuellen Überprüfungsaufgaben für diese Eingabedatenobjekte fehl.

Sie können eine CORS Richtlinie zu einem S3-Bucket hinzufügen, der Eingabedaten in der Amazon S3 S3-Konsole enthält. Um die erforderlichen CORS Header für den S3-Bucket festzulegen, der Ihre Eingabebilder in der S3-Konsole enthält, folgen Sie den Anweisungen unter Wie füge ich die domänenübergreifende gemeinsame Nutzung von Ressourcen hinzu? CORS . Verwenden Sie den folgenden CORS Konfigurationscode für die Buckets, die Ihre Bilder hosten. Wenn Sie die Amazon S3 S3-Konsole verwenden, um die Richtlinie zu Ihrem Bucket hinzuzufügen, müssen Sie das JSON Format verwenden.

JSON

[{ "AllowedHeaders": [], "AllowedMethods": ["GET"], "AllowedOrigins": ["*"], "ExposeHeaders": [] }]

XML

<CORSConfiguration> <CORSRule> <AllowedOrigin>*</AllowedOrigin> <AllowedMethod>GET</AllowedMethod> </CORSRule> </CORSConfiguration>

Im Folgenden werden die Anweisungen in der Amazon S3 S3-Dokumentation zum Hinzufügen einer CORS Header-Richtlinie mithilfe der Amazon S3 S3-Konsole GIF veranschaulicht.

Gif zum Hinzufügen einer CORS Header-Richtlinie mithilfe der Amazon S3 S3-Konsole.

Fügen Sie der IAM Rolle, die zur Erstellung einer Flow-Definition verwendet wurde, Berechtigungen hinzu

Um eine Flow-Definition zu erstellen, fügen Sie die Richtlinien in diesem Abschnitt der Rolle hinzu, die Sie bei der Erstellung eines Workflows zur Überprüfung durch Menschen in der SageMaker Konsole oder bei der Verwendung des CreateFlowDefinition API Vorgangs verwenden.

  • Wenn Sie die Konsole verwenden, um einen menschlichen Überprüfungs-Workflow zu erstellen, geben Sie die Rolle Amazon Resource Name (ARN) in das IAMRollenfeld ein, wenn Sie einen menschlichen Überprüfungs-Workflow in der Konsole erstellen.

  • Wenn Sie eine Flow-Definition mithilfe von erstellenAPI, fügen Sie diese Richtlinien der Rolle hinzu, die an den RoleArn Parameter des CreateFlowDefinition Vorgangs übergeben wird.

Wenn Sie einen Workflow für die Prüfung durch Menschenerstellen, ruft Amazon A2I Amazon S3 auf, um die Aufgabe abzuschließen. Um Amazon A2I die Berechtigung zum Abrufen und Speichern Ihrer Dateien in Ihrem Amazon S3 Bucket zu erteilen, erstellen Sie die folgende Richtlinie und fügen Sie sie Ihrer Rolle an. Wenn beispielsweise die Bilder, Dokumente und anderen Dateien, die Sie zur Prüfung durch Menschen senden, in einem S3-Bucket namens my_input_bucket gespeichert sind, und Sie möchten, dass die menschlichen Prüfungen in einem Bucket namens my_output_bucket gespeichert werden, würden Sie die folgende Richtlinie erstellen.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:GetObject" ], "Resource": [ "arn:aws:s3:::my_input_bucket/*" ] }, { "Effect": "Allow", "Action": [ "s3:PutObject" ], "Resource": [ "arn:aws:s3:::my_output_bucket/*" ] } ] }

Darüber hinaus muss die IAM Rolle über die folgende Vertrauensrichtlinie verfügen, um die SageMaker Erlaubnis zur Übernahme der Rolle zu erteilen. Weitere Informationen zu IAM Vertrauensrichtlinien finden Sie im Abschnitt Ressourcenbasierte Richtlinien unter Richtlinien und Berechtigungen in der Dokumentation zur AWS Identity and Access Management.

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

Weitere Informationen zum Erstellen und Verwalten von IAM Rollen und Richtlinien finden Sie in den folgenden Themen im AWS Identity and Access Management Benutzerhandbuch:

Einen Benutzer erstellen, der Amazon API A2I Operations aufrufen kann

Um Amazon A2I zum Erstellen und Starten von Human Loops für Amazon Rekognition, Amazon Textract oder die Amazon A2I-Laufzeit zu verwenden, müssen Sie einen Benutzer verwendenAPI, der berechtigt ist, Amazon A2I-Operationen aufzurufen. Verwenden Sie dazu die IAM Konsole, um die AmazonAugmentedAIFullAccessverwaltete Richtlinie einem neuen oder vorhandenen Benutzer zuzuordnen.

Diese Richtlinie gewährt einem Benutzer die Erlaubnis, API Operationen aus der SageMaker API für die Erstellung und Verwaltung von Flow-Definitionen und der Amazon Augmented AI Runtime API für die Erstellung und Verwaltung von menschlichen Schleifen aufzurufen. Weitere Informationen zu diesen API Vorgängen finden Sie unter Verwendung APIs in Amazon Augmented AI.

AmazonAugmentedAIFullAccessgewährt keine Berechtigungen zur Nutzung von Amazon Rekognition- oder Amazon Textract API Textract-Vorgängen.

Anmerkung

Sie können die AmazonAugmentedAIFullAccess Richtlinie auch einer IAM Rolle zuordnen, die verwendet wird, um eine menschliche Schleife zu erstellen und zu starten.

Um Zugriff zu gewähren, fügen Sie Ihren Benutzern, Gruppen oder Rollen Berechtigungen hinzu:

Weitere Informationen finden Sie im AWS Identity and Access Management Benutzerhandbuch unter Hinzufügen und Entfernen von IAM Identitätsberechtigungen.

Einen Benutzer mit Berechtigungen zum Aufrufen von Amazon A2I-, Amazon Textract- und Amazon Rekognition Operations erstellen API

Um einen Benutzer zu erstellen, der berechtigt ist, die von den integrierten Aufgabentypen verwendeten API Operationen (d. h. DetectModerationLables für Amazon Rekognition und AnalyzeDocument für Amazon Textract) aufzurufen, und der berechtigt ist, alle Amazon API A2I-Operationen zu verwenden, hängen Sie die verwaltete Richtlinie an. IAM AmazonAugmentedAIIntegratedAPIAccess Sie können diese Richtlinie verwenden, wenn Sie einem Benutzer, der Amazon A2I mit mehreren Task-Typen verwendet, allgemeine Berechtigungen erteilen möchten. Weitere Informationen zu diesen API Vorgängen finden Sie unter Verwendung APIs in Amazon Augmented AI.

Anmerkung

Sie können die AmazonAugmentedAIIntegratedAPIAccess Richtlinie auch einer IAM Rolle zuordnen, die verwendet wird, um eine menschliche Schleife zu erstellen und zu starten.

Um Zugriff zu gewähren, fügen Sie Ihren Benutzern, Gruppen oder Rollen Berechtigungen hinzu:

Weitere Informationen finden Sie im AWS Identity and Access Management Benutzerhandbuch unter Hinzufügen und Entfernen von IAM Identitätsberechtigungen.

Aktivieren der Vorschau von Vorlagen für Auftragnehmeraufgaben

Sie können eine Vorlage für Auftragnehmeraufgaben erstellen, um die Benutzeroberfläche und Anweisungen anzupassen, die Ihren Auftragnehmern beim Arbeiten an Ihren Aufgaben angezeigt werden. Sie können die Vorlage mithilfe der CreateHumanTaskUiOperation oder der SageMaker Konsole erstellen.

Um eine Vorschau Ihrer Vorlage anzuzeigen, benötigen Sie eine IAM Rolle mit den folgenden Berechtigungen, um Amazon S3 S3-Objekte lesen zu können, die auf Ihrer Benutzeroberfläche gerendert werden.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:GetObject" ], "Resource": [ "arn:aws:s3:::my_input_bucket/*" ] } ] }

Für die Aufgabentypen Amazon Rekognition und Amazon Textract können Sie im Bereich Amazon Augmented AI der Konsole eine Vorschau Ihrer Vorlage anzeigen. SageMaker Bei benutzerdefinierten Aufgabentypen können Sie eine Vorschau der Vorlage anzeigen, indem Sie die RenderUiTemplate Operation aufrufen. Befolgen Sie die Anweisungen für Ihren Aufgabentyp, um eine Vorschau der Vorlage anzuzeigen:

  • Aufgabentypen Amazon Rekognition und Amazon Textract — Verwenden Sie in der SageMaker Konsole den Amazon-Ressourcennamen (ARN) der Rolle in dem unter dokumentierten Verfahren. Erstellen Sie eine Worker-Aufgabenvorlage

  • Benutzerdefinierte Aufgabentypen — Verwenden Sie im RenderUiTemplate Vorgang die Rollen ARN im Parameter. RoleArn

Amazon A2I mit AWS KMS verschlüsselten Buckets verwenden

Wenn Sie einen AWS Key Management Service (AWS KMS) vom Kunden verwalteten Schlüssel angeben, um die Ausgabedaten in OutputConfig of zu verschlüsseln CreateFlowDefinition, müssen Sie diesem Schlüssel eine IAM Richtlinie hinzufügen, die der folgenden ähnelt. Diese Richtlinie erteilt der IAM Ausführungsrolle, mit der Sie Ihre Human Loops erstellen, die Erlaubnis, diesen Schlüssel für die Ausführung aller unter aufgeführten Aktionen zu verwenden. "Action" Weitere Informationen zu diesen Aktionen finden Sie im AWS Key Management Service Entwicklerhandbuch unter AWS KMS Berechtigungen.

Um diese Richtlinie zu verwenden, ersetzen Sie die IAM Service-Rolle ARN in durch die Ausführungsrolle, "Principal" mit ARN der Sie den Workflow für die menschliche Überprüfung (Flow-Definition) erstellen. Wenn Sie einen Labeling-Job mit erstellenCreateFlowDefinition, ist dies die, für RoleArndie ARN Sie angeben. Beachten Sie, dass Sie ein KmsKeyId beim Erstellen einer Flow-Definition in der Konsole nicht angeben können.

{ "Sid": "AllowUseOfKmsKey", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/service-role/example-role" }, "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:DescribeKey" ], "Resource": "*" }

Zusätzliche Berechtigungen und Sicherheitsressourcen