Usługi Google Maps Platform są chronione przed nieautoryzowanym użyciem, ograniczając wywołania interfejsu API do tych, które udostępniają prawidłowe dane uwierzytelniające. Dane logowania mają postać klucza interfejsu API – unikalnego ciągu alfanumerycznego, który łączy konto rozliczeniowe Google z Twoim projektem i z konkretnym interfejsem API lub pakietem SDK.
Z tego przewodnika dowiesz się, jak utworzyć i ograniczyć dostęp do klucza interfejsu API oraz jak go używać w Google Maps Platform.
Zanim zaczniesz
Zanim zaczniesz korzystać z interfejsu Maps JavaScript API, musisz mieć projekt z kontem rozliczeniowym i włączony interfejs Maps JavaScript API. Więcej informacji znajdziesz w artykule Konfiguracja w Cloud Console.
Tworzenie kluczy interfejsu API
Klucz interfejsu API jest unikalnym identyfikatorem uwierzytelniającym żądania powiązane z Twoim projektem na potrzeby użytkowania i rozliczeń. Musisz mieć co najmniej jeden klucz interfejsu API powiązany z Twoim projektem.
Aby utworzyć klucz interfejsu API:
Konsola
-
Otwórz stronę Dane logowania w Google Maps Platform.
-
Na stronie Dane logowania kliknij Utwórz dane logowania &klucz API.
W oknie Utworzono klucz API pojawi się nowo utworzony klucz. -
Kliknij Zamknij.
Nowy klucz interfejsu API znajdziesz na stronie Dane logowania w sekcji Klucze interfejsu API.
(Pamiętaj, aby ograniczyć dostęp do klucza interfejsu API przed użyciem go w środowisku produkcyjnym).
(pakiet) SDK Cloud
gcloud alpha services api-keys create \ --project "PROJECT" \ --display-name "DISPLAY_NAME"
Dowiedz się więcej o pakietach Google Cloud SDK, instalacji Cloud SDK i o tych poleceniach:
Ogranicz klucze interfejsu API
Zdecydowanie zalecamy ograniczenie kluczy interfejsu API tylko do tych interfejsów API, których potrzebujesz w przypadku swojej aplikacji. Ograniczenie kluczy interfejsu API zwiększa bezpieczeństwo aplikacji, chroniąc ją przed nieuzasadnionymi żądaniami. Więcej informacji znajdziesz w artykule o sprawdzonych metodach zabezpieczania interfejsu API.
Aby ograniczyć klucz interfejsu API:
Konsola
-
Otwórz stronę Dane logowania w Google Maps Platform.
- Wybierz klucz interfejsu API, dla którego chcesz ustawić ograniczenie. Pojawi się strona właściwości klucza interfejsu API.
- W sekcji Ograniczenia klucza ustaw te ograniczenia:
- Ograniczenia aplikacji:
- Aby akceptować żądania z listy podanych przez Ciebie witryn, wybierz Witryny odsyłające (witryny) z listy Ograniczenia aplikacji.
- Podaj co najmniej jedną witrynę odsyłającą. Symbole wieloznaczne mogą być używane do autoryzacji wszystkich subdomen (np.
*.google.com
akceptuje wszystkie witryny kończące się na.google.com
). Określhttps://
ihttp://
w stanie niezmienionym. W przypadku innych typów protokołów z adresami URL stron odsyłających musisz użyć specjalnej reprezentacji. Na przykład formatfile:///path/to/
jako__file_url__//path/to/*
. Po włączeniu odesłań musisz monitorować wykorzystanie, aby upewnić się, że działa ono zgodnie z oczekiwaniami. Obsługiwane są te protokoły odsyłające:about://, app://, applewebdata://, asset://, chrome://, content://, file://, ftp://, ionic://, local://, ms-appx://, ms-appx-web://, ms-local-stream://, prism://, qrc://, res://, saphtmlp://
. - Ograniczenia interfejsów API:
- Kliknij Ogranicz klucz.
- Wybierz Interfejs API JavaScript Map Google z menu Wybierz interfejsy API. Jeśli interfejsu Maps JavaScript API nie ma na liście, musisz go włączyć.
- Jeśli Twój projekt korzysta z Biblioteki miejsc, wybierz też interfejs Places API. I podobnie, jeśli Twój projekt korzysta z innych usług w interfejsie API JavaScript (usługa wyznaczania tras, usługa odległości odległości, usługa wysokości lub usług geokodowania), musisz też włączyć i wybrać odpowiedni interfejs API na tej liście.
- Aby zapisać zmiany, kliknij Zapisz.
(pakiet) SDK Cloud
Wyświetlenie listy istniejących kluczy.
gcloud services api-keys list --project="PROJECT"
Wyczyść istniejące ograniczenia istniejącego klucza.
gcloud alpha services api-keys update "projects/PROJECT/keys/KEY_ID" \ --clear-restrictions
Ustaw nowe ograniczenia dotyczące dotychczasowego klucza.
gcloud alpha services api-keys update "projects/PROJECT/keys/KEY_ID" \ --api_target="maps-backend.googleapis.com" --allowed-referrers="referer
Dowiedz się więcej o pakietach Google Cloud SDK, instalacji Cloud SDK i o tych poleceniach:
Dodawanie klucza interfejsu API do żądania
Do każdego żądania do interfejsu API JavaScript Maps należy dołączyć klucz interfejsu API.
W poniższym przykładzie zastąp YOUR_API_KEY
kluczem interfejsu API.
<script async defer src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&callback=initMap"></script>
W przypadku żądań korzystających z klucza interfejsu API wymagany jest protokół HTTPS.