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.
Erstellen Sie eine IAM-Rolle und -Richtlinie
In diesem Thema werden die Typen von Richtlinien und Rollen beschrieben, die zusammen mit Benutzerrollen verwendet werden können AWS Transfer Family, und es wird eine Anleitung zum Erstellen einer Benutzerrolle gegeben. Außerdem wird beschrieben, wie Sitzungsrichtlinien funktionieren, und es wird ein Beispiel für eine Benutzerrolle bereitgestellt.
AWS Transfer Family verwendet die folgenden Rollentypen:
-
Benutzerrolle — Ermöglicht Benutzern, die vom Dienst verwaltet werden, den Zugriff auf die erforderlichen Transfer Family-Ressourcen. AWS Transfer Family nimmt diese Rolle im Kontext eines Transfer Family-Benutzer-ARN an.
-
Zugriffsrolle — Bietet nur Zugriff auf die Amazon S3-Dateien, die übertragen werden. Für eingehende AS2-Übertragungen verwendet die Zugriffsrolle den Amazon-Ressourcennamen (ARN) für die Vereinbarung. Für ausgehende AS2-Übertragungen verwendet die Zugriffsrolle den ARN für den Connector.
-
Aufrufrolle — Zur Verwendung mit Amazon API Gateway als benutzerdefiniertem Identitätsanbieter des Servers. Transfer Family übernimmt diese Rolle im Kontext eines Transfer Family-Server-ARN.
-
Protokollierungsrolle — Wird verwendet, um Einträge bei Amazon zu protokollieren CloudWatch. Transfer Family verwendet diese Rolle, um Erfolgs- und Misserfolgsdetails sowie Informationen zu Dateiübertragungen zu protokollieren. Transfer Family übernimmt diese Rolle im Kontext eines Transfer Family-Server-ARN. Für ausgehende AS2-Übertragungen verwendet die Protokollierungsrolle den Connector-ARN.
-
Ausführungsrolle — Ermöglicht einem Transfer Family-Benutzer, Workflows aufzurufen und zu starten. Transfer Family übernimmt diese Rolle im Kontext eines Transfer Family-Workflows (ARN).
Zusätzlich zu diesen Rollen können Sie auch Sitzungsrichtlinien verwenden. Eine Sitzungsrichtlinie wird verwendet, um den Zugriff bei Bedarf einzuschränken. Beachten Sie, dass es sich bei diesen Richtlinien um eigenständige Richtlinien handelt. Das heißt, Sie fügen diese Richtlinien keiner Rolle hinzu. Stattdessen fügen Sie eine Sitzungsrichtlinie direkt einem Transfer Family-Benutzer hinzu.
Anmerkung
Wenn Sie einen vom Dienst verwalteten Transfer Family-Benutzer erstellen, können Sie die Auto-generate Richtlinie auf der Grundlage des Basisordners auswählen. Dies ist eine nützliche Abkürzung, wenn Sie den Benutzerzugriff auf ihre eigenen Ordner einschränken möchten. Außerdem finden Sie Details zu Sitzungsrichtlinien und ein Beispiel unterSo funktionieren Sitzungsrichtlinien. Weitere Informationen zu Sitzungsrichtlinien finden Sie auch unter Sitzungsrichtlinien im IAM-Benutzerhandbuch.
Themen
Eine Benutzerrolle erstellen
Wenn Sie einen Benutzer erstellen, treffen Sie eine Reihe von Entscheidungen über den Benutzerzugriff. Zu diesen Entscheidungen gehören, auf welche Amazon S3-Buckets oder Amazon EFS-Dateisysteme der Benutzer zugreifen kann, auf welche Teile der einzelnen Amazon S3-Buckets und auf welche Dateien im Dateisystem zugegriffen werden kann und welche Berechtigungen der Benutzer hat (z. B. PUT oderGET).
Um den Zugriff festzulegen, erstellen Sie eine identitätsbasierte Richtlinie AWS Identity and Access Management (IAM) und eine Rolle, die diese Zugriffsinformationen bereitstellen. Im Rahmen dieses Vorgangs gewähren Sie Ihrem Benutzer Zugriff auf den Amazon S3-Bucket oder das Amazon EFS-Dateisystem, das das Ziel oder die Quelle für Dateioperationen ist. Die folgenden grundlegenden Schritte, die im Weiteren detailliert erläutert werden, skizzieren das Verfahren:
Eine Benutzerrolle erstellen
-
Erstellen Sie eine IAM-Richtlinie für AWS Transfer Family. Dieser Vorgang wird unter So erstellen Sie eine IAM-Richtlinie für AWS Transfer Family beschrieben.
-
Erstellen Sie eine IAM-Rolle und hängen Sie die neue IAM-Richtlinie an. Ein Beispiel finden Sie unter Beispiel für eine read/write Zugriffsrichtlinie.
-
Stellen Sie eine Vertrauensbeziehung zwischen AWS Transfer Family und der IAM-Rolle her. Dieser Vorgang wird unter So stellen Sie eine Vertrauensbeziehung her beschrieben.
In den folgenden Verfahren wird beschrieben, wie eine IAM-Richtlinie und -Rolle erstellt wird.
So erstellen Sie eine IAM-Richtlinie für AWS Transfer Family
-
Öffnen Sie unter https://console.aws.amazon.com/iam/
die IAM-Konsole. -
Wählen Sie im Navigationsbereich Richtlinien und dann Richtlinie erstellen.
-
Wählen Sie auf der Seite Create Policy (Richtlinie erstellen) die Registerkarte JSON aus.
-
Ersetzen Sie im angezeigten Editor den Inhalt des Editors durch die IAM-Richtlinie, die Sie der IAM-Rolle zuordnen möchten.
Sie können Benutzern read/write Zugriff auf ihr Basisverzeichnis gewähren oder sie einschränken. Weitere Informationen finden Sie unter Beispiel für eine read/write Zugriffsrichtlinie.
-
Wählen Sie Richtlinie überprüfen und geben Sie einen Namen und eine Beschreibung für Ihre Richtlinie ein. Wählen Sie dann Richtlinie erstellen aus.
Nun erstellen Sie eine IAM-Rolle und fügen an diese die neue IAM-Richtlinie an.
Um eine IAM-Rolle zu erstellen für AWS Transfer Family
-
Wählen Sie im Navigationsbereich Rollen und dann Rolle erstellen.
Vergewissern Sie sich, dass auf der Seite „Rolle erstellen“ dieser AWS Dienst ausgewählt ist.
-
Wählen Sie in der Service-Liste Transfer (Übertragung) und dann Next: Permissions (Weiter: Berechtigungen) aus. Dadurch wird eine Vertrauensbeziehung zwischen AWS Transfer Family und hergestellt AWS.
-
Suchen Sie im Abschnitt Richtlinien für Berechtigungen anhängen nach der Richtlinie, die Sie gerade erstellt haben, wählen Sie sie aus und klicken Sie auf Weiter: Stichwörter.
-
(Optional) Geben Sie einen Schlüssel und einen Wert für ein Tag ein und wählen Sie Next: Review (Weiter: Prüfen) aus.
-
Geben Sie auf der Seite Review (Prüfen) einen Namen und eine Beschreibung für die neue Rolle ein und wählen Sie dann Create role (Rolle erstellen) aus.
Als Nächstes richten Sie eine Vertrauensbeziehung zwischen AWS Transfer Family und ein AWS.
So stellen Sie eine Vertrauensbeziehung her
Anmerkung
In unseren Beispielen verwenden wir ArnLike sowohl als auchArnEquals. Sie sind funktionell identisch, und daher können Sie beide verwenden, wenn Sie Ihre Richtlinien erstellen. Transfer Family-Dokumentation wird verwendetArnLike, wenn die Bedingung ein Platzhalterzeichen enthält und ArnEquals um anzugeben, dass eine Bedingung exakt übereinstimmt.
-
Wählen Sie in der IAM-Konsole die von Ihnen eben erstellte Rolle aus.
-
Wählen Sie auf der Seite Summary (Übersicht) die Option Trust relationships (Vertrauensbeziehungen) und anschließend Edit trust relationship (Vertrauensbeziehung bearbeiten) aus.
-
Stellen Sie im Editor „Vertrauensbeziehung bearbeiten“ sicher, dass Service aktiviert ist
"transfer.amazonaws.com". Die Zugriffsrichtlinie wird im Folgenden dargestellt.-
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "transfer.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
Wir empfehlen Ihnen, die Zustandsschlüssel
aws:SourceAccountundaws:SourceArnzu verwenden, um sich vor dem Problem der verwechselten Stellvertreter zu schützen. Das Quellkonto ist der Besitzer des Servers und der Quell-ARN ist der ARN des Benutzers. Beispiel:"Condition": { "StringEquals": { "aws:SourceAccount": "account_id" }, "ArnLike": { "aws:SourceArn": "arn:aws:transfer:region:account_id:user/*" } }Sie können die
ArnLikeBedingung auch verwenden, wenn Sie sich auf einen bestimmten Server statt auf einen Server im Benutzerkonto beschränken möchten. Beispiel:"Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:transfer:region:account-id:user/server-id/*" } }Anmerkung
Ersetzen Sie in den obigen Beispielen jedes
user input placeholderdurch Ihre eigenen Informationen.Einzelheiten zum Problem der verwirrten Stellvertreter und weitere Beispiele finden Sie unterCross-service verwirrt, stellvertretender Vertreter der Prävention.
-
Wählen Sie Trust Policy aktualisieren, um die Zugriffsrichtlinie zu aktualisieren.
Sie haben jetzt eine IAM-Rolle erstellt, mit der AWS Transfer Family Sie AWS Dienste in Ihrem Namen aufrufen können. Sie haben der Rolle die IAM-Richtlinie hinzugefügt, die Sie erstellt haben, um Ihrem Benutzer Zugriff zu gewähren. In diesem Erste Schritte mit AWS Transfer Family Server-Endpunkte Abschnitt werden diese Rolle und Richtlinie Ihrem oder Ihren Benutzern zugewiesen.
Informationen finden Sie auch unter:
-
Weitere allgemeine Informationen zu IAM-Rollen finden Sie im IAM-Benutzerhandbuch unter Erstellen einer Rolle zum Delegieren von Berechtigungen an einen AWS Dienst.
-
Weitere Informationen zu identitätsbasierten Richtlinien für Amazon S3-Ressourcen finden Sie unter Identitäts- und Zugriffsmanagement in Amazon S3 im Amazon Simple Storage Service-Benutzerhandbuch.
-
Weitere Informationen zu identitätsbasierten Richtlinien für Amazon EFS-Ressourcen finden Sie im Amazon Elastic File System-Benutzerhandbuch unter Using IAM to Control File-System-Zugriff auf Dateisystemdaten.
So funktionieren Sitzungsrichtlinien
Wenn ein Administrator eine Rolle erstellt, umfasst die Rolle oft weitreichende Berechtigungen, um mehrere Anwendungsfälle oder Teammitglieder abzudecken. Wenn ein Administrator eine Konsolen-URL konfiguriert, kann er mithilfe einer Sitzungsrichtlinie die Berechtigungen für die daraus resultierende Sitzung einschränken. Wenn Sie beispielsweise eine Rolle mit read/write Zugriff erstellen, können Sie eine URL einrichten, die den Zugriff der Benutzer nur auf ihre Basisverzeichnisse beschränkt.
Sitzungsrichtlinien sind erweiterte Richtlinien, die Sie als Parameter übergeben, wenn Sie programmgesteuert eine temporäre Sitzung für eine Rolle oder einen Benutzer erstellen. Sitzungsrichtlinien sind nützlich, um Benutzer zu sperren, sodass sie nur auf Bereiche Ihres Buckets zugreifen können, in denen Objektpräfixe ihren Benutzernamen enthalten. Das folgende Diagramm zeigt, dass die Berechtigungen der Sitzungsrichtlinie die Schnittmenge der Sitzungsrichtlinien und der ressourcenbasierten Richtlinien sowie der Schnittmenge der Sitzungsrichtlinien und identitätsbasierten Richtlinien sind.
Weitere Informationen finden Sie im IAM-Benutzerhandbuch unter Sitzungsrichtlinien.
AWS Transfer Family In wird eine Sitzungsrichtlinie nur unterstützt, wenn Sie zu oder von Amazon S3 übertragen. Die folgende Beispielrichtlinie ist eine Sitzungsrichtlinie, die den Zugriff der Benutzer nur auf ihre home Verzeichnisse beschränkt. Beachten Sie Folgendes:
-
Die
PutObjectACLAnweisungenGetObjectACLund sind nur erforderlich, wenn Sie den kontoübergreifenden Zugriff aktivieren müssen. Das heißt, Ihr Transfer Family-Server muss auf einen Bucket in einem anderen Konto zugreifen. -
Die maximale Länge einer Sitzungsrichtlinie beträgt 2048 Zeichen. Weitere Informationen finden Sie im Policy-Anforderungsparameter für die
CreateUserAktion in der API-Referenz. -
Wenn Ihr Amazon S3-Bucket mit AWS Key Management Service (AWS KMS) verschlüsselt ist, müssen Sie in Ihrer Richtlinie zusätzliche Berechtigungen angeben. Details hierzu finden Sie unter Datenschutz und Verschlüsselung.
-
Informationen zur Verwendung von Sitzungsrichtlinien zum Erstellen von Zugriffsberechtigungen auf der Grundlage von Benutzerattributen, ohne für jeden Benutzer separate IAM-Rollen zu erstellen, finden Sie unterDynamische Ansätze zur Rechteverwaltung.
-
{ "Version":"2012-10-17", "Statement": [ { "Sid": "AllowListingOfUserFolder", "Action": [ "s3:ListBucket" ], "Effect": "Allow", "Resource": [ "arn:aws:s3:::${transfer:HomeBucket}" ], "Condition": { "StringLike": { "s3:prefix": [ "${transfer:HomeFolder}/*", "${transfer:HomeFolder}" ] } } }, { "Sid": "HomeDirObjectAccess", "Effect": "Allow", "Action": [ "s3:PutObject", "s3:GetObject", "s3:DeleteObject", "s3:DeleteObjectVersion", "s3:GetObjectVersion", "s3:GetObjectACL", "s3:PutObjectACL" ], "Resource": "arn:aws:s3:::${transfer:HomeDirectory}/*" } ] }
Anmerkung
Im vorangegangenen Richtlinienbeispiel wird davon ausgegangen, dass die Basisverzeichnisse der Benutzer so eingerichtet sind, dass sie einen abschließenden Schrägstrich enthalten, um anzuzeigen, dass es sich um ein Verzeichnis handelt. Wenn Sie dagegen ein Benutzerverzeichnis HomeDirectory ohne den abschließenden Schrägstrich angeben, sollten Sie es in Ihre Richtlinie aufnehmen.
Beachten Sie in der vorherigen Beispielrichtlinie die Verwendung der transfer:HomeFolder transfer:HomeDirectory Richtlinienparametertransfer:HomeBucket, und. Diese Parameter werden für den festgelegtHomeDirectory, der für den Benutzer konfiguriert ist, wie unter HomeDirectory und beschriebenImplementieren Sie Ihre API-Gateway-Methode. Diese Parameter haben die folgenden Definitionen:
Der
transfer:HomeBucketParameter wird durch die erste Komponente von ersetztHomeDirectory.Der
transfer:HomeFolderParameter wird durch die verbleibenden Teile desHomeDirectoryParameters ersetzt.Für den
transfer:HomeDirectoryParameter wurde der führende Schrägstrich (/) entfernt, sodass er als Teil eines S3-Amazon-Ressourcennamens (ARN) in einerResourceAnweisung verwendet werden kann.
Anmerkung
Wenn Sie logische Verzeichnisse verwenden — also die des homeDirectoryType Benutzers LOGICAL — werden diese Richtlinienparameter (HomeBucketHomeDirectory, undHomeFolder) nicht unterstützt.
Nehmen wir beispielsweise an, dass der HomeDirectory Parameter, der für den Transfer Family-Benutzer konfiguriert ist, lautet. /home/bob/amazon/stuff/
ist
transfer:HomeBucketauf/homegesetzt.ist
transfer:HomeFolderauf/bob/amazon/stuff/gesetzt.transfer:HomeDirectorywirdhome/bob/amazon/stuff/.
Die erste "Sid" ermöglicht es dem Benutzer, alle Verzeichnisse aufzulisten, beginnend mit/home/bob/amazon/stuff/.
Die zweite "Sid" schränkt den get Zugriff des Benutzers put auf denselben Pfad ein. /home/bob/amazon/stuff/
Beispiel für eine read/write Zugriffsrichtlinie
Gewähren read/write Sie Zugriff auf den Amazon S3-Bucket
Die folgende Beispielrichtlinie für die AWS Transfer Family Gewährung von read/write Zugriff auf Objekte in Ihrem Amazon S3-Bucket.
Beachten Sie Folgendes:
-
Ersetzen Sie
amzn-s3-demo-bucketdurch den Namen Ihres Amazon-S3-Buckets. -
Die
PutObjectACLAnweisungenGetObjectACLund sind nur erforderlich, wenn Sie den kontoübergreifenden Zugriff aktivieren müssen. Das heißt, Ihr Transfer Family-Server muss auf einen Bucket in einem anderen Konto zugreifen. -
Die
DeleteObjectVersionAnweisungenGetObjectVersionund sind nur erforderlich, wenn die Versionierung für den Amazon S3-Bucket aktiviert ist, auf den zugegriffen wird.Anmerkung
Wenn Sie jemals die Versionierung für Ihren Bucket aktiviert haben, benötigen Sie diese Berechtigungen, da Sie die Versionierung in Amazon S3 nur aussetzen und nicht vollständig deaktivieren können. Einzelheiten finden Sie unter Versionsunabhängige, versionierungsfähige und versionssperrte Buckets.
-
{ "Version":"2012-10-17", "Statement": [ { "Sid": "AllowListingOfUserFolder", "Action": [ "s3:ListBucket", "s3:GetBucketLocation" ], "Effect": "Allow", "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket" ] }, { "Sid": "HomeDirObjectAccess", "Effect": "Allow", "Action": [ "s3:PutObject", "s3:GetObject", "s3:GetObjectTagging", "s3:DeleteObject", "s3:DeleteObjectVersion", "s3:GetObjectVersion", "s3:GetObjectVersionTagging", "s3:GetObjectACL", "s3:PutObjectACL" ], "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/*" } ] }
Gewähren Sie Dateisystemzugriff auf Dateien im Amazon EFS-Dateisystem
Anmerkung
Zusätzlich zur Richtlinie müssen Sie auch sicherstellen, dass Ihre POSIX-Dateiberechtigungen den entsprechenden Zugriff gewähren. Weitere Informationen finden Sie unter Arbeiten mit Benutzern, Gruppen und Berechtigungen auf Netzwerkdateisystem (NFS)-Ebene im Benutzerhandbuch für Amazon Elastic File System.
Die folgende Beispielrichtlinie gewährt Root-Dateisystemzugriff auf Dateien in Ihrem Amazon EFS-Dateisystem.
Anmerkung
Ersetzen Sie in den folgenden Beispielen region durch Ihre Region, account-id durch das Konto, in dem sich die Datei befindet, und file-system-id durch die ID Ihres Amazon Elastic File Systems (Amazon EFS).
-
{ "Version":"2012-10-17", "Statement": [ { "Sid": "RootFileSystemAccess", "Effect": "Allow", "Action": [ "elasticfilesystem:ClientRootAccess", "elasticfilesystem:ClientMount", "elasticfilesystem:ClientWrite" ], "Resource": "arn:aws:elasticfilesystem:us-east-1:123456789012:file-system/file-system-id" } ] }
Die folgende Beispielrichtlinie gewährt Benutzern den Zugriff auf das Dateisystem auf Dateien in Ihrem Amazon EFS-Dateisystem.
-
{ "Version":"2012-10-17", "Statement": [ { "Sid": "UserFileSystemAccess", "Effect": "Allow", "Action": [ "elasticfilesystem:ClientMount", "elasticfilesystem:ClientWrite" ], "Resource": "arn:aws:elasticfilesystem:us-east-1:123456789012:file-system/file-system-id" } ] }