Einrichten von Nutzungsplänen für REST-APIs in API Gateway - Amazon API Gateway

Einrichten von Nutzungsplänen für REST-APIs in API Gateway

Bevor Sie einen Nutzungsplan erstellen, stellen Sie sicher, dass Sie Ihre API-Schlüssel eingerichtet haben. Weitere Informationen finden Sie unter Einrichten von API-Schlüsseln für REST-APIs in API Gateway.

Migrieren Ihrer API auf Standard-Nutzungspläne (falls erforderlich)

Wenn Sie API Gateway nach Einführung der Nutzungsplanfunktionalität (11. August 2016) verwenden, sind für Sie automatisch Nutzungspläne in allen unterstützten Regionen aktiviert.

Wenn Sie API Gateway vor diesem Datum eingeführt haben, müssen Sie möglicherweise auf Standardnutzungspläne migrieren. Die Option Nutzungspläne aktivieren wird angezeigt, bevor Sie zum ersten Mal Nutzungspläne in der ausgewählten Region verwenden. Durch die Aktivierung dieser Option werden Standardnutzungspläne für jede einzelne API-Stufe erstellt, der vorhandene API-Schlüssel zugeordnet sind. Im Standard-Nutzungsplan sind anfänglich keine Drossel- oder Kontingentlimits festgelegt, und die Zuordnungen zwischen den API-Schlüsseln und API-Stufen werden in die Nutzungspläne kopiert. Das API-Verhalten bleibt unverändert. Sie müssen jedoch die apiStages-Eigenschaft UsagePlan verwenden, um die angegebenen API-Stufenwerte (apiId und stage) mit den eingeschlossenen API-Schlüsseln zu verbinden (über UsagePlanKey), anstatt die stageKeys-Eigenschaft ApiKey zu verwenden.

Um zu überprüfen, ob Sie bereits auf Standardnutzungspläne migriert haben, führen Sie den CLI-Befehl get-account aus. In der Befehlsausgabe enthält die features-Liste den Eintrag "UsagePlans", wenn Nutzungspläne aktiviert sind.

Sie können Ihre APIs auch unter Verwendung der AWS CLI auf Standard-Nutzungsplänen migrieren. Dazu gehen Sie wie folgt vor:

So migrieren Sie mit der AWS CLI auf Standardnutzungspläne
  1. Rufen Sie diesen CLI-Befehl auf: update-account.

  2. Verwenden Sie für den cli-input-json-Parameter das folgende JSON-Konstrukt:

    [ { "op": "add", "path": "/features", "value": "UsagePlans" } ]

Erstellen eines Nutzungsplans

Im folgenden Verfahren wird das Erstellen eines Nutzungsplans beschrieben.

AWS Management Console
So erstellen Sie einen Nutzungsplan
  1. Melden Sie sich bei der API-Gateway-Konsole unter https://console.aws.amazon.com/apigateway an.

  2. Wählen Sie im Hauptnavigationsbereich von API Gateway Nutzungspläne und dann Nutzungspläne erstellen.

    Entitäten des API-Nutzungsplans
  3. Geben Sie unter Name einen Namen ein.

  4. (Optional) Geben Sie unter Description (Beschreibung) eine Beschreibung ein.

  5. Standardmäßig ermöglichen Nutzungspläne die Drosselung. Geben Sie eine Rate und einen Burst-Wert für Ihren Nutzungsplan ein. Wählen Sie Drosselung, um die Drosselung auszuschalten.

  6. Standardmäßig ermöglichen Nutzungspläne ein Kontingent für einen bestimmten Zeitraum. Geben Sie unter Anfragen die Gesamtzahl der Anfragen ein, die ein Benutzer im Zeitraum Ihres Nutzungsplans stellen kann. Wählen Sie Kontingent, um das Kontingent zu deaktivieren.

  7. Wählen Sie Nutzungsplan erstellen.

AWS CLI

Der folgende create-usage-plan-Befehl erstellt einen Nutzungsplan, der zu Beginn des Monats zurückgesetzt wird:

aws apigateway create-usage-plan \ --name "New Usage Plan" \ --description "A new usage plan" \ --throttle burstLimit=10,rateLimit=5 \ --quota limit=500,offset=0,period=MONTH
REST API

Rufen Sie usageplan:create auf, um einen Nutzungsplan zu erstellen.

Hinzufügen einer Stufe zu einem Nutzungsplan

Das folgende Verfahren beschreibt, wie Sie eine Stufe zu einem Nutzungsplan hinzufügen.

