View a markdown version of this page

Tutorial: Einrichtung AWS Transfer Family Web-App mit selektivem Zugriff auf mehrere Buckets - 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.

Tutorial: Einrichtung AWS Transfer Family Web-App mit selektivem Zugriff auf mehrere Buckets

Dieses Tutorial führt Sie durch die Konfiguration einer Transfer Family-Web-App mit spezifischen Amazon S3-Bucket-Berechtigungen für einen einzelnen Benutzer. Sie erfahren, wie Sie eine Lösung einrichten, mit der Benutzer von einem Bucket herunterladen und in einen anderen hochladen können, während die Sicherheit gewahrt bleibt. Dies ist ein Tutorial für Fortgeschrittene, das auf den im grundlegenden Tutorial behandelten Konzepten aufbaut. Wenn Sie neu sind AWS Transfer Family Web-Apps sollten Sie in Betracht ziehen, mit zu beginnen Tutorial: Eine einfache Transfer Family-Web-App einrichten.

Voraussetzungen

Bevor Sie mit diesem Tutorial beginnen, brauchen Sie Folgendes:

  • IAM Identity Center, das in derselben Region wie Ihr konfiguriert ist AWS Transfer Family Web-App. Beachten Sie das AWS erlaubt nur eine Instanz von IAM Identity Center pro AWS Konto für alle Regionen.

  • Mindestens ein Benutzer ist im IAM Identity Center konfiguriert.

  • Zwei S3-Buckets: einer für Downloads und einer für Uploads.

Anmerkung

Dieses Tutorial hat viele Voraussetzungen mit dem grundlegenden Web-App-Tutorial gemeinsam. Weitere Informationen zum Einrichten von IAM Identity Center und zum Erstellen von Benutzern finden Sie unter Tutorial: Eine einfache Transfer Family-Web-App einrichten.

Schritt 1: Erstellen Sie eine Transfer Family-Web-App

Um eine Transfer Family-Web-App zu erstellen
  1. Melde dich bei der an AWS-Managementkonsole und öffne das AWS Transfer Family Konsole bei https://console.aws.amazon.com/transfer/.

  2. Wählen Sie im linken Navigationsbereich Web-Apps.

  3. Wählen Web-App erstellen.

    Beachten Sie für den Authentifizierungszugriff, dass der Dienst automatisch die AWS IAM Identity Center Instanz, die Sie als Voraussetzung eingerichtet haben.

  4. In der Art der Genehmigung Bereich, wählen Sie Erstellen und verwenden Sie eine neue Servicerolle. Der Dienst erstellt die Rolle des Identitätsträgers für Sie. Eine Identitätsträger-Rolle beinhaltet die Identität eines authentifizierten Benutzers in ihren Sitzungen.

  5. In der Web-App-Einheiten Bereich, akzeptieren Sie den Standardwert 1 oder passen Sie ihn bei Bedarf an einen höheren Wert an.

  6. Fügen Sie ein Tag hinzu, das Ihnen bei der Organisation Ihrer Web-Apps hilft. Geben Sie für das Tutorial Folgendes ein Name für den Schlüssel und Tutorial-Web-App für den Wert.

    Tipp

    Sie können den Namen der Web-App direkt im Web-Apps Seite auflisten, nachdem Sie sie erstellt haben.

  7. Wählen Sie Weiter um das zu öffnen Web-App entwerfen Seite. Geben Sie auf diesem Bildschirm die folgenden Informationen ein.

    Sie können optional einen Titel für Ihre Web-App angeben. Sie können auch Bilddateien für Ihr Logo und Favicon hochladen.

    • Passen Sie für den Seitentitel den Titel für den Browser-Tab an, den Ihre Benutzer sehen, wenn sie eine Verbindung zur Web-App herstellen. Wenn Sie nichts für den Seitentitel eingeben, ist er standardmäßig wie folgt Web-App übertragen.

    • Laden Sie für das Logo eine Bilddatei hoch. Die maximale Uploadgröße für Ihr Logobild beträgt 2 MB.

    • Laden Sie für das Favicon eine Bilddatei hoch. Die maximale Uploadgröße für Ihr Favicon beträgt 2 MB.

  8. Wählen Sie Weiter, dann wähle Web-App erstellen.

Schritt 2: IAM-Rollen für den S3-Zugriff konfigurieren

Sie müssen zwei IAM-Rollen erstellen: eine mit ausschließlichem Download-Zugriff auf den ersten Bucket und eine andere mit reinem Upload-Zugriff auf den zweiten Bucket.

