Maps JavaScript API – API-Schlüssel oder Client-ID abrufen

Hinweis: Du kannst dich nicht mehr für die Google Maps Platform-Premiumoption registrieren. Auch für Neukunden ist sie nicht mehr verfügbar.

Authentifizierungsmethode auswählen

So verwendest du die Maps JavaScript API:

  • Kunden mit der Premiumoption können einen API-Schlüssel oder eine Client-ID verwenden, um Anfragen zu authentifizieren.
  • Kunden mit einer älteren Lizenz müssen zur Authentifizierung von Anfragen eine Client-ID verwenden.

Die bei den verschiedenen Authentifizierungsmethoden verfügbaren Tools und Berichte werden hier zusammengefasst:

  • Authentifizierung mit einem API-Schlüssel (Premiumoption)
    Wenn du einen API-Schlüssel zum Authentifizieren deiner Anfrage verwendest, kannst du…
    • alle APIs in der Google Cloud Console auf der Seite „APIs“ verwalten,
    • in der Cloud Console auf der Seite „APIs“ auf Echtzeitnutzungsdaten und Daten zum Nutzungsverlauf für bis zu 30 Tage zugreifen,
    • den Parameter channel zu Anfragen hinzufügen, um ausführlichere Nutzungsberichte zu sehen, und
    • Nutzungsberichte mit Daten für mehr als 30 Tage in der Google Cloud Console aufrufen.
  • Authentifizierung mit einer Client-ID (Premiumoption oder ältere Lizenz)
    Wenn du eine Client-ID zum Authentifizieren deiner Anfrage verwendest, kannst du…
    • den Parameter channel zu Anfragen hinzufügen, um ausführlichere Nutzungsberichte zu sehen,
    • …Nutzungsberichte mit Daten für mehr als 30 Tage in der Google Cloud Console aufrufen
    • …Maps Analytics-Tools für die Maps JavaScript API verwenden.

Weitere Informationen zu Berichten, die für Nutzer mit der Premiumoption verfügbar sind

Authentifizierung mit einem API-Schlüssel

API-Schlüssel erstellen

Der API-Schlüssel ist eine eindeutige Kennung, mit der Anfragen deines Projekts zu Nutzungs- und Abrechnungszwecken authentifiziert werden. Du musst mindestens einen API-Schlüssel mit deinem Projekt verknüpft haben.

So erstellst du einen API-Schlüssel:

  1. Wähle in der Cloud Console auf der Seite für die Projektauswahl ein Google Cloud-Projekt aus, für das du einen API-Schlüssel hinzufügen möchtest, oder erstelle ein neues Projekt.

    Zur Projektauswahl

    Hinweis: Nutzer mit der Premiumoption sollten das Projekt auswählen, das mit ihrem Premium-Konto verknüpft ist. Nur so können sie alle Funktionen der Premiumoption umfassend nutzen. Als du deine Lizenz erworben hast, wurde dir der Name des entsprechenden Projekts in folgendem Format mitgeteilt: gme-[company] > proj-[number] ([type]). Stelle sicher, dass du auf das richtige Projekt zugreifst. Melde dich dazu in der Console unter console.cloud.google.com/project/number als Projektinhaber an und ersetze dabei number durch deine Projektnummer. Den Projektinhaber findest du in deinem Begrüßungsschreiben.

  2. Rufe Google Maps Platform > Anmeldedaten auf.

    Zur Seite „Anmeldedaten“

  3. Klicke auf der Seite Anmeldedaten auf Anmeldedaten erstellen > API-Schlüssel.
    Im Dialogfeld API-Schlüssel erstellt wird der neu erstellte API-Schlüssel angezeigt.
  4. Klicke auf Schließen.
    Der neue API-Schlüssel wird auf der Seite Anmeldedaten unter API-Schlüssel aufgeführt.
    Du musst den API-Schlüssel einschränken, bevor du ihn in der Produktionsumgebung verwendest.

API-Schlüssel in App einfügen

