Używanie kluczy interfejsu API z Distance Matrix API (starsza wersja)

Usługi Google Maps Platform są zabezpieczone przed nieautoryzowanym użyciem przez ograniczenie wywołań interfejsu API do tych, które zawierają prawidłowe dane logowania. Te dane logowania mają postać klucza interfejsu API – unikalnego ciągu alfanumerycznego, który łączy Twoje konto rozliczeniowe Google z projektem oraz z konkretnym interfejsem API lub pakietem SDK.

Z tego przewodnika dowiesz się, jak utworzyć, ograniczyć i używać klucza interfejsu Google Maps Platform API.

Zanim zaczniesz

Zanim zaczniesz korzystać z interfejsu Distance Matrix API (Legacy), musisz mieć projekt z kontem rozliczeniowym i włączonym interfejsem Distance Matrix API (Legacy). Więcej informacji znajdziesz w artykule Konfigurowanie w konsoli Cloud.

Tworzenie kluczy interfejsu API

Klucz interfejsu API to unikalny identyfikator, który uwierzytelnia żądania powiązane z projektem na potrzeby wykorzystania i płatności. Z projektem musi być powiązany co najmniej 1 klucz interfejsu API.

Aby utworzyć klucz interfejsu API:

Konsola

  1. Otwórz stronę Google Maps Platform > Dane logowania.

    Otwórz stronę Dane logowania

  2. Na stronie Dane logowania kliknij Utwórz dane logowania > Klucz interfejsu API.
    W oknie Utworzono klucz interfejsu API wyświetli się nowo utworzony klucz interfejsu API.
  3. Kliknij Zamknij.
    Nowy klucz interfejsu API pojawi się na stronie Dane logowania w sekcji Klucze interfejsu API.
    (Pamiętaj, aby ograniczyć klucz interfejsu API przed użyciem go w środowisku produkcyjnym).

Pakiet SDK Cloud

gcloud services api-keys create \
    --project "PROJECT" \
    --display-name "DISPLAY_NAME"

Więcej informacji o pakiecie SDK Google Cloud , instalacji pakietu SDK Cloud i tych poleceniach:

Ograniczanie kluczy interfejsu API

Zdecydowanie zalecamy ograniczenie kluczy interfejsu API przez ograniczenie ich użycia tylko do tych interfejsów API, które są potrzebne w Twojej aplikacji. Ograniczenie kluczy interfejsu API zwiększa bezpieczeństwo aplikacji, chroniąc ją przed nieuzasadnionymi żądaniami. Odpowiadasz finansowo za opłaty spowodowane nadużyciem kluczy interfejsu API bez ograniczeń. Więcej informacji znajdziesz w artykule Sprawdzone metody zapewniania bezpieczeństwa interfejsu API.

Aby ograniczyć klucz interfejsu API:

Konsola

  1. Otwórz stronę Google Maps Platform > Dane logowania.

    Otwórz stronę Dane logowania

  2. Wybierz klucz interfejsu API, dla którego chcesz ustawić ograniczenie. Wyświetli się strona właściwości klucza interfejsu API.
  3. W sekcji Ograniczenia klucza ustaw te ograniczenia:
    • Ograniczenia aplikacji:
      1. Aby akceptować żądania z listy adresów IP serwerów WWW, które podajesz, wybierz Adresy IP (serwery WWW, zadania cron itp.) z listy Ograniczenia aplikacji. Określ co najmniej 1 adres IPv4 lub IPv6 albo podsieć w notacji CIDR. Adresy IP muszą być zgodne z adresem źródłowym obserwowanym przez serwery Google Maps Platform. Jeśli używasz translacji adresów sieciowych (NAT), będzie to zwykle odpowiadać publicznemu adresowi IP Twojego komputera.
    • Ograniczenia interfejsów API:
      1. Kliknij Ogranicz klucz.
      2. Z menu Wybierz interfejsy API wybierz Distance Matrix API (Legacy). Jeśli interfejsu Distance Matrix API (Legacy) nie ma na liście, musisz go włączyć.
  4. Aby zapisać zmiany, kliknij Zapisz.

Pakiet SDK Cloud

Wyświetl listę istniejących kluczy.

gcloud services api-keys list --project="PROJECT"

Wyczyść dotychczasowe ograniczenia istniejącego klucza.

gcloud services api-keys update "projects/PROJECT/keys/KEY_ID" \
    --clear-restrictions

Ustaw nowe ograniczenia dla istniejącego klucza.

gcloud services api-keys update projects/PROJECT/locations/global/keys/KEY_ID \
    --api-target=service=distance-matrix-backend.googleapis.com
    --allowed-ips="IP_ADDRESS"

Więcej informacji o pakiecie SDK Google Cloud , instalacji pakietu SDK Cloud i tych poleceniach:

Dodawanie klucza interfejsu API do żądania

Do każdego żądania Distance Matrix API (Legacy) musisz dołączyć klucz interfejsu API. W tym przykładzie, zastąp YOUR_API_KEY swoim kluczem interfejsu API.

https://maps.googleapis.com/maps/api/distancematrix/json?origins=Seattle&destinations=San+Francisco&key=YOUR_API_KEY

W przypadku żądań, które używają klucza interfejsu API, wymagany jest protokół HTTPS.