View a markdown version of this page

IAM-Richtlinien für Workflows - AWS Transfer Family

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.

IAM-Richtlinien für Workflows

Wenn Sie einem Server einen Workflow hinzufügen, müssen Sie eine Ausführungsrolle auswählen. Der Server verwendet diese Rolle, wenn er den Workflow ausführt. Wenn die Rolle nicht über die richtigen Berechtigungen verfügt, AWS Transfer Family kann der Workflow nicht ausgeführt werden.

In diesem Abschnitt wird ein möglicher Satz von AWS Identity and Access Management (IAM-) Berechtigungen beschrieben, den Sie zum Ausführen eines Workflows verwenden können. Weitere Beispiele werden weiter unten in diesem Thema beschrieben.

Anmerkung

Wenn Ihre Amazon S3-Dateien Tags haben, müssen Sie Ihrer IAM-Richtlinie eine oder zwei Berechtigungen hinzufügen.

  • Fügen Sie s3:GetObjectTagging für eine Amazon S3-Datei hinzu, die nicht versioniert ist.

  • Fügen Sie s3:GetObjectVersionTagging für eine Amazon S3-Datei hinzu, die versioniert ist.

Um eine Ausführungsrolle für Ihren Workflow zu erstellen
  1. Erstellen Sie eine neue IAM-Rolle und fügen Sie der Rolle die AWS verwaltete Richtlinie AWSTransferFullAccess hinzu. Weitere Informationen zum Erstellen einer neuen IAM-Rolle finden Sie unter. Erstellen Sie eine IAM-Rolle und -Richtlinie

  2. Erstellen Sie eine weitere Richtlinie mit den folgenden Berechtigungen und fügen Sie sie Ihrer Rolle hinzu. Ersetzen Sie jeden user input placeholder durch Ihre Informationen.

    { "Version":"2012-10-17", "Statement": [ { "Sid": "ConsoleAccess", "Effect": "Allow", "Action": "s3:GetBucketLocation", "Resource": "*" }, { "Sid": "ListObjectsInBucket", "Effect": "Allow", "Action": "s3:ListBucket", "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket" ] }, { "Sid": "AllObjectActions", "Effect": "Allow", "Action": "s3:*Object", "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket/*" ] }, { "Sid": "GetObjectVersion", "Effect": "Allow", "Action": "s3:GetObjectVersion", "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket/*" ] }, { "Sid": "Custom", "Effect": "Allow", "Action": [ "lambda:InvokeFunction" ], "Resource": [ "arn:aws:lambda:us-east-1:123456789012:function:function-name" ] }, { "Sid": "Tag", "Effect": "Allow", "Action": [ "s3:PutObjectTagging", "s3:PutObjectVersionTagging" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket/*" ] } ] }
  3. Speichern Sie diese Rolle und geben Sie sie als Ausführungsrolle an, wenn Sie einem Server einen Workflow hinzufügen.

    Anmerkung

    AWS empfiehlt, beim Erstellen von IAM-Rollen den Zugriff auf Ihre Ressourcen so weit wie möglich für Ihren Workflow einzuschränken.

Vertrauensbeziehungen im Workflow

Rollen, die Workflows ausführen, erfordern ebenfalls eine Vertrauensbeziehung mittransfer.amazonaws.com. Informationen zum Einrichten einer Vertrauensbeziehung für AWS Transfer Family finden Sie unterSo stellen Sie eine Vertrauensbeziehung her.

Während Sie Ihr Vertrauensverhältnis aufbauen, können Sie auch Maßnahmen ergreifen, um das verwirrte Stellvertreterproblem zu vermeiden. Eine Beschreibung dieses Problems sowie Beispiele, wie es vermieden werden kann, finden Sie unterCross-service verwirrt, stellvertretender Vertreter der Prävention.

Beispiel für eine Ausführungsrolle: Entschlüsseln, Kopieren und Markieren

Wenn Sie über Workflows verfügen, die Schritte zum Markieren, Kopieren und Entschlüsseln beinhalten, können Sie die folgende IAM-Richtlinie verwenden. Ersetzen Sie jeden user input placeholder durch Ihre Informationen.

{ "Version":"2012-10-17", "Statement": [ { "Sid": "CopyRead", "Effect": "Allow", "Action": [ "s3:GetObject", "s3:GetObjectTagging", "s3:GetObjectVersionTagging" ], "Resource": "arn:aws:s3:::amzn-s3-demo-source-bucket/*" }, { "Sid": "CopyWrite", "Effect": "Allow", "Action": [ "s3:PutObject", "s3:PutObjectTagging" ], "Resource": "arn:aws:s3:::amzn-s3-demo-destination-bucket/*" }, { "Sid": "CopyList", "Effect": "Allow", "Action": "s3:ListBucket", "Resource": [ "arn:aws:s3:::amzn-s3-demo-source-bucket", "arn:aws:s3:::amzn-s3-demo-destination-bucket" ] }, { "Sid": "Tag", "Effect": "Allow", "Action": [ "s3:PutObjectTagging", "s3:PutObjectVersionTagging" ], "Resource": "arn:aws:s3:::amzn-s3-demo-destination-bucket/*", "Condition": { "StringEquals": { "s3:RequestObjectTag/Archive": "yes" } } }, { "Sid": "ListBucket", "Effect": "Allow", "Action": "s3:ListBucket", "Resource": [ "arn:aws:s3:::amzn-s3-demo-destination-bucket" ] }, { "Sid": "HomeDirObjectAccess", "Effect": "Allow", "Action": [ "s3:PutObject", "s3:GetObject", "s3:DeleteObjectVersion", "s3:DeleteObject", "s3:GetObjectVersion" ], "Resource": "arn:aws:s3:::amzn-s3-demo-destination-bucket/*" }, { "Sid": "Decrypt", "Effect": "Allow", "Action": [ "secretsmanager:GetSecretValue" ], "Resource": "arn:aws:secretsmanager:us-east-1:123456789012:secret:aws/transfer/*" } ] }

Beispiel für eine Ausführungsrolle: Funktion ausführen und löschen

In diesem Beispiel haben Sie einen Workflow, der eine AWS Lambda Funktion aufruft. Wenn der Workflow die hochgeladene Datei löscht und über einen Ausnahmebehandlungsschritt verfügt, der bei einer fehlgeschlagenen Workflow-Ausführung im vorherigen Schritt reagiert, verwenden Sie die folgende IAM-Richtlinie. Ersetzen Sie jeden user input placeholder durch Ihre Informationen.

{ "Version":"2012-10-17", "Statement": [ { "Sid": "Delete", "Effect": "Allow", "Action": [ "s3:DeleteObject", "s3:DeleteObjectVersion" ], "Resource": "arn:aws:s3:::bucket-name" }, { "Sid": "Custom", "Effect": "Allow", "Action": [ "lambda:InvokeFunction" ], "Resource": [ "arn:aws:lambda:us-east-1:123456789012:function:function-name" ] } ] }