# Cognito

Wenn Sie bereits eine Benutzeranmelde-Datenbank mit Amazon Cognito verwenden, können Sie diese Benutzerbasis erneut nutzen und Ihren bestehenden Benutzern Single Sign-On zu ngSurvey mit ihren Cognito-Anmeldeinformationen ermöglichen.&#x20;

## Cognito-Konfiguration

Die folgenden Schritte zeigen Ihnen, wie Sie eine neue Cognito-Anwendung konfigurieren, die mit ngSurvey arbeitet.&#x20;

Gehen Sie in Ihrem bestehenden User Pool zur Registerkarte App Integration

![](https://133942686-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-M8fLhS0bmfBRyq0HdUm%2Fuploads%2FmYljTi8DKqlW6FT04Kqm%2Fimage.png?alt=media\&token=ada5f93f-e5d7-4ff1-b743-91f24364ec53)

Wenn Sie noch keine Domain eingerichtet haben, richten Sie entweder eine Cognito-Domain oder eine benutzerdefinierte Domain ein.

.![](https://133942686-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-M8fLhS0bmfBRyq0HdUm%2Fuploads%2FAXCOnsoO4AMHPnjpiQUC%2Fimage.png?alt=media\&token=6bb5edd5-de3b-4315-8370-b76166f5d8a3)

Erstellen Sie einen neuen Application Client. Der Client muss ein Public client sein und sein Client secret wie folgt gesetzt werden:

![](https://133942686-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-M8fLhS0bmfBRyq0HdUm%2Fuploads%2FmP7iUdkNcvsQy9MA9LR0%2Fimage.png?alt=media\&token=b21b617b-a060-4f5f-911a-b7533287f634)

Sie müssen außerdem eine Callback-URL festlegen, die zur Login-Seite Ihrer ngSurvey-Website weiterleitet.

![](https://133942686-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-M8fLhS0bmfBRyq0HdUm%2Fuploads%2FV1gsLzDGvLR5kscLwz9a%2Fimage.png?alt=media\&token=9c451b0c-d22d-4ea2-8e37-4df40004540f)

Stellen Sie sicher, dass die OpenID-Scopes Email und Profile gesetzt sind

![](https://133942686-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-M8fLhS0bmfBRyq0HdUm%2Fuploads%2F7NJjpgpwlyIoHZFV5Iu4%2Fimage.png?alt=media\&token=d9002e3a-126d-42e5-9d08-a9ae657dff77)

Sobald dies erledigt ist, erstellen Sie den Application Client

## NGSurvey-Konfiguration

Um Cognito in ngSurvey einzurichten, benötigen Sie die Application Client ID und den Issuer. Die Client ID finden Sie in Ihrer App Client-Liste.

![](https://133942686-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-M8fLhS0bmfBRyq0HdUm%2Fuploads%2Fix0shjFRN2L3PJ8fGI15%2Fimage.png?alt=media\&token=61b395be-cec7-4f00-bcd7-f84a8c7ed655)&#x20;

Die Issuer-URL setzt sich aus der User PoolID und der Zone (z. B.: eu-central-1) zusammen, in der der Pool ausgeführt wird, z. B.:

`https://cognito-idp.[ZONE].amazonaws.com/[PoolID]`

Die User Pool ID finden Sie in der Übersicht Ihres Pools.

![](https://133942686-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-M8fLhS0bmfBRyq0HdUm%2Fuploads%2FQJPpjJbN7FFALCarvXUL%2Fimage.png?alt=media\&token=f11fa349-f4c1-4e1a-943d-bfdfdd26e1c1)

Sobald Sie beide Eigenschaften ermittelt haben, können Sie sie im OpenID-Tab der System-/Einstellungsseite von ngSurvey setzen

![](https://133942686-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-M8fLhS0bmfBRyq0HdUm%2Fuploads%2FkibiLLvaVTVh3ZECrjnb%2Fimage.png?alt=media\&token=14e94ce1-65f7-4f85-a354-55484ee5131f)

Das war's! ngSurvey ist jetzt so konfiguriert, dass Single Sign-On für Ihre vorhandenen Cognito-Benutzer neben den integrierten ngSurvey-Benutzern funktioniert.

{% hint style="danger" %}
Wenn Sie Single Sign-On aktivieren, stellen Sie sicher, dass Sie sich zuerst mit einem Cognito-Konto anmelden und diesem Konto Administratorrechte zuweisen oder [Rollen](https://docs.ngsurvey.com/de/multi-user-management/roles) in ngSurvey von der [Benutzer](https://docs.ngsurvey.com/de/multi-user-management/users) Zugriffskontrolle. &#x20;
{% endhint %}

{% hint style="info" %}
Mit der Auto-Link-Eigenschaft für [Rollen](https://docs.ngsurvey.com/de/multi-user-management/roles) und [Gruppen](https://docs.ngsurvey.com/de/multi-user-management/groups) Sie können automatisch eine Rolle oder eine Gruppe jeder neuen Cognito-Benutzerin bzw. jedem neuen Cognito-Benutzer zuordnen, der sich mit ngSurvey verbindet.
{% endhint %}