Für jede Anfrage an die Google Maps Platform muss ein API-Schlüssel angegeben werden. Ersetze YOUR_API_KEY im folgenden Beispiel durch deinen API-Schlüssel.

<script async defer src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&callback=initMap"
type="text/javascript"></script>

HTTPS ist für Anfragen erforderlich, die einen API-Schlüssel verwenden, und wird empfohlen für Anfragen, die eine Client-ID enthalten. HTTPS ist auch für Anwendungen mit sensiblen Nutzerdaten in Anfragen notwendig, etwa dem Standort des Nutzers.

API-Schlüssel einschränken

Wenn du API-Schlüssel einschränkst, wird deine App sicherer und es wird dafür gesorgt, dass nur autorisierte Anfragen gesendet werden. Wir empfehlen dringend, die Einschränkungen für deine API-Schlüssel zu befolgen. Weitere Informationen findest du unter Best Practices für die API-Sicherheit.

So schränkst du einen API-Schlüssel ein:

  1. Rufe Google Maps Platform > Anmeldedaten auf.

    Zur Seite „Anmeldedaten“

  2. Wähle den API-Schlüssel aus, für den du eine Einschränkung festlegen möchtest. Die Seite mit den Eigenschaften des API-Schlüssels wird angezeigt.
  3. Nimm unter Schlüsseleinschränkungen folgende Einstellungen vor:
    • App-Einschränkungen:
      1. Wenn du Anfragen von der Liste von Websites zulassen möchtest, die du selbst bereitgestellt hast, wähle in der Liste der Anwendungseinschränkungen den Eintrag HTTP-Verweis-URLs (Websites) aus.
      2. Gib eine oder mehrere Verweis-URLs (Websites) an. Beispiel: *.google.com akzeptiert alle Websites, die auf google.com enden, wie beispielsweise https://developers.google.com.

        Hinweis: Für Verweis-URLs vom Typ „file://“ muss der Schlüsseleinschränkung eine besondere Darstellung hinzugefügt werden. Der Teil „file://“ muss durch „/_file_url__“ ersetzt werden, bevor er der Schlüsseleinschränkung hinzugefügt wird. Beispiel: „file:///path/to/“ sollte das Format „__file_url__//path/to/*“ haben. Nachdem du Verweis-URLs vom Typ „file://“ aktiviert hast, solltest du die Nutzung regelmäßig überprüfen, um zu gewährleisten, dass sie deinen Erwartungen entspricht.

    • API-Einschränkungen:
      1. Klicke auf Schlüssel einschränken.
      2. Klicke im Drop-down-Menü APIs auswählen auf Google Maps Platform. Wenn Google Maps Platform nicht aufgeführt ist, musst du die Option aktivieren.
      3. Falls du für dein Projekt die Places-Bibliothek nutzt, wähle auch die Option Places API aus. Ebenso musst du die entsprechende API in dieser Liste aktivieren und auswählen, wenn in deinem Projekt andere Dienste der JavaScript API verwendet werden (Directions Service, Distance Matrix Service, Elevation Service und/oder Geocoding Service).
  4. Klicke abschließend auf Speichern.

Authentifizierung mit einer Client-ID

Wenn du die Google Maps Platform-Premiumoption erwirbst, erhältst du von Google eine Begrüßungs-E-Mail mit deiner Client-ID. Mit ihr kannst du auf die verschiedenen Berichte und Tools der Premiumoption zugreifen.

Alle Client-IDs beginnen mit dem Präfix gme-. Unten siehst du das Format einer typischen Client-ID.

gme-[Unternehmen] > proj-[Nummer] ([Typ])

Du kannst deine Anfragen für die Maps JavaScript API statt mit einem API-Schlüssel auch mit einer Kombination aus einer Client-ID und einer URL-Registrierung authentifizieren.

Hinweis: Bei dieser Client-ID handelt es sich nicht um einen Schlüssel. Sie kann nur von URLs genutzt werden, die du autorisierst. Weitere Informationen zum Registrieren autorisierter URLs

Beim Laden der API eine Client-ID angeben

