Ich habe ein Google App Engine-Projekt, das eine API über Google Cloud Endpoints verfügbar macht. Bis jetzt verwendeten alle APIs/Endpunkte die OAuth2-Authentifizierung (und Autorisierung), was für "echte" Benutzer gut ist.Java-Anmerkungen zur API-Schlüsselautorisierung in Google Cloud Endpoint?
Jetzt möchte ich einige neue APIs offen legen, die von Maschinen anstelle von menschlichen Benutzern verwendet werden sollen. Ich möchte, dass diese Endpunkte die API-Schlüsselautorisierung verwenden.
In der Cloud-Konsole habe ich einen API-Schlüssel (API-Manager/Anmeldeinformationen) gemacht.
Das Google documentation verwendet eine yaml-Datei, um die API-Schlüsselautorisierung zu konfigurieren. Allerdings verwende ich keine yaml-Konfiguration und dies scheint für Java-Anwendungen nicht üblich zu sein.
Ich würde erwarten, dass es für Java Anmerkungen mit API-Schlüsseln zu autorisieren geben würde. Allerdings erwähnt das Google documentation für Java nichts dergleichen.
Ist es möglich, API-Schlüssel in einer Java-Anwendung mit Anmerkungen zu verwenden? Gibt es einen anderen empfohlenen Weg, dies zu tun?
UPDATE: Es scheint, dass API-Schlüssel in Cloud Endpoints 2.0 arbeiten, die in der Beta (November 2016) ist. Allerdings wird CE 2.0 nicht vom Google Eclipse-Plugin unterstützt und erfordert Maven (was ich nicht mag). Ich habe keine Zeit, mein Projekt neu zu schreiben, deshalb habe ich jetzt einen zusätzlichen "api_key" -Parameter zu meiner API hinzugefügt, den ich einchecke. Beachten Sie, dass dieser Parameter nicht als "Schlüssel" bezeichnet werden kann, da der Cloud-Endpunkt denkt, dass dies sein eigener API-Schlüssel ist, und er antwortet, dass der Zugriff nicht konfiguriert ist.
Das Google Eclipse-Plugin scheint (noch) nicht über dieses Update zu verfügen? Es sieht so aus, als wäre es bei 1.9.34 stecken geblieben. Oder muss ich zuerst Eclipse aktualisieren (immer noch mit Mars 2)? – rakensi
Nur das neue Framework unterstützt dies, das nicht mit dem App Engine SDK ausgeliefert wird. Sie benötigen die com.google.endpoints, Endpoints-Framework-Artefakte. – saiyr
Danke, ich werde das versuchen. – rakensi