

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.

# Arbeiten mit Amazon Cognito Identitätsquellen
<a name="identity-sources-cognito"></a>

Verified Permissions arbeitet eng mit Amazon Cognito Cognito-Benutzerpools zusammen. Amazon Cognito JWTs haben eine vorhersehbare Struktur. Verified Permissions erkennt diese Struktur und zieht den größtmöglichen Nutzen aus den darin enthaltenen Informationen. Sie können beispielsweise ein Autorisierungsmodell für die rollenbasierte Zugriffskontrolle (RBAC) implementieren, das entweder ID-Token oder Zugriffstoken verwendet.

Die Identitätsquelle eines neuen Amazon Cognito Cognito-Benutzerpools benötigt die folgenden Informationen:
+ Das AWS-Region.
+ Die Benutzerpool-ID.
+ Der Haupt-Entitätstyp, den Sie Ihrer Identitätsquelle zuordnen möchten, zum Beispiel`MyCorp::User`.
+ Der Entitätstyp der Prinzipalgruppe, den Sie Ihrer Identitätsquelle zuordnen möchten`MyCorp::UserGroup`.
+ Der Client IDs aus Ihrem Benutzerpool, den Sie autorisieren möchten, Anfragen an Ihren Richtlinienspeicher zu stellen.

Da Verified Permissions nur mit Amazon Cognito Cognito-Benutzerpools in demselben funktioniert AWS-Konto, können Sie keine Identitätsquelle in einem anderen Konto angeben. Verified Permissions legt beispielsweise das *Entitätspräfix* — die ID der Identitätsquelle, auf die Sie in Richtlinien verweisen müssen, die sich auf Benutzerpool-Prinzipale beziehen — auf die ID Ihres Benutzerpools fest. `us-west-2_EXAMPLE` In diesem Fall würden Sie auf einen Benutzer in diesem Benutzerpool mit der ID als verweisen `a1b2c3d4-5678-90ab-cdef-EXAMPLE22222` `us-west-2_EXAMPLE|a1b2c3d4-5678-90ab-cdef-EXAMPLE22222`

*Ansprüche* auf Benutzerpool-Tokens können Attribute, Bereiche, Gruppen IDs, Client- und benutzerdefinierte Daten enthalten. [Amazon Cognito JWTs](https://docs.aws.amazon.com/cognito/latest/developerguide/amazon-cognito-user-pools-using-tokens-with-identity-providers.html)verfügen über die Fähigkeit, eine Vielzahl von Informationen, die zu Autorisierungsentscheidungen beitragen können, in Verifizierte Berechtigungen aufzunehmen. Dazu zählen:

1. Benutzername und Gruppenansprüche mit einem `cognito:` Präfix

1. [Benutzerdefinierte Benutzerattribute](https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-attributes.html#user-pool-settings-custom-attributes) mit einem `custom: prefix`

1. Zur Laufzeit hinzugefügte benutzerdefinierte Ansprüche

1. OIDC-Standardansprüche wie und `sub` `email`

Wir behandeln diese Ansprüche ausführlich und erfahren, wie sie verwaltet werden, in den Richtlinien für verifizierte Berechtigungen, unter. [Zuordnen von Amazon Cognito Tokens zum Schema](cognito-map-token-to-schema.md)

**Wichtig**  
Sie können Amazon Cognito Token zwar vor deren Ablauf widerrufen, JWTs gelten jedoch als zustandslose Ressourcen, die eigenständig sind und über eine Signatur und Gültigkeit verfügen. Von Diensten, die [dem JSON Web Token RFC 7519](https://datatracker.ietf.org/doc/html/rfc7519) entsprechen, wird erwartet, dass sie Token remote validieren und müssen sie nicht beim Emittenten validieren. Das bedeutet, dass es verifizierten Berechtigungen möglich ist, Zugriff auf der Grundlage eines Tokens zu gewähren, das für einen Benutzer gesperrt oder ausgestellt und später gelöscht wurde. Um dieses Risiko zu minimieren, empfehlen wir Ihnen, Ihre Token mit der kürzest möglichen Gültigkeitsdauer zu erstellen und Aktualisierungstoken zu widerrufen, wenn Sie die Autorisierung zur Fortsetzung der Sitzung eines Benutzers entfernen möchten. Weitere Informationen finden Sie unter [Benutzersitzungen mit Token-Widerruf beenden](https://docs.aws.amazon.com/cognito/latest/developerguide/token-revocation.html)

Das folgende Beispiel zeigt, wie Sie eine Richtlinie erstellen könnten, die auf einige Ansprüche der Amazon Cognito Cognito-Benutzerpools verweist, die mit einem Prinzipal verknüpft sind.

```
permit(
     principal, 
     action, 
     resource == ExampleCo::Photo::"VacationPhoto94.jpg" 
)
when { 
     principal["cognito:username"]) == "alice" &&
     principal["custom:department"]) == "Finance"
};
```

Das folgende Beispiel zeigt, wie Sie eine Richtlinie erstellen können, die auf einen Prinzipal verweist, der ein Benutzer in einem Cognito-Benutzerpool ist. Beachten Sie, dass die Prinzipal-ID die Form von `"<userpool-id>|<sub>"` hat.

```
permit(
     principal == ExampleCo::User::"us-east-1_example|a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", 
     action, 
     resource == ExampleCo::Photo::"VacationPhoto94.jpg" 
);
```

Die Richtlinien von Cedar für Identitätsquellen in Benutzerpools in Verified Permissions verwenden eine spezielle Syntax für Anspruchsnamen, die andere Zeichen als alphanumerische Zeichen und Unterstriche () `_` enthalten. Dazu gehören auch Ansprüche auf Benutzerpool-Präfixe, die ein `:` Zeichen wie `cognito:username` und enthalten. `custom:department` Um eine Richtlinienbedingung zu schreiben, die auf den `custom:department` Anspruch `cognito:username` oder verweist, schreiben Sie sie jeweils als `principal["cognito:username"]` und`principal["custom:department"]`.

**Anmerkung**  
Wenn ein Token einen Anspruch mit dem `custom:` Präfix `cognito:` oder und einen Anspruchsnamen mit dem wörtlichen Wert `cognito` oder enthält`custom`, schlägt eine Autorisierungsanfrage mit a [IsAuthorizedWithToken](https://docs.aws.amazon.com/verifiedpermissions/latest/apireference/API_IsAuthorizedWithToken.html)`ValidationException`fehl.

Weitere Informationen zur Zuordnung von Ansprüchen finden Sie unter[Zuordnen von Amazon Cognito Tokens zum Schema](cognito-map-token-to-schema.md). Weitere Informationen zur Autorisierung von Amazon Cognito Benutzern finden Sie unter [Autorisierung mit von Amazon verifizierten Berechtigungen](https://docs.aws.amazon.com/cognito/latest/developerguide/amazon-cognito-authorization-with-avp.html) im *Amazon Cognito Developer Guide*.

**Topics**
+ [Amazon Cognito Identitätsquellen für Amazon Verified Permissions erstellen](cognito-create.md)
+ [Amazon Cognito Identitätsquellen für Amazon Verified Permissions bearbeiten](cognito-edit.md)
+ [Zuordnen von Amazon Cognito Tokens zum Schema](cognito-map-token-to-schema.md)
+ [Kunden- und Zielgruppenvalidierung für Amazon Cognito](cognito-validation.md)