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
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:
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 ...
Rufen Sie in der Google Cloud Console die Seite APIs und Dienste > Anmeldedaten auf.
Wählen Sie den Namen des API-Schlüssels aus, den Sie für Ihre API verwenden möchten.
Klicken Sie auf der Detailseite des API-Schlüssels im Abschnitt API-Einschränkungen auf Schlüssel einschränken.
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.Klicken Sie auf Speichern.
Die Einschränkung sollte sofort wirksam werden.