Anhand des folgenden Codes siehst du, wie du YOUR_CLIENT_ID beim Laden der Maps JavaScript API durch deine eigene Client-ID ersetzen kannst.

  <script async defer
  src="https://maps.googleapis.com/maps/api/js?client=YOUR_CLIENT_ID&v=quarterly&callback=initMap"></script>

Du musst die Release-Version (auch als funktionsstabile Version bezeichnet) oder eine frühere Version angeben. Dazu hängst du einen v=quarterly-Parameter an. Anwendungen, für die die experimentelle Version verwendet wird, sind nicht durch das SLA für die Google Maps Platform-Premiumoption abgedeckt.

Hinweis: Wenn du zuvor einen API-Schlüssel für die Authentifizierung verwendet hast und nun eine Client-ID verwendest, musst du vor dem Laden der API den key-Parameter entfernen. Die API wird nicht geladen, wenn sowohl eine Client-ID als auch ein API-Schlüssel enthalten sind.

Autorisierte URLs registrieren

Um zu verhindern, dass deine Client-ID durch Dritte auf deren eigener Website genutzt wird, ist deine Client-ID auf eine Liste von URLs beschränkt, die von dir speziell autorisiert wurden.

So rufst du eine Liste der bereits autorisierten URLs ab oder autorisierst weitere URLs:

  1. Melde dich in der Google Cloud Console an.
  2. Klicke im Menü auf der linken Seite auf Maps: Manage Client ID (Maps: Client-ID verwalten).

Du kannst bis zu 100 URLs gleichzeitig hinzufügen. Eine Client-ID kann mit bis zu 3.000 autorisierten URLs verknüpft werden. Wenn zu erwarten ist, dass deine Anwendung Google Maps-Inhalte von mehr als 3.000 Standorten hosten wird, solltest du stattdessen auf API-Schlüssel umstellen.

Hinsichtlich autorisierter URLs ist Folgendes zu beachten:

Der Domainname oder die IP-Adresse muss nicht öffentlich zugänglich sein.
So sind beispielsweise http://myintranet und http://192.168.1.1 gültige Einträge.
Alle Subdomains einer angegebenen Domain sind ebenfalls autorisiert.
Beispiel: Wenn http://example.com autorisiert ist, ist http://www.example.com ebenfalls autorisiert. Das Gegenteil gilt hingegen nicht: Wenn http://www.example.com autorisiert ist, ist http://example.com nicht notwendigerweise ebenfalls autorisiert.
Alle untergeordneten Pfade eines autorisierten Pfades sind ebenfalls autorisiert.
Beispiel: Wenn http://example.com autorisiert ist, ist http://example.com/foo ebenfalls autorisiert. Zusätzlich gilt: Da Subdomains einer angegebenen Domain ebenfalls autorisiert sind, ist auch http://sub.example.com/bar autorisiert.
Bei Pfaden wird zwischen Groß- und Kleinschreibung unterschieden.
Beispielsweise gelten http://www.example.com/ThisPath/ und http://www.example.com/thispath/ als zwei unterschiedliche Pfade.
Du kannst gültige URLs auf bestimmte Ports beschränken.
Wenn beispielsweise http://example.com:8080/foo angegeben ist, wird http://example.com nicht ebenfalls autorisiert.
URLs, die das HTTP-Protokoll verwenden, und solche, die das HTTPS-Protokoll verwenden, gelten als unterschiedliche URLs.
Wenn beispielsweise https://example.com autorisiert ist, ist http://example.com nicht notwendigerweise ebenfalls autorisiert.

Alle oben aufgeführten Regeln werden auf jede Autorisierung angewandt. Du solltest deine Autorisierungen daher sorgfältig planen. Beispielsweise gilt: Dadurch, dass alle untergeordneten Pfade eines angegebenen Pfades autorisiert sind, ebenso wie auch alle Subdomains, kannst du Seiten versehentlich autorisieren. Beispiel:

Mit http://example.com/ wird auch http://sub.example.com/path autorisiert.

Weitere Informationen findest du im Artikel zur Fehlerbehebung bei der URL-Autorisierung für die Google Maps Platform-Premiumoption.