Rollen für externe Identitätsanbieter (Verbund) erstellen - AWS Identity and Access Management

Rollen für externe Identitätsanbieter (Verbund) erstellen

Sie können Identitätsanbieter verwenden, anstatt IAM-Benutzer in Ihrem AWS-Konto anzulegen. Mit einem Identitätsanbieter können Sie Ihre Benutzeridentitäten außerhalb von AWS verwalten und diesen externen Benutzeridentitäten die Berechtigung für den Zugriff auf AWS-Ressourcen in Ihrem Konto gewähren. Weitere Informationen zu Verbünde und Identitätsanbietern finden Sie unter Identitätsanbieter und Verbund.

Erstellen von Rollen für Verbundbenutzer (Konsole)

Die Verfahren zum Erstellen einer Rolle für Verbundbenutzer sind vom gewählten Drittanbieter abhängig:

Erstellen von Rollen für den Zugriff durch Verbundbenutzer (AWS CLI)

Die Schritte zum Erstellen einer Rolle für die unterstützten Identitätsanbieter (OIDC oder SAML) aus der AWS CLI sind identisch. Der Unterschied liegt im Inhalt der Vertrauensrichtlinie, die Sie in den notwendigen Schritten erstellen. Beginnen Sie mit den im Abschnitt Voraussetzungen beschriebenen Schritten für den verwendeten Anbietertyp:

Das Erstellen einer Rolle über die AWS CLI umfasst mehrere Schritte. Wenn Sie eine Rolle mithilfe der Konsole erstellen, werden viele Schritte automatisch abgeschlossen. In AWS CLI müssen Sie diese Schritte jedoch manuell ausführen. Sie müssen die Rolle erstellen und ihr dann eine Berechtigungsrichtlinie zuweisen. Optional können Sie auch die Berechtigungsgrenze für Ihre Rolle festlegen.

So erstellen Sie eine Rolle für den Identitätsverbund (AWS CLI)
  1. Erstellen Sie eine Rolle: aws iam create-role

  2. Fügen Sie eine Berechtigungsrichtlinie zur Rolle hinzu: aws iam attach-role-policy

    or

    Erstellen Sie eine eingebundene Berechtigungsrichtlinie für die Rolle: aws iam put-role-policy

  3. (Optional) Fügen Sie der Rolle benutzerdefinierte Attribute durch Zuweisen von Tags hinzu: aws iam tag-role

    Weitere Informationen finden Sie unter Verwalten von Tags auf IAM-Rollen (AWS CLI- oder AWS-API).

  4. (Optional) Legen Sie die Berechtigungsgrenze für die Rolle fest: aws iam put-role-permissions-boundary

    Eine Berechtigungsgrenze bestimmt die maximalen Berechtigungen, die eine Rolle haben kann. Berechtigungsgrenzen sind eine erweiterte AWS-Feature.

Das folgende Beispiel zeigt die ersten beiden und häufigsten Schritte zum Anlegen einer Identitätsanbieter-Rolle in einer einfachen Umgebung. Dieses Beispiel erlaubt jedem Benutzer im 123456789012-Konto, die Rolle zu übernehmen und den example_bucket-Amazon S3 Bucket anzuzeigen. In dem Beispiel wird davon ausgegangen, dass Sie die AWS CLI auf einem Windows-Computer ausführen und die AWS CLI bereits mit Ihren Anmeldeinformationen konfiguriert haben. Weitere Informationen finden Sie unter Konfigurieren der AWS Command Line Interface.

Das folgende Beispiel einer Vertrauensrichtlinie ist für eine mobile Anwendung vorgesehen, wenn sich der Benutzer mit Amazon Cognito anmeldet. In diesem Beispiel steht us-east:12345678-ffff-ffff-ffff-123456 für die von Amazon Cognito; zugewiesene Identitäten-Pool-ID.

{ "Version": "2012-10-17", "Statement": { "Sid": "RoleForCognito", "Effect": "Allow", "Principal": {"Federated": "cognito-identity.amazonaws.com"}, "Action": "sts:AssumeRoleWithWebIdentity", "Condition": {"StringEquals": {"cognito-identity.amazonaws.com:aud": "us-east:12345678-ffff-ffff-ffff-123456"}} } }

Die folgende Berechtigungsrichtlinie erlaubt jedem, der die Rolle übernimmt, nur die Aktion ListBucket auf dem example_bucket-Amazon S3-Bucket durchzuführen.

{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": "s3:ListBucket", "Resource": "arn:aws:s3:::example_bucket" } }

Um diese Test-Cognito-Role-Rolle zu erstellen, müssen Sie zuvor die vorhergehende Vertrauensrichtlinie mit dem Namen trustpolicyforcognitofederation.json und die vorherige Berechtigungsrichtlinie mit dem Namen permspolicyforcognitofederation.json im policies-Ordner Ihres lokalen C:-Laufwerks speichern. Sie können dann die folgenden Befehle verwenden, um die Rolle zu erstellen und die eingebundene Richtlinie hinzuzufügen.

# Create the role and attach the trust policy that enables users in an account to assume the role. $ aws iam create-role --role-name Test-Cognito-Role --assume-role-policy-document file://C:\policies\trustpolicyforcognitofederation.json # Attach the permissions policy to the role to specify what it is allowed to do. aws iam put-role-policy --role-name Test-Cognito-Role --policy-name Perms-Policy-For-CognitoFederation --policy-document file://C:\policies\permspolicyforcognitofederation.json

Erstellen von Rollen für den Zugriff durch Verbundbenutzer (AWS-API)

Die Schritte zum Erstellen einer Rolle für die unterstützten Identitätsanbieter (OIDC oder SAML) aus der AWS CLI sind identisch. Der Unterschied liegt im Inhalt der Vertrauensrichtlinie, die Sie in den notwendigen Schritten erstellen. Beginnen Sie mit den im Abschnitt Voraussetzungen beschriebenen Schritten für den verwendeten Anbietertyp:

So erstellen Sie eine Rolle für den Identitätsverbund (AWS-API)
  1. Erstellen Sie eine Rolle: CreateRole

  2. Fügen Sie eine Berechtigungsrichtlinie zur Rolle hinzu: AttachRolePolicy

    or

    Erstellen Sie eine eingebundene Berechtigungsrichtlinie für die Rolle: PutRolePolicy

  3. (Optional) Fügen Sie dem Benutzer benutzerdefinierte Attribute durch Zuweisen von Tags hinzu: TagRole

    Weitere Informationen finden Sie unter Verwalten von Tags auf IAM-Benutzer (AWS CLI- oder AWS-API).

  4. (Optional) Legen Sie die Berechtigungsgrenze für die Rolle fest: PutRolePermissionsBoundary

    Eine Berechtigungsgrenze bestimmt die maximalen Berechtigungen, die eine Rolle haben kann. Berechtigungsgrenzen sind eine erweiterte AWS-Feature.