Admin API aufrufen

Bevor Nutzer oder Anwendungen die App Engine Admin API verwenden können, müssen Sie als Google Cloud-Projektinhaber die API zuerst in Ihrem Projekt aktivieren und dann Anmeldedaten erstellen, mit denen Nutzer oder Anwendungen HTTP-Anfragen autorisieren können.

Beispielsweise muss ein Inhaber zuerst ein erstes Google Cloud-Projekt erstellen und dann in diesem Projekt Anmeldedaten erstellen, bevor HTTP-Anfragen an die Admin API gesendet werden können. Nachdem der Inhaber das erste Projekt eingerichtet und konfiguriert hat, kann dieses Projekt für administrative Zwecke verwendet werden, um programmatisch andere Ressourcen zu erstellen und zu verwalten. Beispiel:

  • Andere Google Cloud-Projekte erstellen
  • App Engine-Anwendungen für alle neu erstellten Projekte erstellen
  • Anwendungsversionen für neu erstellte App Engine-Anwendungen bereitstellen
  • Ressourcen in allen von Ihnen bereitgestellten Versionen verwalten

Hinweis

Für die folgende Aufgabe müssen Sie der Inhaber des Google Cloud-Projekts sein, in dem Sie die Admin API für Nutzer und Anwendungen aktivieren möchten.

Projekt konfigurieren und Anmeldedaten erstellen

So konfigurieren Sie Ihr Google Cloud-Projekt und erstellen Anmeldedaten:

  1. Aktivieren Sie die App Engine Admin API und die Cloud Storage API in Ihrem Google Cloud-Projekt:

    Beide APIs aktivieren

  2. Erstellen Sie Anmeldedaten, mit denen Nutzer und Anwendungen auf die Admin API in Ihrem Projekt zugreifen können.

    Lesen Sie zum Erstellen der Anmeldedaten den Autorisierungsleitfaden für die Google Cloud Platform. Wählen Sie dann die OAuth 2.0-Autorisierung aus, die den Anforderungen Ihrer Anwendung entspricht.

Beispiele

Die folgenden Beispiele zeigen den Authentifizierungsvorgang mit dem clientseitigen OAuth 2.0-Vorgang zum Abrufen eines Tokens. Mit dem Token werden Anfragen an die Admin API mit dem cURL-Befehlszeilentool autorisiert, um die Beispielanwendung in der App Engine-Anwendung des Projekts [MY_PROJECT_ID] bereitzustellen.

Beispiel für Authentifizierung

In diesem Beispiel muss der Nutzer für den clientseitigen Autorisierungsvorgang, der auch als impliziter Gewährungsvorgang bezeichnet wird, den Zugriff der Clientanwendung auf die Admin API autorisieren. Das zurückgegebene Zugriffstoken ist etwa 60 Minuten gültig oder so lange, wie der Nutzer in der Anwendung aktiv ist.

HTTP-Anfrage

Die folgende URL verwendet eine in der Google Cloud Console erstellte Client-ID, um ein Zugriffstoken anzufordern. Sie können den Nutzer dann an einen autorisierten URI weiterleiten, unter dem Ihre Anwendung das Token empfängt:

https://accounts.google.com/o/oauth2/v2/auth?
  response_type=token&
  client_id=[MY_CLIENT_ID].apps.googleusercontent.com&
  scope=https://www.googleapis.com/auth/cloud-platform&
  redirect_uri=[MY_REDIRECT_URI]

Dabei gilt:

  • [MY_CLIENT_ID] ist eine Client-ID aus einem Satz Ihrer Anmeldedaten in der Google Cloud Console.
  • [MY_REDIRECT_URI] ist der entsprechende autorisierte Weiterleitungs-URI derselben Anmeldedaten in der Google Cloud Console. Wenn kein Weiterleitungs-URI festgelegt ist, geben Sie einen vertrauenswürdigen URI an, z. B. https://www.google.com. Durch den Weiterleitungs-URI wird festgelegt, wohin die HTTP-Antwort gesendet wird. Für die Produktion geben Sie den Authentifizierungsendpunkt Ihrer Anwendung an, mit dem Antworten des OAuth 2.0-Servers verarbeitet werden. Weitere Informationen finden Sie unter OAuth 2.0 für Webserveranwendungen verwenden.

HTTP-Antwort

Wenn die Anwendung die Autorisierung mit der URL anfordert, wird das Zugriffstoken in einer Antwort zurückgegeben. Beispiel:

https://www.google.com/#access_token=[MY_ACCESS_TOKEN]&
  token_type=Bearer&
  expires_in=3600

Dabei ist [MY_ACCESS_TOKEN] das angeforderte Zugriffstoken.

Nachdem Sie ein Zugriffstoken erhalten haben, können Sie damit auf die Admin API zugreifen. Der Authentifizierungsendpunkt Ihrer Anwendung kann beispielsweise das Zugriffstoken programmatisch aus der Antwort extrahieren. Das folgende Beispiel zeigt, wie Sie das Token manuell in einem Befehl vom Typ "cURL" verwenden.

Beispiel einer HTTP-Anfrage mit cURL

Der folgende cURL-Befehl zeigt, wie Sie mit dem Zugriffstoken [MY_ACCESS_TOKEN] eine HTTP-POST-Anfrage senden können. Mit diesem cURL-Befehl werden die in der Konfigurationsdatei app.json definierten Ressourcen für die Version v1 des Dienstes default in der Anwendung MY_PROJECT_ID bereitgestellt.

curl -X POST -T "app.json" -H "Content-Type: application/json" -H "Authorization: Bearer [MY_ACCESS_TOKEN]" https://appengine.googleapis.com/v1/apps/[MY_PROJECT_ID]/services/default/versions

Nächste Schritte