AWS Management Console
So fügen Sie dem Nutzungsplan eine Stufe hinzu
  1. Wählen Sie Ihren Nutzungsplan aus.

  2. Wählen Sie auf der Registerkarte Zugeordnete Stufen die Option Stufe hinzufügen aus.

    Fügen Sie einem Nutzungsplan eine API-Stufe hinzu.
  3. Wählen Sie für API eine API aus.

  4. Wählen Sie für Stufe eine Stufe aus.

  5. (Optional) Gehen Sie wie folgt vor, um die Drosselung auf Methodenebene zu aktivieren:

    1. Wählen Sie Drosselung auf Methodenebene und anschließend Methode hinzufügen aus.

    2. Wählen Sie unter Ressource eine Ressource aus Ihrer API aus.

    3. Wählen Sie unter Methode eine Methode aus Ihrer API aus.

    4. Geben Sie eine Rate und einen Burst-Wert für Ihren Nutzungsplan ein.

  6. Wählen Sie Zu Nutzungsplan hinzufügen aus.

AWS CLI

Der folgende update-usage-plan-Befehl fügt die Prod-Stufe einer API zu einem Nutzungsplan hinzu:

aws apigateway update-usage-plan \ --usage-plan-id abc123 \ --patch-operations op="add",path="/apiStages",value="a1b1c2:Prod"
REST API

Rufen Sie usageplan:update auf, um einen Nutzungsplan zu aktualisieren.

Hinzufügen eines API-Schlüssels zu einem Nutzungsplan

Das folgende Verfahren zeigt, wie Sie einen API-Schlüssel zu einem Nutzungsplan hinzufügen.

AWS Management Console
So fügen Sie dem Nutzungsplan einen Schlüssel hinzu
  1. Wählen Sie auf der Registerkarte Zugeordnete API-Schlüssel die Option API-Schlüssel hinzufügen aus.

    Entitäten des API-Nutzungsplans
    1. Um Ihrem Nutzungsplan einen vorhandenen Schlüssel zuzuordnen, wählen Sie Bestehenden Schlüssel hinzufügen und wählen Sie dann Ihren vorhandenen Schlüssel aus dem Drop-down-Menü aus.

    2. Um einen neuen API-Schlüssel zu erstellen, wählen Sie Neuen Schlüssel erstellen und hinzufügen aus und erstellen Sie dann einen neuen Schlüssel. Weitere Informationen zum Erstellen eines neuen Schlüssels finden Sie unter Erstellen eines API-Schlüssels.

  2. Wählen Sie API-Schlüssel hinzufügen.

AWS CLI

Der folgende create-usage-plan-key-Befehl verknüpft einen vorhandenen API-Schlüssel mit einem Nutzungsplan:

aws apigateway create-usage-plan-key \ --usage-plan-id a1b2c3 \ --key-type "API_KEY" \ --key-id aaa111bbb
REST API

Rufen Sie usageplankey:create auf, um einen vorhandenen API-Schlüssel mit einem Nutzungsplan zu verknüpfen.

Sie können Ihre API-Schlüssel auch direkt mit einem Nutzungsplan verknüpfen, wenn Sie diese importieren. Rufen Sie apikey:import auf und fügen Sie einen oder mehrere API-Schlüssel direkt zum angegebenen Nutzungsplan hinzu. Die Anforderungsnutzlast sollte API-Schlüsselwerte, die zugehörige Nutzungsplan-ID, boolesche Flags (um anzugeben, dass die Schlüssel für den Nutzungsplan aktiviert sind) und ggf. Namen und Beschreibungen der API-Schlüssel enthalten.

Im folgenden Beispiel der apikey:import-Anforderung werden drei API-Schlüssel (identifiziert durch key, name und description) zu einem Nutzungsplan (identifiziert durch usageplanIds) hinzugefügt:

POST /apikeys?mode=import&format=csv&failonwarnings=fase HTTP/1.1 Host: apigateway.us-east-1.amazonaws.com Content-Type: text/csv Authorization: ... key,name, description, enabled, usageplanIds abcdef1234ghijklmnop8901234567, importedKey_1, firstone, tRuE, n371pt abcdef1234ghijklmnop0123456789, importedKey_2, secondone, TRUE, n371pt abcdef1234ghijklmnop9012345678, importedKey_3, , true, n371pt

Als Ergebnis werden drei UsagePlanKey-Ressourcen erstellt und zu UsagePlan hinzugefügt.

Auf diese Weise können Sie auch API-Schlüssel zu mehreren Nutzungsplänen hinzufügen. Dazu ändern Sie jeden usageplanIds-Spaltenwert in eine CSV-Zeichenfolge, die die ausgewählten Nutzungsplan-IDs in Anführungszeichen angibt ("n371pt,m282qs" oder 'n371pt,m282qs').

Anmerkung

Ein API-Schlüssel kann mehreren Nutzungsplänen zugeordnet werden. Ein Nutzungsplan kann mehreren Stufen zugeordnet werden. Ein bestimmter API-Schlüssel kann jedoch nur einem Nutzungsplan für jede Stufe Ihres API zugeordnet werden.