

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.

# Zuordnung von IdP-Attributen zu Profilen und Tokens
<a name="cognito-user-pools-specifying-attribute-mapping"></a>

Identitätsanbieterdienste (IdP), einschließlich Amazon Cognito, können in der Regel mehr Informationen über einen Benutzer aufzeichnen. Möglicherweise möchten Sie wissen, für welches Unternehmen sie arbeiten, wie Sie sie kontaktieren können und welche anderen identifizierenden Informationen Sie benötigen. Das Format dieser Attribute ist jedoch von Anbieter zu Anbieter unterschiedlich. Richten Sie beispielsweise drei IdPs von drei verschiedenen Anbietern mit Ihrem Benutzerpool ein und untersuchen Sie jeweils ein Beispiel für eine SAML-Assertion, ein ID-Token oder eine `userInfo` Payload. Einer stellt die E-Mail-Adresse des Benutzers als`email`, ein anderer als und der dritte als `emailaddress` dar. `http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress`

Ein großer Vorteil, der sich aus der Konsolidierung IdPs mit einem Benutzerpool ergibt, ist die Möglichkeit, die Vielzahl von Attributnamen in einem einzigen OIDC-Token-Schema mit konsistenten, vorhersehbaren, gemeinsamen Attributnamen abzubilden. Auf diese Weise müssen Ihre Entwickler nicht die Logik für die Verarbeitung einer komplexen Vielzahl von Single Sign-On-Ereignissen beibehalten. Bei dieser Formatkonsolidierung handelt es sich um eine Attributzuordnung. Bei der Zuordnung von Benutzerpoolattributen werden IdP-Attributnamen den entsprechenden Benutzerpool-Attributnamen zugewiesen. Sie können Ihren Benutzerpool beispielsweise so konfigurieren, dass der Wert eines `emailaddress` Claims in das Standard-Benutzerpool-Attribut geschrieben wird. `email`

Jeder Benutzerpool-IdP hat ein separates Attributzuordnungsschema. Um Attributzuordnungen für Ihren IdP anzugeben, konfigurieren Sie einen Benutzerpool-Identitätsanbieter in der Amazon Cognito Cognito-Konsole, ein AWS SDK oder die REST-API für Benutzerpools.

## Wissenswertes über Mappings
<a name="cognito-user-pools-specifying-attribute-mapping-requirements"></a>

