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.
IAMRichtlinien für die Verwendung von Distributed Map-Zuständen
Wenn Sie Workflows mit der Step Functions-Konsole erstellen, kann Step Functions automatisch IAM Richtlinien auf der Grundlage der Ressourcen in Ihrer Workflow-Definition generieren. Diese Richtlinien beinhalten die geringsten Rechte, die erforderlich sind, damit die Zustandsmaschinen-Rolle die StartExecution
API Aktion für den Status Distributed Map aufrufen kann. Diese Richtlinien beinhalten auch die Step Functions mit den geringsten Rechten, die für den Zugriff auf AWS Ressourcen wie Amazon S3 S3-Buckets und -Objekte sowie Lambda-Funktionen erforderlich sind. Wir empfehlen dringend, dass Sie nur die Berechtigungen in Ihre IAM Richtlinien aufnehmen, die erforderlich sind. Wenn Ihr Workflow beispielsweise einen Map
Status im Modus Verteilt umfasst, beschränken Sie Ihre Richtlinien auf den spezifischen Amazon S3 S3-Bucket und -Ordner, der Ihren Datensatz enthält.
Wichtig
Wenn Sie einen Amazon S3 S3-Bucket und ein Objekt oder ein Präfix mit einem Referenzpfad zu einem vorhandenen Schlüssel-Wert-Paar in Ihrer Distributed Map-Statuseingabe angeben, stellen Sie sicher, dass Sie die IAM Richtlinien für Ihren Workflow aktualisieren. Beschränken Sie die Richtlinien auf die Bucket- und Objektnamen, zu denen der Pfad zur Laufzeit aufgelöst wird.
Beispiel für eine IAM Richtlinie zum Ausführen eines Distributed-Map-Status
Wenn Sie einen Distributed-Map-Status in Ihre Workflows aufnehmen, benötigt Step Functions die entsprechenden Berechtigungen, damit die Zustandsmaschinen-Rolle die StartExecution
API Aktion für den Status Distributed Map aufrufen kann.
Das folgende IAM Richtlinienbeispiel gewährt Ihrer State-Machine-Rolle die geringsten Rechte, die für die Ausführung des Status Distributed Map erforderlich sind.
Anmerkung
Stellen Sie sicher, dass Sie den Status
durch den Namen des Zustandsmaschinen ersetzen, in dem Sie den Status Distributed Map verwenden. Beispiel, stateMachineName
arn:aws:states:
.us-east-2
:123456789012
:stateMachine:mystateMachine
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "states:StartExecution" ], "Resource": [ "arn:aws:states:
region
:accountID
:stateMachine:stateMachineName
" ] }, { "Effect": "Allow", "Action": [ "states:DescribeExecution", "states:StopExecution" ], "Resource": "arn:aws:states:region
:accountID
:execution:stateMachineName
:*" } ] }
Beispiel für eine IAM Richtlinie für redriving eine Distributed Map
Sie können erfolglose untergeordnete Workflow-Ausführungen in einem Map Run von redrivingIhrem übergeordneten Workflow neu starten. Ein redriven übergeordneter Workflow mit redrives allen erfolglosen Status, einschließlich Distributed Map. Stellen Sie sicher, dass Ihre Ausführungsrolle über die geringsten Rechte verfügt, die erforderlich sind, um die RedriveExecution
API Aktion im übergeordneten Workflow aufrufen zu können.
Das folgende IAM Richtlinienbeispiel gewährt Ihrer State-Machine-Rolle die geringsten Rechte, die für redriving einen Distributed-Map-Status erforderlich sind.
Anmerkung
Stellen Sie sicher, dass Sie den Status
durch den Namen des Zustandsmaschinen ersetzen, in dem Sie den Status Distributed Map verwenden. Beispiel, stateMachineName
arn:aws:states:
.us-east-2
:123456789012
:stateMachine:mystateMachine
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "states:RedriveExecution" ], "Resource": "arn:aws:states:us-east-2:
123456789012
:execution:myStateMachine
/myMapRunLabel
:*" } ] }
Beispiele für IAM Richtlinien zum Lesen von Daten aus Amazon S3 S3-Datensätzen
Die folgenden IAM Richtlinienbeispiele gewähren die geringsten Rechte, die für den Zugriff auf Ihre Amazon S3 S3-Datensätze mithilfe von ListObjectsV2 und GetObjectAPIAktionen erforderlich sind.
Beispiel IAMRichtlinie für Amazon S3 S3-Objekt als Datensatz
Das folgende Beispiel zeigt eine IAM Richtlinie, die die geringsten Rechte für den Zugriff auf die Objekte gewährt, die
in einem Amazon S3 S3-Bucket mit dem Namen organisiert sindprocessImages
.myBucket
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::
myBucket
" ], "Condition": { "StringLike": { "s3:prefix": [ "processImages
" ] } } } ] }
Beispiel IAMRichtlinie für eine CSV Datei als Datensatz
Das folgende Beispiel zeigt eine IAM Richtlinie, die die geringsten Rechte für den Zugriff auf eine CSV Datei mit dem Namen gewährt
.ratings.csv
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:GetObject" ], "Resource": [ "arn:aws:s3:::
myBucket
/csvDataset
/ratings.csv
" ] } ] }
Beispiel IAMRichtlinie für ein Amazon S3 S3-Inventar als Datensatz
Das folgende Beispiel zeigt eine IAM Richtlinie, die die geringsten Rechte für den Zugriff auf einen Amazon S3 S3-Inventarbericht gewährt.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:GetObject" ], "Resource": [ "arn:aws:s3:::
destination-prefix
/source-bucket
/config-ID
/YYYY-MM-DDTHH-MMZ
/manifest.json", "arn:aws:s3:::destination-prefix
/source-bucket
/config-ID
/data/*" ] } ] }
Beispiel für eine IAM Richtlinie zum Schreiben von Daten in einen Amazon S3 S3-Bucket
Das folgende IAM Richtlinienbeispiel gewährt die geringsten Rechte, die erforderlich sind, um Ihrem untergeordneten Workflow-Ausführungsergebnis in einen Ordner mit dem Namen zu schreiben csvJobs
in einem Amazon S3 S3-Bucket mit der PutObject
API Aktion.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:PutObject", "s3:GetObject", "s3:ListMultipartUploadParts", "s3:AbortMultipartUpload" ], "Resource": [ "arn:aws:s3:::
resultBucket
/csvJobs
/*" ] } ] }
IAMBerechtigungen für AWS KMS key verschlüsselten Amazon S3 S3-Bucket
Distributed Map State verwendet mehrteilige Uploads, um die Ergebnisse der untergeordneten Workflow-Ausführung in einen Amazon S3 S3-Bucket zu schreiben. Wenn der Bucket mit einem AWS Key Management Service (AWS KMS) Schlüssel verschlüsselt ist, müssen Sie auch Berechtigungen in Ihre IAM Richtlinie aufnehmen, um die kms:GenerateDataKey
Aktionen kms:Decrypt
kms:Encrypt
, und für den Schlüssel auszuführen. Diese Berechtigungen sind erforderlich, da Amazon S3 Daten aus den verschlüsselten Teilen der Datei entschlüsseln und lesen muss, bevor es den Multipart-Upload vornehmen kann.
Das folgende IAM Richtlinienbeispiel erteilt Berechtigungen für die kms:GenerateDataKey
Aktionen kms:Decrypt
kms:Encrypt
, und für den Schlüssel, der zur Verschlüsselung Ihres Amazon S3 S3-Buckets verwendet wurde.
{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": [ "kms:Decrypt", "kms:Encrypt", "kms:GenerateDataKey" ], "Resource": [ "arn:aws:kms:us-east-1:
123456789012
:key/111aa2bb-333c-4d44-5555-a111bb2c33dd
" ] } }
Weitere Informationen finden Sie unter Uploading a large file to Amazon S3 with encryption using an AWS KMS key CMK (Hochladen einer großen Datei zu Amazon S3 mit Verschlüsselung über einen KMS-CMK)
Wenn Ihr IAM Benutzer oder Ihre Rolle der gleiche ist AWS-Konto wie derKMS key, dann müssen Sie über diese Berechtigungen für die Schlüsselrichtlinie verfügen. Wenn Ihr IAM Benutzer oder Ihre Rolle zu einem anderen Konto als dem gehörtKMS key, müssen Sie über die entsprechenden Berechtigungen sowohl für die Schlüsselrichtlinie als auch für Ihren IAM Benutzer oder Ihre Rolle verfügen.