API-Schlüssel verwenden

Auf dieser Seite wird beschrieben, wie Sie API-Schlüssel in API Gateway verwenden.

Ein API-Schlüssel ist ein einfacher String, der ein Google Cloud-Projekt zu Kontingent-, Abrechnungs- und Monitoringzwecken identifiziert. A generiert einen API-Schlüssel in einem Projekt in der Google Cloud Console bettet diesen Schlüssel in jeden Aufruf Ihrer API als Abfrageparameter oder in einen Anfrageheader ein.

Wenn Sie in der API-Konfiguration das Anfordern von API-Schlüsseln festlegen, verwendet API Gateway den API-Schlüssel, um das zugehörige Google Cloud-Projekt zu suchen. API Gateway lehnt Anfragen ab, es sei denn, der API-Schlüssel in Ihrem Google Cloud-Projekt oder in einem anderen Google Cloud-Projekte, in denen Ihre API aktiviert wurde.

Wenn Sie einen API-Schlüssel erstellen oder API-Schlüssel ansehen möchten, die in Ihrem Google Cloud-Projekt bereits verfügbar sind, gehen Sie zu APIs und Dienste > Seite Anmeldedaten

Zu den Anmeldedaten

Anwendungsfall

Um API Gateway-Funktionen wie Kontingente, können Sie eine API Schlüssel, damit API Gateway das Google Cloud-Projekt identifizieren kann dem die Clientanwendung zugeordnet ist.

API-Schlüsselauthentifizierung für API Gateway

Wenn Sie einen API-Schlüssel für die Authentifizierung verwenden, müssen Sie zuerst die API-Schlüsselunterstützung für Ihren Dienst aktivieren.

Geben Sie den folgenden Befehl ein:

gcloud services enable MANAGED_SERVICE_NAME

Der MANAGED_SERVICE_NAME gibt den Namen des verwalteten Dienstes an, der bei der API-Bereitstellung erstellt wurde. Sie finden diesen Namen für Ihre API in der Spalte „Verwalteter Dienst“ auf der API-Landingpage der Console. Alternativ finden Sie diesen Namen im Attribut Managed service, wenn Sie den Befehl gcloud api-gateway apis describe verwenden.

Beispiel:

gcloud services enable my-api-a12bcd345e67f89g0h.apigateway.my-project.cloud.goog

API-Schlüssel einschränken

API-Schlüssel sind standardmäßig uneingeschränkt. Uneingeschränkte Schlüssel sind unsicher, da sie von jedem beliebigen Nutzer verwendet werden können. Wir empfehlen, nach Möglichkeit API-Einschränkungen hinzuzufügen. API-Einschränkungen geben an, welche APIs mit dem API-Schlüssel aufgerufen werden können. Für alle API-Schlüssel, die in Produktionsanwendungen verwendet werden, sollten API-Einschränkungen eingerichtet sein.

So fügen Sie API-Einschränkungen hinzu:

  1. Suchen Sie den Titel der API, wie in Ihrer API-Konfiguration angegeben. Im folgenden Beispiel lautet der API-Titel My Example Config:

    # openapi.yaml
    swagger: '2.0'
    info:
      title: My Example Config
      description: Sample API on API Gateway
      version: 1.0.0
    ...
  2. Rufen Sie in der Google Cloud Console die Seite APIs und Dienste > Anmeldedaten auf.

    Zu den Anmeldedaten

  3. Wählen Sie den Namen des API-Schlüssels aus, den Sie für Ihre API verwenden möchten.

  4. Klicken Sie auf der Detailseite des API-Schlüssels im Abschnitt API-Einschränkungen auf Schlüssel einschränken.

  5. Wählen Sie in der Drop-down-Liste der verfügbaren APIs die API aus, für die Ihr API-Schlüssel verwendet wird. Wählen Sie beispielsweise bei der obigen Beispielkonfiguration My Example Config aus.

  6. Klicken Sie auf Speichern.

Die Einschränkung sollte sofort wirksam werden.