

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.

# Konfigurieren eines kontenübergreifenden API Gateway-Lambda-Genehmigers
<a name="apigateway-lambda-authorizer-cross-account-lambda-authorizer"></a>

Sie können jetzt auch eine AWS Lambda Funktion aus einem anderen AWS Konto als API-Autorisierungsfunktion verwenden. Jedes Konto kann sich in jeder Region befinden, in der Amazon API Gateway verfügbar ist. Die Lambda-Autorisierungsfunktion kann Bearer-Token-Authentifizierungsstrategien wie OAuth SAML verwenden. Dies macht es einfach, eine zentrale Lambda-Autorisierungsfunktion zentral zu verwalten und über mehrere API Gateway gemeinsam zu nutzen. APIs

In diesem Abschnitt zeigen wir, wie eine kontoübergreifende Lambda-Genehmigerfunktion mit der Amazon API Gateway-Konsole konfiguriert wird.

Bei diesen Anweisungen wird davon ausgegangen, dass Sie bereits eine API-Gateway-API in einem AWS Konto und eine Lambda-Autorisierungsfunktion in einem anderen Konto haben.

## Kontoübergreifenden Lambda-Genehmiger mit der API Gateway-Konsole konfigurieren
<a name="apigateway-cross-account-lambda-auth-configure-cross-account-authorizer"></a>

Melden Sie sich in der Amazon-API-Gateway-Konsole bei dem Konto an, in dem Ihre API enthalten ist, und gehen Sie wie folgt vor:

1. Wählen Sie Ihre API und dann im Hauptnavigationsbereich **Genehmiger**.

1. Wählen Sie **Genehmiger erstellen** aus. 

1. Geben Sie unter **Name des Genehmigers** einen Namen für den Genehmiger ein.

1. Wählen Sie als **Genehmiger-Typ** **Lambda** aus.

1. Geben Sie für **Lambda-Funktion** den vollständigen ARN der Lambda-Genehmigerfunktion aus Ihrem zweiten Konto ein.
**Anmerkung**  
Sie finden den ARN für Ihre Funktion in der Lambda-Konsole in der oberen rechten Ecke des Konsolenfensters.

1. Eine Warnung mit einer `aws lambda add-permission`-Befehlszeichenfolge wird angezeigt. Diese Richtlinie gewährt API Gateway die Berechtigung, die Genehmiger-Lambda-Funktion aufzurufen. Kopieren Sie den Befehl und speichern Sie ihn für später. Führen Sie den Befehl aus, nachdem Sie den Genehmiger erstellt haben.

1. Wählen Sie für **Lambda-Ereignisnutzlast** entweder **Token** für einen `TOKEN`-Genehmiger oder **Anfrage** für einen `REQUEST`-Genehmiger.

1. Abhängig von der Auswahl im vorherigen Schritt führen Sie einen der folgenden Schritte aus:

   1.  Gehen Sie für die Option **Token** wie folgt vor: 
      + Geben Sie unter **Token-Quelle** den Header-Namen ein, der das Genehmigungstoken enthält. Der API-Client muss einen Header mit diesem Namen enthalten, um das Autorisierungs-Token an den Lambda-Genehmiger zu senden. 
      + Geben Sie optional für die **Token-Validierung** eine Anweisung ein RegEx . API Gateway führt eine erste Überprüfung des eingegebenen Token für diesen Ausdruck an und ruft nach der erfolgreichen Validierung den Genehmiger auf. Dies trägt dazu bei, die Anzahl der Aufrufe Ihrer API zu reduzieren. 
      + Um die vom Genehmiger generierte Genehmigungsrichtlinie zwischenzuspeichern, lassen Sie **Genehmigungs-Caching** aktiviert. Wenn ein Caching der Richtlinie aktiviert ist, können Sie den **TTL**-Wert ändern. Durch die Einstellung **TTL** = 0 wird das Richtlinien-Caching deaktiviert. Wenn das Richtlinien-Caching aktiviert ist, wird der unter **Token-Quelle** angegebene Header-Name zum Cache-Schlüssel. Wenn in der Anfrage mehrere Werte an diesen Header übergeben werden, werden alle Werte zum Cache-Schlüssel, wobei die Reihenfolge beibehalten wird.
**Anmerkung**  
Die **TTL**-Standardwert ist 300 Sekunden. Der Höchstwert ist 3.600 Sekunden; dieses Limit kann nicht erhöht werden.

   1. Für die Optionen **Request** machen Sie Folgendes:
      + Wählen Sie für **Identitätsquellen-Typ** einen Parametertyp aus. Die unterstützten Parametertypen sind `Header`, `Query string`, `Stage variable` und `Context`. Um weitere Identitätsquellen hinzuzufügen, wählen Sie **Parameter hinzufügen**. 
      + Um die vom Genehmiger generierte Genehmigungsrichtlinie zwischenzuspeichern, lassen Sie **Genehmigungs-Caching** aktiviert. Wenn ein Caching der Richtlinie aktiviert ist, können Sie den **TTL**-Wert ändern. Durch die Einstellung **TTL** = 0 wird das Richtlinien-Caching deaktiviert.

        API Gateway verwendet die angegebenen Identitätsquellen als Cachingschlüssel für den Anfrageautorisierer. Wenn das Caching aktiviert ist, ruft API Gateway die Lambda-Funktion des Genehmigers erst auf, nachdem erfolgreich überprüft wurde, dass alle angegebenen Identitätsquellen zur Laufzeit vorhanden sind. Wenn eine angegebene Identitätsquelle fehlt, Null oder leer ist, gibt API Gateway eine `401 Unauthorized`-Antwort zurück, ohne die Lambda-Genehmigerfunktion aufzurufen. 

        Wenn mehrere Identitätsquellen definiert sind, werden sie alle verwendet, um den Cache-Schlüssel des Genehmigers abzuleiten. Das Ändern von Teilen des Cache-Schlüssels bewirkt, dass der Genehmiger das im Cache befindliche Richtliniendokument verwirft und ein neues erstellt. Wenn in der Anfrage ein Header mit mehreren Werten übergeben wird, werden alle Werte Teil des Cache-Schlüssels, wobei die Reihenfolge beibehalten wird. 
      + Wenn das Caching deaktiviert ist, ist es nicht erforderlich, eine Identitätsquelle anzugeben.
**Anmerkung**  
 Zum Aktivieren der Zwischenspeicherung muss der Genehmiger eine Richtlinie zurückgeben, die für alle Methoden einer API anwendbar ist. Um methodenspezifische Richtlinien durchzusetzen, können Sie **Genehmiger-Caching** deaktivieren. 

1. Wählen Sie **Genehmiger erstellen** aus.

1. Fügen Sie die `aws lambda add-permission` Befehlszeichenfolge, die Sie in einem vorherigen Schritt kopiert haben, in ein AWS CLI Fenster ein, das für Ihr zweites Konto konfiguriert ist. Ersetzen Sie `AUTHORIZER_ID` durch die ID Ihres Genehmigers. Dadurch erhält Ihr erstes Konto Zugriff auf die Lambda-Genehmigerfunktion Ihres zweiten Kontos.