Fügen Sie Ihrem Schlüssel API-Schlüsseleinschränkungen hinzu.
Durch Hinzufügen von Einschränkungen können Sie die Verwendung eines API-Schlüssels einschränken und so die Auswirkungen eines manipulierten API-Schlüssels reduzieren.
Weitere Informationen finden Sie unter Einschränkungen für API-Schlüssel anwenden.
Suchparameter vermeiden, um Ihren API-Schlüssel an Google APIs zu senden
Wenn Sie Ihren API-Schlüssel als Abfrageparameter an APIs übergeben, ist er in der URL enthalten und kann durch URL-Scans gestohlen werden. Verwenden Sie stattdessen den x-goog-api-key-HTTP-Header oder eine Clientbibliothek.
Nicht benötigte API-Schlüssel löschen, um das Angriffsrisiko zu minimieren
Behalten Sie nur die API-Schlüssel bei, die Sie aktiv verwenden, um Ihre Angriffsfläche so klein wie möglich zu halten.
API-Schlüssel nicht in Clientcode einfügen oder in Code-Repositories sichern
API-Schlüssel, die im Quellcode fest codiert oder in einem Repository gespeichert sind, können von böswilligen Akteuren abgefangen oder gestohlen werden. Der Client sollte Anfragen an den Server übergeben, der die Anmeldedaten hinzufügen und die Anfrage ausstellen kann.
Autorisierungsschlüssel nicht in der Produktion verwenden
Autorisierungsschlüssel sollen Entwicklern, die Google Cloud APIs ausprobieren, den Einstieg erleichtern. Für die meisten APIs empfehlen wir, in Produktionsumgebungen keine Autorisierungsschlüssel zu verwenden.
Stattdessen sollten Sie auf sicherere Alternativen umstellen, z. B. auf IAM-Richtlinien (Identity and Access Management) und kurzlebige Dienstkontoanmeldedaten, und dabei die Sicherheitsgrundsätze des geringsten Privilegs beachten.
Das sind die Gründe, warum Sie so schnell wie möglich von der Verwendung eines Autorisierungsschlüssels zu sichereren Methoden migrieren sollten:
API-Schlüssel werden zusammen mit Anfragen gesendet. Dadurch ist es wahrscheinlicher, dass der Schlüssel offengelegt oder protokolliert wird.
API-Schlüssel sind Inhaber-Anmeldedaten. Wenn also jemand einen Autorisierungsschlüssel stiehlt, kann er ihn verwenden, um sich als dieses Dienstkonto zu authentifizieren und auf dieselben Ressourcen zuzugreifen, auf die das Dienstkonto zugreifen kann.
Autorisierungsschlüssel verschleiern die Identität des Endnutzers in Audit-Logs. Wenn Sie die Aktionen einzelner Nutzer erfassen möchten, muss jeder Nutzer eigene Anmeldedaten haben.
Umfangreiches Monitoring und Logging implementieren
Das Monitoring API kann Sie bei unautorisierter Nutzung benachrichtigen. Weitere Informationen finden Sie unter Cloud Monitoring – Übersicht und Cloud Logging – Übersicht.
API-Schlüssel isolieren
Stellen Sie jedem Teammitglied einen eigenen API-Schlüssel für jede Anwendung zur Verfügung. So können Sie den Zugriff besser kontrollieren, einen Audit-Trail erstellen und die Auswirkungen eines manipulierten API-Schlüssels reduzieren.
API-Schlüssel regelmäßig rotieren
Sie sollten regelmäßig neue API-Schlüssel erstellen, Ihre Anwendungen zur Verwendung der neuen API-Schlüssel aktualisieren und die alten Schlüssel löschen.
Weitere Informationen finden Sie unter API-Schlüssel rotieren.
Sicherere Methode zum Autorisieren des Zugriffs in Betracht ziehen
Hilfe bei der Auswahl einer Authentifizierungsmethode finden Sie unter Authentifizierungsmethoden.