Vorbereitung
Folgende Voraussetzungen sollten erfüllt sein:
Authentifizierung konfigurieren
So authentifizieren Sie sich mit einem Dienstkonto:
Importieren Sie die App Engine Endpoints-API in Ihre API-Klasse:
import endpointsFügen Sie dem API-Decorator ein Ausstellerobjekt für das Dienstkonto hinzu. Beispiel:
@endpoints.api( name='echo', version='v1', issuers={'serviceAccount': endpoints.Issuer( 'YOUR_SERVICE_ACCOUNT_EMAIL', 'https://www.googleapis.com/robot/v1/metadata/x509/YOUR_SERVICE_ACCOUNT_EMAIL')}, audiences={'serviceAccount': ['YOUR_AUDIENCE']})- Ersetzen Sie
echodurch den Namen der API. - Ersetzen Sie
v1durch die API-Version. - Ersetzen Sie
YOUR_SERVICE_ACCOUNT_EMAILdurch die E-Mail-Adresse Ihres Dienstkontos. - Ersetzen Sie
YOUR_AUDIENCEdurch den vom aufrufenden Dienst gesendeten Wert im Feldaud.
- Ersetzen Sie
Prüfen Sie in jeder API-Methode, mit der Sie eine ordnungsgemäße Authentifizierung gewährleisten möchten, ob ein gültiger
Uservorhanden ist. Wenn dies nicht der Fall ist, geben Sie wie in der folgenden Methodendefinition beispielhaft gezeigt den Fehler401aus:user = endpoints.get_current_user() # If there's no user defined, the request was unauthenticated, so we # raise 401 Unauthorized.Stellen Sie die API bereit. Die API muss bei jedem neu hinzugefügten Client neu bereitgestellt werden.