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.
Verwenden Sie vordefinierte Schritte
Wenn Sie einen Workflow erstellen, können Sie wählen, ob Sie einen der folgenden vordefinierten Schritte hinzufügen möchten, die in diesem Thema behandelt werden. Sie können sich auch dafür entscheiden, Ihre eigenen benutzerdefinierten Schritte zur Dateiverarbeitung hinzuzufügen. Weitere Informationen finden Sie unter Verwenden Sie benutzerdefinierte Schritte zur Dateiverarbeitung.
Themen
Datei kopieren
Bei einem Schritt zum Kopieren der Datei wird eine Kopie der hochgeladenen Datei an einem neuen Amazon S3-Speicherort erstellt. Derzeit können Sie einen Schritt zum Kopieren einer Datei nur mit Amazon S3 verwenden.
Der folgende Schritt zum Kopieren der Datei kopiert Dateien in den test Ordner inamzn-s3-demo-destination-bucket.
Wenn der Schritt „Datei kopieren“ nicht der erste Schritt Ihres Workflows ist, können Sie den Speicherort der Datei angeben. Indem Sie den Speicherort der Datei angeben, können Sie entweder die Datei kopieren, die im vorherigen Schritt verwendet wurde, oder die Originaldatei, die hochgeladen wurde. Sie können diese Funktion verwenden, um mehrere Kopien der Originaldatei zu erstellen und gleichzeitig die Quelldatei für die Dateiarchivierung und Aufbewahrung von Aufzeichnungen intakt zu halten. Ein Beispiel finden Sie unter Beispiel für einen Arbeitsablauf zum Taggen und Löschen.
Geben Sie den Bucket und die wichtigsten Details an
Sie müssen den Bucket-Namen und einen Schlüssel für das Ziel des Schritts zum Kopieren der Datei angeben. Der Schlüssel kann entweder ein Pfadname oder ein Dateiname sein. Ob der Schlüssel als Pfadname oder Dateiname behandelt wird, hängt davon ab, ob Sie den Schlüssel mit einem Schrägstrich (/) beenden.
Wenn das letzte Zeichen ein Zeichen ist/, wird Ihre Datei in den Ordner kopiert, und ihr Name ändert sich nicht. Wenn das letzte Zeichen alphanumerisch ist, wird Ihre hochgeladene Datei in den Schlüsselwert umbenannt. Wenn in diesem Fall bereits eine Datei mit diesem Namen existiert, hängt das Verhalten von der Einstellung für das Feld Bestehende überschreiben ab.
-
Wenn Bestehende überschreiben ausgewählt ist, wird die vorhandene Datei durch die Datei ersetzt, die gerade verarbeitet wird.
-
Wenn „Bestehende überschreiben“ nicht ausgewählt ist, passiert nichts und die Workflow-Verarbeitung wird beendet.
Tipp
Wenn gleichzeitige Schreibvorgänge auf demselben Dateipfad ausgeführt werden, kann dies beim Überschreiben von Dateien zu unerwartetem Verhalten führen.
Wenn Ihr Schlüsselwert beispielsweise lautettest/, werden Ihre hochgeladenen Dateien in den test Ordner kopiert. Wenn Ihr Schlüsselwert lautet (und Bestehende überschreiben ausgewählt ist)test/today, wird jede Datei, die Sie hochladen, today in eine Datei mit dem Namen des test Ordners kopiert, und jede nachfolgende Datei überschreibt die vorherige.
Anmerkung
Amazon S3 unterstützt Buckets und Objekt. Es gibt keine Hierarchie in Amazon S3. Sie können jedoch Präfixe und Trennzeichen in Objektschlüsselnamen verwenden, um eine Hierarchie anzudeuten und Ihre Daten ähnlich wie Ordner zu organisieren.
Verwenden Sie eine benannte Variable in einem Schritt zum Kopieren einer Datei
In einem Schritt zum Kopieren einer Datei können Sie eine Variable verwenden, um Ihre Dateien dynamisch in benutzerspezifische Ordner zu kopieren. Derzeit können Sie ${transfer:UserName} oder ${transfer:UploadDate} als Variable verwenden, um Dateien für den jeweiligen Benutzer, der Dateien hochlädt, oder basierend auf dem aktuellen Datum an einen Zielort zu kopieren.
Wenn der Benutzer im folgenden Beispiel eine Datei richard-roe hochlädt, wird sie in den amzn-s3-demo-destination-bucket/richard-roe/processed/ Ordner kopiert. Wenn der Benutzer eine Datei mary-major hochlädt, wird sie in den amzn-s3-demo-destination-bucket/mary-major/processed/ Ordner kopiert.
Ebenso können Sie es ${transfer:UploadDate} als Variable verwenden, um Dateien an einen Zielort zu kopieren, der nach dem aktuellen Datum benannt ist. Wenn Sie im folgenden Beispiel das Ziel ${transfer:UploadDate}/processed auf den 1. Februar 2022 festlegen, werden die hochgeladenen Dateien in den amzn-s3-demo-destination-bucket/2022-02-01/processed/ Ordner kopiert.
Sie können diese beiden Variablen auch zusammen verwenden und so ihre Funktionen kombinieren. Beispielsweise könnten Sie das Zielschlüsselpräfix auf setzenfolder/${transfer:UserName}/${transfer:UploadDate}/, wodurch beispielsweise folder/marymajor/2023-01-05/ verschachtelte Ordner erstellt würden.
IAM-Berechtigungen für den Kopierschritt
Damit ein Kopierschritt erfolgreich ist, stellen Sie sicher, dass die Ausführungsrolle für Ihren Workflow die folgenden Berechtigungen enthält.
{ "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/*" }
Anmerkung
Die s3:ListBucket Berechtigung ist nur erforderlich, wenn Sie Bestehende überschreiben nicht auswählen. Diese Berechtigung überprüft Ihren Bucket, um festzustellen, ob eine Datei mit demselben Namen bereits existiert. Wenn Sie „Bestehende Datei überschreiben“ ausgewählt haben, muss der Workflow nicht nach der Datei suchen und kann sie einfach schreiben.
Wenn Ihre Amazon S3-Dateien Tags haben, müssen Sie Ihrer IAM-Richtlinie eine oder zwei Berechtigungen hinzufügen.
-
Fügen Sie
s3:GetObjectTaggingfür eine Amazon S3-Datei hinzu, die nicht versioniert ist. -
Fügen Sie
s3:GetObjectVersionTaggingfür eine Amazon S3-Datei hinzu, die versioniert ist.
Entschlüsseln Sie die Datei
Der AWS Storage-Blog enthält einen Beitrag, in dem beschrieben wird, wie Sie mithilfe von Transfer Family Managed-Workflows einfach Dateien entschlüsseln, Dateien mit PGP verschlüsseln und entschlüsseln können, ohne Code zu schreiben. AWS Transfer Family
Unterstützte symmetrische Verschlüsselungsalgorithmen
Für die PGP-Entschlüsselung unterstützt Transfer Family symmetrische Verschlüsselungsalgorithmen, die zum Verschlüsseln der tatsächlichen Dateidaten in PGP-Dateien verwendet werden.
-
Detaillierte Informationen zu unterstützten symmetrischen Verschlüsselungsalgorithmen finden Sie unter. Symmetrische PGP-Verschlüsselungsalgorithmen
-
Hinweise zu PGP-Schlüsselpaar-Algorithmen, die mit diesen symmetrischen Algorithmen verwendet werden, finden Sie unter. PGP-Schlüsselpaar-Algorithmen
Verwenden Sie die PGP-Entschlüsselung in Ihrem Arbeitsablauf
Transfer Family bietet integrierte Unterstützung für die PGP-Entschlüsselung (Pretty Good Privacy). Sie können die PGP-Entschlüsselung für Dateien verwenden, die über SFTP, FTPS oder FTP auf Amazon Simple Storage Service (Amazon S3) oder Amazon Elastic File System (Amazon EFS) hochgeladen werden.
Um die PGP-Entschlüsselung zu verwenden, müssen Sie die privaten PGP-Schlüssel erstellen und speichern, die für die Entschlüsselung Ihrer Dateien verwendet werden. Ihre Benutzer können dann Dateien mit den entsprechenden PGP-Verschlüsselungsschlüsseln verschlüsseln, bevor sie die Dateien auf Ihren Transfer Family-Server hochladen. Nachdem Sie die verschlüsselten Dateien erhalten haben, können Sie diese Dateien in Ihrem Workflow entschlüsseln. Ein detailliertes Tutorial finden Sie unter Einen verwalteten Workflow für die Entschlüsselung einer Datei einrichten.
Hinweise zu unterstützten PGP-Algorithmen und Empfehlungen finden Sie unter. PGP-Verschlüsselungs- und Entschlüsselungsalgorithmen
Um die PGP-Entschlüsselung in Ihrem Arbeitsablauf zu verwenden
-
Identifizieren Sie einen Transfer Family-Server, der Ihren Workflow hostet, oder erstellen Sie einen neuen. Sie benötigen die Server-ID, bevor Sie Ihre PGP-Schlüssel AWS Secrets Manager mit dem richtigen geheimen Namen speichern können.
-
Speichern Sie Ihren PGP-Schlüssel AWS Secrets Manager unter dem erforderlichen geheimen Namen. Details hierzu finden Sie unter PGP-Schlüssel verwalten. Workflows können anhand des geheimen Namens in Secrets Manager automatisch den richtigen PGP-Schlüssel finden, der für die Entschlüsselung verwendet werden soll.
Anmerkung
Wenn Sie Geheimnisse in Secrets Manager speichern, fallen Gebühren an AWS-Konto . Informationen zu den Preisen erhalten Sie unter AWS Secrets Manager Preise
. -
Verschlüsseln Sie eine Datei mit Ihrem PGP-Schlüsselpaar. (Eine Liste der unterstützten Clients finden Sie unterUnterstützte PGP-Clients.) Wenn Sie die Befehlszeile verwenden, führen Sie den folgenden Befehl aus. Um diesen Befehl zu verwenden, ersetzen Sie ihn durch die E-Mail-Adresse,
mit der Sie das PGP-Schlüsselpaar erstellt haben.username@example.comErsetzen Sie es durch den Namen der Datei, die Sie verschlüsseln möchten.testfile.txtgpg -e -rusername@example.comtestfile.txtWichtig
Stellen Sie beim Verschlüsseln von Dateien für die Verwendung mit AWS Transfer Family Workflows immer sicher, dass Sie mithilfe des Parameters einen nicht anonymen Empfänger angeben.
-rEine anonyme Verschlüsselung (ohne Angabe eines Empfängers) kann zu Entschlüsselungsfehlern im Workflow führen, da das System nicht ermitteln kann, welcher Schlüssel für die Entschlüsselung verwendet werden soll. Debugging-Informationen zu diesem Problem finden Sie unter. Beheben Sie Probleme mit der Verschlüsselung anonymer Empfänger -
Laden Sie die verschlüsselte Datei auf Ihren Transfer Family-Server hoch.
-
Konfigurieren Sie einen Entschlüsselungsschritt in Ihrem Workflow. Weitere Informationen finden Sie unter Fügen Sie einen Entschlüsselungsschritt hinzu.
Fügen Sie einen Entschlüsselungsschritt hinzu
Ein Entschlüsselungsschritt entschlüsselt eine verschlüsselte Datei, die im Rahmen Ihres Workflows auf Amazon S3 oder Amazon EFS hochgeladen wurde. Einzelheiten zur Konfiguration der Entschlüsselung finden Sie unter. Verwenden Sie die PGP-Entschlüsselung in Ihrem Arbeitsablauf
Wenn Sie den Entschlüsselungsschritt für einen Workflow erstellen, müssen Sie das Ziel für die entschlüsselten Dateien angeben. Sie müssen auch auswählen, ob vorhandene Dateien überschrieben werden sollen, wenn am Zielort bereits eine Datei vorhanden ist. Mithilfe von Amazon CloudWatch Logs können Sie die Ergebnisse des Entschlüsselungsworkflows überwachen und Prüfprotokolle für jede Datei in Echtzeit abrufen.
Nachdem Sie den Dateityp Entschlüsseln für Ihren Schritt ausgewählt haben, wird die Seite „Parameter konfigurieren“ angezeigt. Geben Sie die Werte für den Abschnitt PGP-Entschlüsselungsparameter konfigurieren ein.
Die verfügbaren Optionen lauten wie folgt:
-
Schrittname — Geben Sie einen beschreibenden Namen für den Schritt ein.
-
Dateispeicherort — Durch Angabe des Dateispeicherorts können Sie entweder die Datei entschlüsseln, die im vorherigen Schritt verwendet wurde, oder die Originaldatei, die hochgeladen wurde.
Anmerkung
Dieser Parameter ist nicht verfügbar, wenn dieser Schritt der erste Schritt des Workflows ist.
-
Ziel für entschlüsselte Dateien — Wählen Sie einen Amazon S3-Bucket oder ein Amazon EFS-Dateisystem als Ziel für die entschlüsselte Datei.
-
Wenn Sie Amazon S3 wählen, müssen Sie einen Ziel-Bucket-Namen und ein Zielschlüsselpräfix angeben. Um das Zielschlüsselpräfix anhand des Benutzernamens zu parametrisieren, geben Sie
${transfer:UserName}als Zielschlüsselpräfix ein. Um das Zielschlüsselpräfix anhand des Uploaddatums zu parametrisieren, geben${Transfer:UploadDate}Sie auf ähnliche Weise als Zielschlüsselpräfix ein. -
Wenn Sie Amazon EFS wählen, müssen Sie ein Zieldateisystem und einen Pfad angeben.
Anmerkung
Die Speicheroption, die Sie hier wählen, muss dem Speichersystem entsprechen, das vom Transfer Family-Server verwendet wird, mit dem dieser Workflow verknüpft ist. Andernfalls erhalten Sie eine Fehlermeldung, wenn Sie versuchen, diesen Workflow auszuführen.
-
-
Bestehende überschreiben — Wenn Sie eine Datei hochladen und am Ziel bereits eine Datei mit demselben Dateinamen existiert, hängt das Verhalten von der Einstellung für diesen Parameter ab:
-
Wenn „Bestehende überschreiben“ ausgewählt ist, wird die vorhandene Datei durch die Datei ersetzt, die gerade verarbeitet wird.
-
Wenn „Bestehende überschreiben“ nicht ausgewählt ist, passiert nichts und die Workflow-Verarbeitung wird beendet.
Tipp
Wenn gleichzeitige Schreibvorgänge auf demselben Dateipfad ausgeführt werden, kann dies beim Überschreiben von Dateien zu unerwartetem Verhalten führen.
-
Der folgende Screenshot zeigt ein Beispiel für die Optionen, die Sie für den Schritt zum Entschlüsseln der Datei wählen könnten.
IAM-Berechtigungen für den Entschlüsselungsschritt
Damit ein Entschlüsselungsschritt erfolgreich ist, stellen Sie sicher, dass die Ausführungsrolle für Ihren Workflow die folgenden Berechtigungen enthält.
{ "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:region:account-id:secret:aws/transfer/*" }
Anmerkung
Die s3:ListBucket Berechtigung ist nur erforderlich, wenn Sie Bestehende überschreiben nicht auswählen. Diese Berechtigung überprüft Ihren Bucket, um festzustellen, ob eine Datei mit demselben Namen bereits existiert. Wenn Sie „Bestehende Datei überschreiben“ ausgewählt haben, muss der Workflow nicht nach der Datei suchen und kann sie einfach schreiben.
Wenn Ihre Amazon S3-Dateien Tags haben, müssen Sie Ihrer IAM-Richtlinie eine oder zwei Berechtigungen hinzufügen.
-
Fügen Sie
s3:GetObjectTaggingfür eine Amazon S3-Datei hinzu, die nicht versioniert ist. -
Fügen Sie
s3:GetObjectVersionTaggingfür eine Amazon S3-Datei hinzu, die versioniert ist.
Datei taggen
Verwenden Sie einen Tag-Schritt, um eingehende Dateien für die weitere Verarbeitung zu kennzeichnen. Geben Sie den Wert des Tags ein, das Sie den eingehenden Dateien zuweisen möchten. Derzeit wird der Tag-Vorgang nur unterstützt, wenn Sie Amazon S3 für Ihren Transfer Family-Serverspeicher verwenden.
Im folgenden Beispiel für einen Tag-Schritt wird der Tag-Schlüssel bzw. der Tag-Wert zugewiesenscan_outcome. clean
Damit ein Tag-Schritt erfolgreich ausgeführt werden kann, stellen Sie sicher, dass die Ausführungsrolle für Ihren Workflow die folgenden Berechtigungen enthält.
{ "Sid": "Tag", "Effect": "Allow", "Action": [ "s3:PutObjectTagging", "s3:PutObjectVersionTagging" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket/*" ] }
Anmerkung
Wenn Ihr Workflow einen Tag-Schritt enthält, der entweder vor einem Kopier- oder Entschlüsselungsschritt ausgeführt wird, müssen Sie Ihrer IAM-Richtlinie eine oder zwei Berechtigungen hinzufügen.
-
Fügen Sie
s3:GetObjectTaggingfür eine Amazon S3-Datei hinzu, die nicht versioniert ist. -
Fügen Sie
s3:GetObjectVersionTaggingfür eine Amazon S3-Datei hinzu, die versioniert ist.
Datei löschen
Um eine verarbeitete Datei aus einem vorherigen Workflow-Schritt oder die ursprünglich hochgeladene Datei zu löschen, verwenden Sie einen Schritt zum Löschen von Dateien.
Damit ein Löschschritt erfolgreich ausgeführt werden kann, stellen Sie sicher, dass die Ausführungsrolle für Ihren Workflow die folgenden Berechtigungen enthält.
{ "Sid": "Delete", "Effect": "Allow", "Action": [ "s3:DeleteObjectVersion", "s3:DeleteObject" ], "Resource": "arn:aws:secretsmanager:region:account-ID:secret:aws/transfer/*" }
Benannte Variablen für Workflows
Für Kopier- und Entschlüsselungsschritte können Sie eine Variable verwenden, um Aktionen dynamisch auszuführen. AWS Transfer Family Unterstützt derzeit die folgenden benannten Variablen.
-
Wird verwendet
${transfer:UserName}, um Dateien an ein Ziel zu kopieren oder zu entschlüsseln, das auf dem Benutzer basiert, der die Dateien hochlädt. -
Wird verwendet
${transfer:UploadDate}, um Dateien auf der Grundlage des aktuellen Datums an einen Zielort zu kopieren oder zu entschlüsseln.
Beispiel für einen Arbeitsablauf zum Taggen und Löschen
Das folgende Beispiel veranschaulicht einen Workflow, der eingehende Dateien kennzeichnet, die von einer nachgelagerten Anwendung, z. B. einer Datenanalyseplattform, verarbeitet werden müssen. Nach dem Taggen der eingehenden Datei löscht der Workflow dann die ursprünglich hochgeladene Datei, um Speicherkosten zu sparen.