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.
Funktionsweise von der Amazon Cognito mit IAM
Bevor Sie IAM zum Verwalten des Zugriffs auf Amazon Cognito verwenden, erfahren Sie, welche IAM-Funktionen Sie mit Amazon Cognito verwenden können.
| IAM-Funktion | Unterstützung von Amazon Cognito |
|---|---|
|
Ja |
|
|
Nein |
|
|
Ja |
|
|
Ja |
|
|
Ja |
|
|
Nein |
|
|
Teilweise |
|
|
Ja |
|
|
Nein |
|
|
Ja |
|
|
Ja |
Einen allgemeinen Überblick darüber, wie Amazon Cognito und andere AWS Services mit den meisten IAM-Funktionen funktionieren, finden Sie im AWS IAM-Benutzerhandbuch unter Dienste, die mit IAM funktionieren.
Identity-based Richtlinien für Amazon Cognito
Unterstützt Richtlinien auf Identitätsbasis: Ja
Identity-based Richtlinien sind Richtliniendokumente für JSON-Berechtigungen, die Sie an eine Identität anhängen können, z. B. an einen IAM-Benutzer, eine Benutzergruppe oder eine Rolle. Diese Richtlinien steuern, welche Aktionen die Benutzer und Rollen für welche Ressourcen und unter welchen Bedingungen ausführen können. Informationen zum Erstellen identitätsbasierter Richtlinien finden Sie unter Definieren benutzerdefinierter IAM-Berechtigungen mit vom Kunden verwalteten Richtlinien im IAM-Benutzerhandbuch.
Mit identitätsbasierten IAM-Richtlinien können Sie angeben, welche Aktionen und Ressourcen zugelassen oder abgelehnt werden. Darüber hinaus können Sie die Bedingungen festlegen, unter denen Aktionen zugelassen oder abgelehnt werden. Informationen zu sämtlichen Elementen, die Sie in einer JSON-Richtlinie verwenden, finden Sie in der IAM-Referenz für JSON-Richtlinienelemente im IAM-Benutzerhandbuch.
Identity-based Richtlinienbeispiele für Amazon Cognito
Beispiele für identitätsbasierte Amazon-Cognito-Richtlinien finden Sie unter Identity-based Richtlinienbeispiele für Amazon Cognito.
Resource-based Richtlinien innerhalb von Amazon Cognito
Unterstützt ressourcenbasierte Richtlinien: Nein
Resource-based Richtlinien sind JSON-Richtliniendokumente, die Sie an eine Ressource anhängen. Beispiele für ressourcenbasierte Richtlinien sind IAM-Rollen-Vertrauensrichtlinien und Amazon-S3-Bucket-Richtlinien. In Services, die ressourcenbasierte Richtlinien unterstützen, können Service-Administratoren sie verwenden, um den Zugriff auf eine bestimmte Ressource zu steuern. Für die Ressource, an welche die Richtlinie angehängt ist, legt die Richtlinie fest, welche Aktionen ein bestimmter Prinzipal unter welchen Bedingungen für diese Ressource ausführen kann. Sie müssen in einer ressourcenbasierten Richtlinie einen Prinzipal angeben. Zu den Prinzipalen können Konten, Benutzer, Rollen, Verbundbenutzer oder gehören. AWS-Services
Um kontoübergreifenden Zugriff zu ermöglichen, können Sie ein gesamtes Konto oder IAM-Entitäten in einem anderen Konto als Prinzipal in einer ressourcenbasierten Richtlinie angeben. Weitere Informationen finden Sie unter Kontoübergreifender Ressourcenzugriff in IAM im IAM-Benutzerhandbuch.
Richtlinienaktionen für Amazon Cognito
Unterstützt Richtlinienaktionen: Ja
Administratoren können mithilfe von AWS JSON-Richtlinien angeben, wer Zugriff auf was hat. Das heißt, welcher Prinzipal Aktionen für welche Ressourcen und unter welchen Bedingungen ausführen kann.
Das Element Action einer JSON-Richtlinie beschreibt die Aktionen, mit denen Sie den Zugriff in einer Richtlinie zulassen oder verweigern können. Nehmen Sie Aktionen in eine Richtlinie auf, um Berechtigungen zur Ausführung des zugehörigen Vorgangs zu erteilen.
Eine Liste der Amazon-Cognito-Aktionen finden Sie unter Von Amazon Cognito definierte Aktionen in der Service-Autorisierungs-Referenz.
Richtlinienaktionen in Amazon Cognito verwenden das folgende Präfix vor der Aktion:
cognito-identity
Um mehrere Aktionen in einer einzigen Anweisung anzugeben, trennen Sie sie mit Kommata:
"Action": [ "cognito-identity:action1", "cognito-identity:action2" ]
Signierte und nicht signierte APIs im Vergleich
Wenn Sie Amazon Cognito Cognito-API-Anfragen mit AWS Anmeldeinformationen signieren, können Sie diese in einer AWS Identity and Access Management (IAM-) Richtlinie einschränken. API-Anforderungen, die Sie mit AWS
-Anmeldeinformationen signieren müssen, umfassen die serverseitige Anmeldung mit AdminInitiateAuth sowie Aktionen, die Ihre Amazon-Cognito-Ressourcen erstellen, anzeigen oder ändern, wie beispielsweise UpdateUserPool. Weitere Informationen zu signierten API-Anfragen finden Sie unter Signieren von AWS API-Anfragen.
Da Amazon Cognito ein Verbraucheridentitätsprodukt für Apps ist, die Sie für die Öffentlichkeit zugänglich machen möchten, haben Sie Zugriff auf die folgenden nicht signierten APIs. Ihre App nimmt diese API-Anforderungen für Ihre Benutzer und Ihre potenziellen Benutzer vor. Einige APIs verlangen keine vorherige Autorisierung wie InitiateAuth für den Start einer neuen Authentifizierungssitzung. Einige APIs verwenden Zugriffstoken oder Sitzungsschlüssel für die Autorisierung, z. B. VerifySoftwareToken, um die MFA-Einrichtung für einen Benutzer mit bestehender authentifizierter Sitzung abzuschließen. Eine nicht signierte, autorisierte API der Amazon-Cognito-Benutzerpools unterstützt einen Session- oderAccessToken-Parameter in der Anforderungssyntax wie in der API-Referenz zu Amazon Cognito dargestellt. Eine nicht signierte API der Amazon-Cognito-Identität unterstützt IdentityId-Parameter wie in der API-Referenz zu Amazon-Cognito-Verbundidentitäten dargestellt.
Weitere Informationen zu den Autorisierungsmodellen der Amazon-Cognito-Benutzerpool-API finden Sie unter Liste der API-Operationen, gruppiert nach Autorisierungsmodell.
API-Operationen der Amazon-Cognito-Identitätspools
-
GetId -
GetOpenIdToken -
GetCredentialsForIdentity -
UnlinkIdentity
API-Operationen der Amazon-Cognito-Benutzerpools
-
AssociateSoftwareToken -
ChangePassword -
ConfirmDevice -
ConfirmForgotPassword -
ConfirmSignUp -
DeleteUser -
DeleteUserAttributes -
ForgetDevice -
ForgotPassword -
GetDevice -
GetUser -
GetUserAttributeVerificationCode -
GlobalSignOut -
InitiateAuth -
ListDevices -
ResendConfirmationCode -
RespondToAuthChallenge -
RevokeToken -
SetUserMFAPreference -
SetUserSettings -
SignUp -
UpdateAuthEventFeedback -
UpdateDeviceStatus -
UpdateUserAttributes -
VerifySoftwareToken -
VerifyUserAttribute
Beispiele für identitätsbasierte Amazon-Cognito-Richtlinien finden Sie unter Identity-based Richtlinienbeispiele für Amazon Cognito.
Richtlinienressourcen für Amazon Cognito
Unterstützt Richtlinienressourcen: Ja
Administratoren können mithilfe von AWS JSON-Richtlinien angeben, wer auf was Zugriff hat. Das heißt, welcher Prinzipal Aktionen für welche Ressourcen und unter welchen Bedingungen ausführen kann.
Das JSON-Richtlinienelement Resource gibt die Objekte an, auf welche die Aktion angewendet wird. Als Best Practice geben Sie eine Ressource mit dem zugehörigen Amazon-Ressourcennamen (ARN) an. Verwenden Sie für Aktionen, die keine Berechtigungen auf Ressourcenebene unterstützen, einen Platzhalter (*), um anzugeben, dass die Anweisung für alle Ressourcen gilt.
"Resource": "*"
Amazon-Ressourcennamen (ARNs)
ARNs für Amazon-Cognito-Verbundidentitäten
Mit Amazon-Cognito-Identitäten-Pools (Verbundidentitäten) können Sie den Zugriff eines IAM-Benutzers auf einen bestimmten Identitäten-Pool einschränken, indem Sie den Amazon-Ressourcennamen (ARN) mit dem Format wie im folgenden Beispiel verwenden. Weitere Informationen zu ARNs finden Sie unter IAM-IDs.
arn:aws:cognito-identity:REGION:ACCOUNT_ID:identitypool/IDENTITY_POOL_ID
ARNs für Amazon Cognito Sync
In Amazon Cognito Sync können Kunden den Zugriff auch anhand der Identitäten-Pool-ID, der Identitäts-ID und des Datensatznamens einschränken.
Für APIs, die für einen Identitäten-Pool verwendet werden, ist das ARN-Format des Identitäten-Pools das gleiche wie für die Amazon-Cognito-Verbundidentitäten, mit der Ausnahme, dass der Name des Service cognito-sync anstelle von cognito-identity lautet:
arn:aws:cognito-sync:REGION:ACCOUNT_ID:identitypool/IDENTITY_POOL_ID
Für APIs für eine einzelne Identität, beispielsweise RegisterDevice, können Sie mit dem folgenden ARN-Format auf diese Identität verweisen:
arn:aws:cognito-sync:REGION:ACCOUNT_ID:identitypool/IDENTITY_POOL_ID/identity/IDENTITY_ID
Für APIs, die für Datensätze ausgeführt werden – wie UpdateRecords und ListRecords – finden Sie den einzelnen Datensatz unter Verwendung des folgenden ARN-Formats:
arn:aws:cognito-sync:REGION:ACCOUNT_ID:identitypool/IDENTITY_POOL_ID/identity/IDENTITY_ID/dataset/DATASET_NAME
ARNs für Amazon Cognito: Benutzerpools
Für „Amazon Cognito – Eigene Benutzerpools“ ist es mit dem folgenden ARN-Format möglich, den Zugriff eines Benutzers auf einen bestimmten Benutzerpool einzuschränken:
arn:aws:cognito-idp:REGION:ACCOUNT_ID:userpool/USER_POOL_ID
Eine Liste der Amazon-Cognito-Ressourcentypen und ihrer ARNs finden Sie unter Von Amazon Cognito definierte Ressourcen in der Service-Autorisierungs-Referenz. Informationen zu den Aktionen, mit denen Sie den ARN einzelner Ressourcen angeben können, finden Sie unter Von Amazon Cognito definierte Aktionen.
Beispiele für identitätsbasierte Amazon-Cognito-Richtlinien finden Sie unter Identity-based Richtlinienbeispiele für Amazon Cognito.
Richtlinienbedingungsschlüssel für Amazon Cognito
Unterstützt servicespezifische Richtlinienbedingungsschlüssel: Ja
Administratoren können mithilfe von AWS JSON-Richtlinien angeben, wer auf was Zugriff hat. Das heißt, welcher Prinzipal Aktionen für welche Ressourcen und unter welchen Bedingungen ausführen kann.
Das Element Condition gibt an, wann Anweisungen auf der Grundlage definierter Kriterien ausgeführt werden. Sie können bedingte Ausdrücke erstellen, die Bedingungsoperatoren verwenden, z. B. ist gleich oder kleiner als, damit die Bedingung in der Richtlinie mit Werten in der Anforderung übereinstimmt. Eine Übersicht aller AWS globalen Bedingungsschlüssel finden Sie unter Kontextschlüssel für AWS globale Bedingungen im IAM-Benutzerhandbuch.
Eine Liste von Amazon-Cognito-Bedingungsschlüsseln finden Sie unter Bedingungsschlüssel für Amazon Cognito in der Service-Autorisierungs-Referenz. Informationen dazu, mit welchen Aktionen und Ressourcen Sie einen Bedingungsschlüssel verwenden können, finden Sie unter Von Amazon Cognito definierte Aktionen.
Beispiele für identitätsbasierte Amazon-Cognito-Richtlinien finden Sie unter Identity-based Richtlinienbeispiele für Amazon Cognito.
Zugriffssteuerungslisten (ACLs) in Amazon Cognito
Unterstützt ACLs: Nein
Zugriffssteuerungslisten (ACLs) steuern, welche Prinzipale (Kontomitglieder, Benutzer oder Rollen) auf eine Ressource zugreifen können. ACLs sind ähnlich wie ressourcenbasierte Richtlinien, verwenden jedoch nicht das JSON-Richtliniendokumentformat.
Attribute-based Zugriffskontrolle (ABAC) mit Amazon Cognito
Unterstützt ABAC (Tags in Richtlinien): Teilweise
Attribute-based Die Zugriffskontrolle (ABAC) ist eine Autorisierungsstrategie, die Berechtigungen auf der Grundlage von Attributen definiert, die als Tags bezeichnet werden. Sie können Tags an IAM-Entitäten und AWS -Ressourcen anhängen und dann ABAC-Richtlinien entwerfen, die Operationen zulassen, wenn das Tag des Prinzipals mit dem Tag auf der Ressource übereinstimmt.
Um den Zugriff auf der Grundlage von Tags zu steuern, geben Sie im Bedingungselement einer Richtlinie Tag-Informationen an, indem Sie die Schlüssel aws:ResourceTag/, key-nameaws:RequestTag/, oder Bedingung key-nameaws:TagKeys verwenden.
Wenn ein Service alle drei Bedingungsschlüssel für jeden Ressourcentyp unterstützt, lautet der Wert für den Service Ja. Wenn ein Service alle drei Bedingungsschlüssel für nur einige Ressourcentypen unterstützt, lautet der Wert Teilweise.
Weitere Informationen zu ABAC finden Sie unter Definieren von Berechtigungen mit ABAC-Autorisierung im IAM-Benutzerhandbuch. Um ein Tutorial mit Schritten zur Einstellung von ABAC anzuzeigen, siehe Attributbasierte Zugriffskontrolle (ABAC) verwenden im IAM-Benutzerhandbuch.
Verwenden temporärer Anmeldeinformationen mit Amazon Cognito
Unterstützt temporäre Anmeldeinformationen: Ja
Temporäre Anmeldeinformationen ermöglichen den kurzfristigen Zugriff auf AWS Ressourcen und werden automatisch erstellt, wenn Sie einen Verbund verwenden oder die Rollen wechseln. AWS empfiehlt, temporäre Anmeldeinformationen dynamisch zu generieren, anstatt langfristige Zugriffsschlüssel zu verwenden. Weitere Informationen finden Sie unter Temporäre Anmeldeinformationen in IAM und AWS-Services , die mit IAM funktionieren im IAM-Benutzerhandbuch.
Cross-service Hauptberechtigungen für Amazon Cognito
Unterstützt Forward Access Sessions (FAS): Nein
Forward Access Sessions (FAS) verwenden die Berechtigungen des Prinzipals, der einen aufruft AWS-Service, in Kombination mit der Anfrage, Anfragen an nachgelagerte Dienste AWS-Service zu stellen. Einzelheiten zu den Richtlinien für FAS-Anforderungen finden Sie unter Zugriffssitzungen weiterleiten.
Servicerollen für Amazon Cognito
Unterstützt Servicerollen: Ja
Eine Servicerolle ist eine IAM-Rolle, die ein Service annimmt, um Aktionen in Ihrem Namen auszuführen. Ein IAM-Administrator kann eine Servicerolle innerhalb von IAM erstellen, ändern und löschen. Weitere Informationen finden Sie unter Erstellen einer Rolle zum Delegieren von Berechtigungen an einen AWS-Service im IAM-Benutzerhandbuch.
Weitere Informationen zu Amazon-Cognito-Servicerollen finden Sie unter Aktivieren der Push-Synchronisierung und Implementierung der Push-Synchronisierung.
Warnung
Das Ändern der Berechtigungen für eine Servicerolle könnte die Funktionalität von Amazon Cognito beeinträchtigen. Bearbeiten Sie Servicerollen nur, wenn Amazon Cognito dazu Anleitungen bereitstellt.
Service-linked Rollen für Amazon Cognito
Unterstützt serviceverknüpfte Rollen: Ja
Eine dienstbezogene Rolle ist eine Art von Servicerolle, die mit einer AWS-Service verknüpft ist. Der Dienst kann die Rolle übernehmen, eine Aktion in Ihrem Namen auszuführen. Service-linked Rollen erscheinen in Ihrem Dienst AWS-Konto und gehören dem Dienst. Ein IAM-Administrator kann die Berechtigungen für Service-verknüpfte Rollen anzeigen, aber nicht bearbeiten.
Einzelheiten zum Erstellen oder Verwalten von serviceverknüpften Amazon-Cognito-Rollen finden Sie unter Verwendung von serviceverknüpften Rollen für Amazon Cognito.