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 weiterleiten, der die Anmeldedaten hinzufügen und die Anfrage ausstellen kann.
API-Schlüssel, die an Dienstkonten gebunden sind, nicht in der Produktionsumgebung verwenden
API-Schlüssel, die an Dienstkonten gebunden sind, sollen Entwicklern, die Google Cloud APIs ausprobieren, den Einstieg erleichtern. Verwenden Sie sie nicht in Produktionsumgebungen. 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.
Hier sind die Gründe, warum Sie so schnell wie möglich von der Verwendung eines an ein Dienstkonto gebundenen API-Schlü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 API-Schlüssel stiehlt, der an ein Dienstkonto gebunden ist, kann er ihn verwenden, um sich als dieses Dienstkonto zu authentifizieren und auf dieselben Ressourcen zuzugreifen, auf die das Dienstkonto zugreifen kann.
Bei API-Schlüsseln, die an Dienstkonten gebunden sind, wird die Identität des Endnutzers in den Audit-Logs verschleiert. Wenn Sie die Aktionen einzelner Nutzer erfassen möchten, muss jeder Nutzer eigene Anmeldedaten haben.
Umfangreiches Monitoring und Logging implementieren
Wenn Sie die API-Nutzung im Blick behalten, können Sie sich bei unautorisierter Nutzung benachrichtigen lassen. 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.