

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.

# Lambda-Auslöser für die Verifizierung der Antwort auf eine Authentifizierungsaufforderung
<a name="user-pool-lambda-verify-auth-challenge-response"></a>

Der Verify Auth Challenge-Trigger ist eine Lambda-Funktion, die die von einem Benutzer bereitgestellte Antwort mit einer bekannten Antwort vergleicht. Diese Funktion teilt Ihrem Benutzerpool mit, ob der Benutzer die Anfrage richtig beantwortet hat. Wenn der Challenge-Trigger zur Überprüfung `answerCorrect` der Authentifizierung mit einem Aus antwortet`true`, kann die Authentifizierungssequenz fortgesetzt werden.

![\[Lambda-Auslöser für Aufforderungen\]](http://docs.aws.amazon.com/de_de/cognito/latest/developerguide/images/lambda-challenges3.png)


**Überprüfen Sie die Antwort auf die Authentifizierungsabfrage**  
Amazon Cognito ruft diesen Auslöser auf, um zu überprüfen, ob die Antwort des Benutzers auf eine benutzerdefinierte Authentifizierungsaufforderung gültig ist. Es ist Teil eines [benutzerdefinierten Authentifizierungsablaufs](https://docs.aws.amazon.com/cognito/latest/developerguide/amazon-cognito-user-pools-authentication-flow.html#amazon-cognito-user-pools-custom-authentication-flow) für einen Benutzerpool.

Die Anforderung für diesen Auslöser enthält die Parameter `privateChallengeParameters` und `challengeAnswer`. Die `privateChallengeParameters`-Werte werden vom Lambda-Auslöser „Authentifizierungsaufforderung erstellen“ zurückgegeben und enthalten die erwartete Antwort vom Benutzer. Der Parameter `challengeAnswer` enthält die Benutzerantwort auf die Aufforderung.

Die Antwort enthält das `answerCorrect`-Attribut. Wenn der Benutzer die Herausforderung erfolgreich abgeschlossen hat, legt Amazon Cognito den Attributwert auf `true` fest. Wenn der Benutzer die Herausforderung nicht erfolgreich abgeschlossen hat, legt Amazon Cognito den Wert auf `false` fest.

Die Aufforderungsschleife wird so lange ausgeführt, bis die Benutzer alle Aufforderungen beantwortet hat.

**Topics**
+ [Lambda-Auslöserparameter für die Überprüfung einer Authentifizierungsaufforderung](#cognito-user-pools-lambda-trigger-syntax-verify-auth-challenge)
+ [Beispiel für „Antwort auf Authentifizierungsaufforderung überprüfen“](#aws-lambda-triggers-verify-auth-challenge-response-example)

## Lambda-Auslöserparameter für die Überprüfung einer Authentifizierungsaufforderung
<a name="cognito-user-pools-lambda-trigger-syntax-verify-auth-challenge"></a>

Die Anforderung, die Amazon Cognito an diese Lambda-Funktion übergibt, ist eine Kombination der folgenden Parameter und der [allgemeinen Parameter](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pools-working-with-lambda-triggers.html#cognito-user-pools-lambda-trigger-syntax-shared), die Amazon Cognito allen Anfragen hinzufügt.

------
#### [ JSON ]

```
{
    "request": {
        "userAttributes": {
            "string": "string",
            . . .
        },
        "privateChallengeParameters": {
            "string": "string",
            . . .
        },
        "challengeAnswer": "string",
        "clientMetadata": {
            "string": "string",
            . . .
        },
        "userNotFound": boolean
    },
    "response": {
        "answerCorrect": boolean
    }
}
```

------

### Anforderungsparameter für die Verifizierung einer Authentifizierungsaufforderung
<a name="cognito-user-pools-lambda-trigger-syntax-verify-auth-challenge-request"></a>

**userAttributes**  
Dieser Parameter enthält ein oder mehrere Name-Wert-Paare, die Benutzerattribute darstellen.

**userNotFound**  
Amazon Cognito gibt diesen booleschen Wert ein, wenn Amazon Cognito `PreventUserExistenceErrors` für Ihren Benutzerpool-Client auf `ENABLED` festgelegt hat.

**privateChallengeParameters**  
Dieser Parameter stammt aus dem Trigger „Authentifizierungsaufforderung erstellen“. Um festzustellen, ob der Benutzer eine Aufforderung erfüllt hat, vergleicht Amazon Cognito die Parameter mit der **challengeAnswer** eines Benutzers.  
Dieser Parameter sollte alle erforderlichen Informationen enthalten, um die Antwort des Benutzerstauf die Aufforderung zu validieren. Diese Informationen beinhalten die Frage, die Amazon Cognito dem Benutzer stellt (`publicChallengeParameters`), sowie die gültigen Antworten auf die Frage (`privateChallengeParameters`). Dieser Parameter wird nur vom Lambda-Auslöser „Antwort auf Authentifizierungsaufforderung überprüfen“ verwendet. 

**challengeAnswer**  
Dieser Parameterwert ist die Antwort des Benutzers auf die Aufforderung.

**clientMetadata**  
Dieser Parameter enthält ein oder mehrere Schlüssel-Wert-Paare, die Sie als benutzerdefinierte Eingabe für die Lambda-Funktion für den Auslöser zur Überprüfung der Authentifizierungsaufforderung bereitstellen können. Um diese Daten an Ihre Lambda-Funktion zu übergeben, verwenden Sie den ClientMetadata Parameter in den [RespondToAuthChallenge](https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_RespondToAuthChallenge.html)API-Operationen [AdminRespondToAuthChallenge](https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_AdminRespondToAuthChallenge.html)und. Amazon Cognito bezieht keine Daten aus dem ClientMetadata Parameter in [AdminInitiateAuth](https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_AdminInitiateAuth.html)und [InitiateAuth](https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_InitiateAuth.html)API-Operationen in die Anfrage ein, die es an die Verify Auth Challenge-Funktion weiterleitet.

### Antwortparameter für die Verifizierung der Authentifizierungsaufforderung
<a name="cognito-user-pools-lambda-trigger-syntax-verify-auth-challenge-response"></a>

**answerCorrect**  
Wenn der Benutzer die Aufforderung erfolgreich abschließt, legt Amazon Cognito diesen Parameter auf `true` fest. Wenn der Benutzer die Aufforderung nicht erfolgreich abschließt, legt Amazon Cognito den Parameter auf `false` fest. 

## Beispiel für „Antwort auf Authentifizierungsaufforderung überprüfen“
<a name="aws-lambda-triggers-verify-auth-challenge-response-example"></a>

Diese Funktion zur Überprüfung der Authentifizierung überprüft, ob die Antwort des Benutzers auf eine Abfrage mit der erwarteten Antwort übereinstimmt. Die Antwort des Benutzers wird durch Eingaben aus Ihrer Anwendung definiert, und die bevorzugte Antwort wird durch die Antwort aus der Antwort `privateChallengeParameters.answer` auf den [Trigger „Create Auth Challenge](user-pool-lambda-create-auth-challenge.md#aws-lambda-triggers-create-auth-challenge-example)“ definiert. Sowohl die richtige Antwort als auch die angegebene Antwort sind Teil des Eingabeereignisses für diese Funktion.

Wenn in diesem Beispiel die Antwort des Benutzers mit der erwarteten Antwort übereinstimmt, setzt Amazon Cognito den `answerCorrect` Parameter auf`true`.

------
#### [ Node.js ]

```
const handler = async (event) => {
  if (
    event.request.privateChallengeParameters.answer ===
    event.request.challengeAnswer
  ) {
    event.response.answerCorrect = true;
  } else {
    event.response.answerCorrect = false;
  }

  return event;
};

export { handler };
```

------