Vertrauensrichtlinie für beide Rollen

Verwenden Sie die folgende Vertrauensrichtlinie für beide IAM-Rollen:

{ "Version":"2012-10-17", "Statement": [ { "Sid": "AccessGrantsTrustPolicy", "Effect": "Allow", "Principal": { "Service": "access-grants.s3.amazonaws.com" }, "Action": [ "sts:AssumeRole", "sts:SetSourceIdentity", "sts:SetContext" ] } ] }

IAM-Richtlinie für den Download-Bucket

Erstellen Sie eine IAM-Rolle mit der folgenden Richtlinie für den schreibgeschützten Zugriff auf Ihren Download-Bucket:

{ "Version":"2012-10-17", "Statement": [ { "Sid": "ObjectLevelReadPermissions", "Effect": "Allow", "Action": [ "s3:GetObject", "s3:GetObjectVersion", "s3:GetObjectAcl", "s3:GetObjectVersionAcl", "s3:ListMultipartUploadParts", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket1/*", "arn:aws:s3:::amzn-s3-demo-bucket1" ] } ] }
Wichtig

Ersetzen amzn-s3-demo-bucket1 mit dem tatsächlichen Namen Ihres Download-Buckets.

IAM-Richtlinie für den Upload-Bucket

Erstellen Sie eine weitere IAM-Rolle mit der folgenden Richtlinie für den Schreibzugriff auf Ihren Upload-Bucket:

{ "Version":"2012-10-17", "Statement": [ { "Sid": "ObjectLevelWritePermissions", "Effect": "Allow", "Action": [ "s3:PutObject", "s3:PutObjectAcl", "s3:PutObjectVersionAcl", "s3:DeleteObject", "s3:DeleteObjectVersion", "s3:AbortMultipartUpload", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket2/*", "arn:aws:s3:::amzn-s3-demo-bucket2" ] } ] }
Wichtig

Ersetzen amzn-s3-demo-bucket2 mit dem tatsächlichen Namen Ihres Upload-Buckets.

Schritt 3: S3 Access Grants einrichten

  1. Öffnen Sie die S3-Konsole unter https://console.aws.amazon.com/s3/.

  2. Wählen Sie im Navigationsbereich Zugriff auf Zuschüsse.

  3. Klicken Sie Erstellen Sie eine S3 Access Grants-Instanz.

  4. Wählen Sie die Option Fügen Sie eine IAM Identity Center-Instanz hinzu und geben Sie den ARN der Identity Center-Instanz ein.

  5. Klicken Sie auf Weiter, dann klicken Sie Stornieren um die Erstellung der S3 Access Grants-Instanz abzuschließen, ohne mit weiteren Schritten fortzufahren.

In diesem Schritt wird die S3 Access Grants-Instanz erstellt. Sie registrieren jetzt Standorte und erstellen Zugriffsberechtigungen.

Schritt 4: Registrieren Sie die S3-Bucket-Standorte

Registrieren Sie beide S3-Buckets als Standorte bei S3 Access Grants:

  1. Navigieren Sie in der S3 Access Grants-Konsole zu Standorte und klicken Sie Standort registrieren.

  2. Unter Geltungsbereich des Standorts, wählen Sie den spezifischen S3-Bucket für Downloads aus (amzn-s3-demo-bucket1).

  3. Wenn Sie aufgefordert werden, eine IAM-Rolle auszuwählen, wählen Sie die zuvor erstellte Download-IAM-Rolle aus.

  4. Schließen Sie den Registrierungsvorgang ab.

  5. Wiederholen Sie den Vorgang, um den Upload-Bucket (amzn-s3-demo-bucket2) zu registrieren, und wählen Sie die Upload-IAM-Rolle aus, wenn Sie dazu aufgefordert werden.

Schritt 5: Zugriffsberechtigungen erstellen

Erstellen Sie zwei Zuschüsse, eine für jeden registrierten Standort:

  1. Navigieren Sie in der S3 Access Grants-Konsole zu Zuschüsse und klicken Sie Zuschuss erstellen.

  2. In Standort, klicken Sie Standort durchsuchen und wählen Sie den Speicherort des Download-Buckets aus (amzn-s3-demo-bucket1).

  3. In Unterpräfix (optional), geben Sie ein * um den Zugriff auf den gesamten Bucket zu ermöglichen, oder geben Sie einen Pfad wie folder1/folder2/* um den Zugriff auf ein bestimmtes Präfix einzuschränken.

    Verwenden * legt den Umfang des Zuschusses fest auf s3://bucket-name/*und ermöglicht den Zugriff auf den gesamten Bucket. Um nur den Zugriff auf ein bestimmtes Präfix zu ermöglichen, geben Sie einen Pfad wie folder1/folder2/*, wodurch der Umfang des Zuschusses wie folgt festgelegt wird s3://bucket-name/folder1/folder2/*.

  4. Unter Berechtigungen und Zugriff, wählen Sie Lesen für den Download-Bucket.

  5. In Typ des Zuschussempfängers, wählen Verzeichnisidentität aus dem IAM Identity Center.

  6. Für IAM-Prinzipaltyp, wählen Sie Benutzer und geben Sie die Benutzer-ID Ihres IAM Identity Center-Benutzers ein.

  7. Schließen Sie den Prozess zur Erstellung des Zuschusses ab.

  8. Wiederholen Sie den Vorgang, um einen Grant für den Upload-Bucket (amzn-s3-demo-bucket2) zu erstellen, wählen Sie jedoch Read-write für die Berechtigungen.

Schritt 6: Konfigurieren Sie die CORS-Richtlinie für S3-Buckets

Konfigurieren Sie eine CORS-Richtlinie für beide S3-Buckets, um den Zugriff über Ihre zu ermöglichen AWS Transfer Family WebApp:

  1. Öffnen Sie die S3-Konsole und navigieren Sie zu Ihrem Download-Bucket (amzn-s3-demo-bucket1).

  2. Wählen Sie das Genehmigungen Registerkarte.

  3. Scrollen Sie nach unten zum Cross-origin gemeinsame Nutzung von Ressourcen (CORS) Abschnitt und klicken Sie auf Bearbeiten.

  4. Fügen Sie die folgende CORS-Konfiguration hinzu und ersetzen Sie WebAppEndpoint mit deinem tatsächlichen WebApp Endpunkt-URL:

    Die URL Ihres Web-App-Endpunkts finden Sie in der AWS Transfer Family Konsole unter WebApps. Es wird ähnlich aussehen wie https://webapp-***************.transfer-webapp.us-west-2.on.aws.

    [ { "AllowedHeaders": [ "*" ], "AllowedMethods": [ "GET", "PUT", "POST", "DELETE", "HEAD" ], "AllowedOrigins": [ "https://WebAppEndpoint" ], "ExposeHeaders": [ "last-modified", "content-length", "etag", "x-amz-version-id", "content-type", "x-amz-request-id", "x-amz-id-2", "date", "x-amz-cf-id", "x-amz-storage-class", "access-control-expose-headers" ], "MaxAgeSeconds": 3000 } ]
  5. Klicken Sie auf Änderungen speichern.

  6. Wiederhole den Vorgang für deinen Upload-Bucket (amzn-s3-demo-bucket2).

Schritt 7: Testen Sie die Konfiguration

  1. Öffnen Sie Ihre AWS Transfer Family URL der Web-App. Sie finden diese URL in der AWS Transfer Family Konsole unter WebApps in der Zugriffs-Endpunkt Feld.

  2. Melden Sie sich mit den IAM Identity Center-Benutzeranmeldedaten an, die Sie mit Zugriffsberechtigungen konfiguriert haben.

  3. Nach der Anmeldung sollten Sie beide S3-Speicherorte auf der Startseite sehen.

  4. Navigieren Sie zum Download-Bucket (amzn-s3-demo-bucket1) und stellen Sie sicher, dass Sie Dateien herunterladen, aber nicht hochladen können.

  5. Navigieren Sie zum Upload-Bucket (amzn-s3-demo-bucket2) und stellen Sie sicher, dass Sie Dateien hochladen können.

Schlussfolgerung

Sie haben erfolgreich konfiguriert AWS Transfer Family WebApp mit selektivem S3-Bucket-Zugriff für einen einzelnen Benutzer. Dieses Setup ermöglicht es dem Benutzer, von einem Bucket herunterzuladen und in einen anderen hochzuladen, während die Sicherheit durch IAM-Rollen und S3 Access Grants gewahrt bleibt.

Dieser Ansatz kann auf mehrere Benutzer ausgedehnt werden, indem für jeden Benutzer zusätzliche Berechtigungen in S3 Access Grants erstellt werden, was eine detaillierte Kontrolle der Bucket-Zugriffsberechtigungen ermöglicht. Informationen zur grundlegenden Einrichtung der Web-App finden Sie unter Tutorial: Eine einfache Transfer Family-Web-App einrichten.