Bevor Sie mit der Einrichtung der Zuordnung von Benutzerattributen beginnen, sollten Sie sich die folgenden wichtigen Details ansehen.
+ Bei der Anmeldung eines Verbundbenutzers bei Ihrer Anwendung muss ein Mapping für jedes Benutzerpool-Attribut vorhanden sein, das Ihr Benutzerpool verlangt. Beispiel: Wenn Ihr Benutzerpool ein `email`-Attribut für die Anmeldung erfordert, ordnen Sie dieses Attribut seiner Entsprechung vom IDP zu.
+ Standardmäßig werden zugeordnete E-Mail-Adressen nicht überprüft. Sie können eine zugeordnete E-Mail-Adresse nicht mit einem einmaligen Code verifizieren. Ordnen Sie stattdessen ein Attribut von Ihrem IdP zu, um den Überprüfungsstatus zu erhalten. Google und die meisten OIDC-Anbieter enthalten beispielsweise das `email_verified`-Attribut.
+ So können in Ihrem Benutzerpool Identitätsanbieter(IDP)-Token benutzerdefinierten Attributen zuordnen. Anbieter sozialer Netzwerke präsentieren ein Zugriffstoken, und OIDC-Anbieter präsentieren ein Zugriffs- und ein ID-Token. Um ein Token zuzuordnen, fügen Sie ein benutzerdefiniertes Attribut mit einer maximalen Länge von 2048 Zeichen hinzu, gewähren Sie Ihrem App-Client Schreibzugriff auf das Attribut und ordnen Sie dem benutzerdefinierten Attribut `access_token` oder `id_token` des IDP zu.
+ Für jedes zugeordnete Benutzerpool-Attribut muss die maximale Länge des Wertes (2048 Zeichen) für den Wert groß genug sein, den Amazon Cognito vom IDP abruft. Andernfalls meldet Amazon Cognito einen Fehler, wenn sich Benutzer bei Ihrer Anwendung anmelden. Amazon Cognito unterstützt die Zuordnung von IDP-Token zu benutzerdefinierten Attributen nicht, wenn die Token mehr als 2048 Zeichen lang sind.
+ Amazon Cognito leitet das `username` Attribut im Profil eines Verbundbenutzers von bestimmten Ansprüchen ab, die Ihr föderierter IdP erfüllt, wie in der folgenden Tabelle dargestellt. Amazon Cognito stellt diesem Attributwert beispielsweise den Namen Ihres IdP voran. `MyOIDCIdP_[sub]` Wenn Sie möchten, dass Ihre Verbundbenutzer ein Attribut haben, das genau mit einem Attribut in Ihrem externen Benutzerverzeichnis übereinstimmt, ordnen Sie dieses Attribut einem Amazon Cognito Cognito-Anmeldeattribut wie zu. `preferred_username`    
[See the AWS documentation website for more details](http://docs.aws.amazon.com/de_de/cognito/latest/developerguide/cognito-user-pools-specifying-attribute-mapping.html)
+ Wenn in einem Benutzerpool nicht zwischen Groß- und [Kleinschreibung unterschieden](user-pool-case-sensitivity.md) wird, wandelt Amazon Cognito das Quellattribut des Benutzernamens in automatisch generierten Benutzernamen von Verbundbenutzern in Kleinbuchstaben um. Im Folgenden finden Sie ein Beispiel für einen Benutzernamen für einen Benutzerpool, bei dem Groß- und Kleinschreibung beachtet wird:. `MySAML_TestUser@example.com` Das Folgende ist derselbe Benutzername für einen Benutzerpool, bei dem Groß- und *Kleinschreibung nicht berücksichtigt* wird:. `MySAML_testuser@example.com`

  In Benutzerpools ohne Berücksichtigung der Groß- und Kleinschreibung müssen Ihre Lambda-Trigger, die den Benutzernamen verarbeiten, diese Änderung aller Ansprüche in gemischter Groß- und Kleinschreibung für Quellattribute von Benutzernamen berücksichtigen. Um Ihren IdP mit einem Benutzerpool zu verknüpfen, der eine andere Einstellung zur Berücksichtigung von Groß- und Kleinschreibung hat als Ihr aktueller Benutzerpool, erstellen Sie einen neuen Benutzerpool.
+ Amazon Cognito muss Ihre zugeordneten Benutzerpool-Attribute aktualisieren können, wenn sich Benutzer bei Ihrer Anwendung anmelden. Wenn sich ein Benutzer über einen IdP anmeldet, aktualisiert Amazon Cognito die zugeordneten Attribute mit den neuesten Informationen vom IdP. Amazon Cognito aktualisiert zugeordnete Attribute nur, wenn sich ihre Werte ändern. Um sicherzustellen, dass Amazon Cognito die Attribute aktualisieren kann, überprüfen Sie die folgenden Voraussetzungen:
  + Alle benutzerdefinierten Attribute des Benutzerpools, die Sie von Ihrem IDP aus zuordnen, müssen *veränderbar* sein. Sie können veränderbare benutzerdefinierte Attribute jederzeit aktualisieren. Im Gegensatz dazu können Sie nur einen Wert für das *unveränderliche* benutzerdefinierte Attribut festlegen, wenn Sie das Benutzerprofil erstellen. **Um ein veränderbares benutzerdefiniertes Attribut in der Amazon Cognito Cognito-Konsole zu erstellen, aktivieren Sie das Kontrollkästchen **Veränderbar** für das Attribut, das Sie hinzufügen, wenn Sie im **Anmeldemenü Benutzerdefinierte Attribute hinzufügen** auswählen.** Oder, wenn Sie Ihren Benutzerpool mithilfe der [CreateUserPool](https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_CreateUserPool.html)API-Operation erstellen, können Sie den `Mutable` Parameter für jedes dieser Attribute auf setzen. `true` Wenn Ihr IdP einen Wert für ein zugeordnetes unveränderliches Attribut sendet, gibt Amazon Cognito einen Fehler zurück und die Anmeldung schlägt fehl.
  + In den App-Client-Einstellungen für Ihre Anwendung müssen zugeordnete Attribute *beschreibbar* sein. Sie können festlegen, welche Attribute auf der Seite **App-Clients** in der Amazon-Cognito-Konsole beschreibbar sind. Wenn Sie den App-Client mithilfe der API-Operation [https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_CreateUserPoolClient.html](https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_CreateUserPoolClient.html) erstellen, können Sie diese Attribute zum Array `WriteAttributes` hinzufügen. Wenn Ihr IdP einen Wert für ein zugeordnetes nicht beschreibbares Attribut sendet, legt Amazon Cognito den Attributwert nicht fest und fährt mit der Authentifizierung fort.
+ Wenn IdP-Attribute mehrere Werte enthalten, reduziert Amazon Cognito alle Werte zu einer einzigen kommagetrennten Zeichenfolge, die in den eckigen Klammern und eingeschlossen ist. `[` `]` Das Amazon Cognito Cognito-URL-Formular kodiert die Werte, die nicht-alphanumerische Zeichen enthalten, mit Ausnahme von,, und. `.` `-` `*` `_` Sie müssen die einzelnen Werte vor der Verwendung in Ihrer App decodieren und analysieren.
+ Das Zielattribut behält jeden Wert bei, den ihm Ihre Attributzuordnungsregeln zuweisen, es sei denn, er wird durch eine Anmeldung oder eine administrative Aktion geändert. Amazon Cognito entfernt keine Attribute von Benutzern, wenn das Quellattribut nicht mehr im Provider-Token oder in der SAML-Assertion gesendet wird. Die folgenden Aktionen entfernen den Wert eines Attributs aus einem Benutzerpoolprofil für einen Verbundbenutzer:

  1. Der IdP sendet einen leeren Wert für das Quellattribut und eine Zuordnungsregel wendet den leeren Wert auf das Zielattribut an.

  1. Sie löschen den Wert des zugewiesenen Attributs mit einer [DeleteUserAttributes[AdminDeleteUserAttributes](https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_AdminDeleteUserAttributes.html)](https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_DeleteUserAttributes.html)Oder-Anfrage.

## Geben Sie die Identitätsanbieter-Attributzuordnungen für Ihren Benutzerpool an (AWS-Managementkonsole)
<a name="cognito-user-pools-specifying-attribute-mapping-console"></a>

Sie können die verwenden AWS-Managementkonsole , um Attributzuordnungen für den IdP in Ihrem Benutzerpool anzugeben.

**Anmerkung**  
Amazon Cognito ordnet eingehende Ansprüche nur dann Benutzerpoolattributen zu, wenn die Ansprüche im eingehenden Token vorhanden sind. Wenn ein zuvor zugeordneter Anspruch nicht mehr im eingehenden Token vorhanden ist, wird er nicht gelöscht oder geändert. Wenn Ihre Anwendung einen Abgleich von gelöschten Anforderungen erfordert, können Sie vor der Authentifizierung den Lambda-Auslöser verwenden, um das benutzerdefinierte Attribut während der Authentifizierung zu löschen und diesen Attributen das erneute Auffüllen aus dem eingehenden Token zu ermöglichen.

**Geben Sie eine Attributzuordnung für einen Social-IDP wie folgt an**

1. Melden Sie sich bei der [Amazon Cognito-Konsole](https://console.aws.amazon.com/cognito/home) an. Wenn Sie dazu aufgefordert werden, geben Sie Ihre Anmeldeinformationen ein. AWS 

1. Wählen Sie im Navigationsbereich erst **User Pools** (Benutzerpools) aus und anschließend den Benutzerpool, den Sie bearbeiten möchten.

1. Wählen Sie das Menü **Soziale Netzwerke und externe Anbieter**.

1. Wählen Sie **Add an identity provider** (Identitätsanbieter hinzufügen) oder den **Facebook-**, **Google-**, **Amazon-** oder **Apple**-IdP aus, den Sie konfiguriert haben. Suchen Sie nach **Attribute mapping** (Attributzuordnung) und wählen Sie **Edit** (Bearbeiten) aus. 

   Weitere Informationen zum Hinzufügen eines Social-IdP finden Sie unter [Verwenden von Anbietern für soziale Identitäten mit einem Benutzerpool](cognito-user-pools-social-idp.md).

1. Für jedes Attribut, das Sie zuordnen müssen, führen Sie die folgenden Schritte aus:

   1. Wählen Sie ein Attribut aus der Spalte **User pool attribute** (Benutzerpoolattribut) aus. Dies ist das Attribut, das dem Benutzerprofil in Ihrem Benutzerpool zugewiesen ist. Benutzerdefinierte Attribute werden nach Standardattributen aufgeführt.

   1. Wählen Sie ein Attribut aus der **{{<provider>}}Attributspalte** aus. Dies ist das Attribut, das aus dem Anbieterverzeichnis übergeben wird. Bekannte Attribute des Social-Identity-Anbieters werden in einer Dropdown-Liste bereitgestellt.

   1. Um zusätzliche Attribute zwischen Ihrem IdP und Amazon Cognito zuzuordnen, wählen Sie **Add another attribute** (Weiteres Attribut hinzufügen) aus.

1. Wählen Sie **Save Changes**.

**So geben Sie das Attribut-Mapping für einen SAML-Anbieter an**

1. Melden Sie sich bei der [Amazon Cognito-Konsole](https://console.aws.amazon.com/cognito/home) an. Wenn Sie dazu aufgefordert werden, geben Sie Ihre AWS Anmeldeinformationen ein.

1. Wählen Sie im Navigationsbereich erst **User Pools** (Benutzerpools) aus und anschließend den Benutzerpool, den Sie bearbeiten möchten.

1. Wählen Sie das Menü **Soziale Netzwerke und externe Anbieter**.

1. Wählen Sie **Add an identity provider** (Identitätsanbieter hinzufügen) oder den SAML-IdP aus, den Sie konfiguriert haben. Suchen Sie nach **Attribute mapping** (Attributzuordnung) und wählen Sie **Edit** (Bearbeiten) aus. Weitere Informationen zum Hinzufügen eines SAML-IdP finden Sie unter [Verwendung von SAML-Identitätsanbietern mit einem Benutzerpool](cognito-user-pools-saml-idp.md).

1. Für jedes Attribut, das Sie zuordnen müssen, führen Sie die folgenden Schritte aus:

   1. Wählen Sie ein Attribut aus der Spalte **User pool attribute** (Benutzerpoolattribut) aus. Dies ist das Attribut, das dem Benutzerprofil in Ihrem Benutzerpool zugewiesen ist. Benutzerdefinierte Attribute werden nach Standardattributen aufgeführt.

   1. Wählen Sie ein Attribut aus der Spalte **SAML attribute** (SAML-Attribut) aus. Dies ist das Attribut, das aus dem Anbieterverzeichnis übergeben wird.

      Ihr IdP bietet möglicherweise SAML-Assertions als Referenz an. Einige IdPs verwenden einfache Namen, wie z. B.`email`, während andere URL-formatierte Attributnamen verwenden, die den folgenden ähneln:

      ```
      http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress
      ```

   1. Um zusätzliche Attribute zwischen Ihrem IdP und Amazon Cognito zuzuordnen, wählen Sie **Add another attribute** (Weiteres Attribut hinzufügen) aus.

1. Wählen Sie **Änderungen speichern ** aus.

## Angeben von Zuordnungen von Identitätsanbieter-Attributen für Ihren Benutzerpool (und Ihre API)AWS CLI AWS
<a name="cognito-user-pools-specifying-attribute-mapping-cli-api"></a>

Im folgenden Anfragetext [CreateIdentityProvider](https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_CreateIdentityProvider.html)werden die [UpdateIdentityProvider](https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_UpdateIdentityProvider.html)„MyIdP“ -Attribute des SAML-Anbieters`emailaddress`,`birthdate`, und `phone` den Benutzerpool-Attributen`email`, und `birthdate``phone_number`, in dieser Reihenfolge zugeordnet. Dies ist ein vollständiger Anfragetext für einen SAML 2.0-Anbieter. Ihr Anfragetext variiert je nach IdP-Typ und spezifischen Details. Die Attributzuordnung ist im Parameter enthalten. `AttributeMapping`

```
{
   "AttributeMapping": { 
      "email" : "emailaddress",
      "birthdate" : "birthdate",
      "phone_number" : "phone"
   },
   "IdpIdentifiers": [ 
      "IdP1",
      "pdxsaml"
   ],
   "ProviderDetails": { 
      "IDPInit": "true", 
      "IDPSignout": "true", 
      "EncryptedResponses" : "true", 
      "MetadataURL": "https://auth.example.com/sso/saml/metadata", 
      "RequestSigningAlgorithm": "rsa-sha256"
   },
   "ProviderName": "MyIdP",
   "ProviderType": "SAML",
   "UserPoolId": "us-west-2_EXAMPLE"
}
```

Verwenden Sie die folgenden Befehle für die Angabe von Attributzuordnungen für den IdP Ihres Benutzerpools

**So geben Sie Attributzuordnungen auf Anbieter-Erstellungszeit an**
+ AWS CLI: `aws cognito-idp create-identity-provider`

  Beispiel mit Metadaten-Dokument: : `aws cognito-idp create-identity-provider --user-pool-id {{<user_pool_id>}} --provider-name=SAML_provider_1 --provider-type SAML --provider-details file:///details.json --attribute-mapping email=http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress`

  Wo `details.json` enthält:

  ```
  { 
      "MetadataFile": "{{<SAML metadata XML>}}"
  }
  ```
**Anmerkung**  
Wenn der irgendwelche Anführungszeichen (`"`) {{<SAML metadata XML>}} enthält, müssen sie maskiert werden (`\"`).

  Beispiel mit Metadaten-URL:

  ```
  aws cognito-idp create-identity-provider \
  --user-pool-id {{us-east-1_EXAMPLE}} \
  --provider-name=SAML_provider_1 \
  --provider-type SAML \
  --provider-details MetadataURL={{https://myidp.example.com/saml/metadata}} \
  --attribute-mapping email=http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress
  ```
+ API/SDK: [CreateIdentityProvider](https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_CreateIdentityProvider.html)

**Geben Sie Attributzuordnungen für einen vorhandenen Identitätsanbieter wie folgt an**
+ AWS CLI: `aws cognito-idp update-identity-provider`

  Beispiel: `aws cognito-idp update-identity-provider --user-pool-id {{<user_pool_id>}} --provider-name {{<provider_name>}} --attribute-mapping email=http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress`
+ API/SDK: [UpdateIdentityProvider](https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_UpdateIdentityProvider.html)

**Rufen Sie Informationen über das Attribut-Mapping für einen bestimmten IdP wie folgt auf**
+ AWS CLI: `aws cognito-idp describe-identity-provider`

  Beispiel: `aws cognito-idp describe-identity-provider --user-pool-id {{<user_pool_id>}} --provider-name {{<provider_name>}}`
+ API/SDK: [DescribeIdentityProvider](https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_DescribeIdentityProvider.html)