Usługi Google Maps Platform są zabezpieczane przed nieautoryzowanym użyciem przez ograniczenie wywołań interfejsu API do tych, którzy podają odpowiednie dane uwierzytelniające. Dane logowania mają postać klucz interfejsu API – niepowtarzalny ciąg alfanumeryczny, który wiąże konto rozliczeniowe Google z projektu i za pomocą określonego interfejsu API lub pakietu SDK.
Z tego przewodnika dowiesz się, jak utworzyć klucz interfejsu API dla Google Maps Platform, jak ograniczyć do niego dostęp i jak go używać.
Zanim zaczniesz
Zanim zaczniesz korzystać z interfejsu Maps Embed API, potrzebujesz projektu z kontem rozliczeniowym i Interfejs Maps Embed API został włączony. Więcej informacji znajdziesz w artykule Konfiguracja w konsoli Cloud.
Tworzenie kluczy interfejsu API
Klucz interfejsu API to unikalny identyfikator, który uwierzytelnia żądania powiązane z projektem w: użytkowania i rozliczeń. Musisz mieć co najmniej 1 klucz interfejsu API powiązany z projektem.
Aby utworzyć klucz interfejsu API:
Konsola
-
Otwórz Google Maps Platform > Dane logowania.
-
Na stronie Dane logowania kliknij Utwórz dane logowania > API.
W oknie Utworzono klucz interfejsu API pojawi się nowo utworzony klucz interfejsu API. -
Kliknij Zamknij.
Nowy klucz interfejsu API znajdziesz na stronie Dane logowania w sekcji Klucze interfejsu API.
(Pamiętaj o ograniczeniu dostępu do interfejsu API przed użyciem w środowisku produkcyjnym).
Pakiet SDK Cloud
gcloud alpha services api-keys create \ --project "PROJECT" \ --display-name "DISPLAY_NAME"
Przeczytaj więcej na temat Pakiet SDK Google Cloud , Instalacja pakietu SDK Cloud oraz tych poleceń:
Ogranicz klucze interfejsu API
Zdecydowanie zalecamy ograniczenie użycia kluczy API do tych, które Interfejsy API potrzebne do aplikacji. Ograniczenie kluczy interfejsu API zwiększa bezpieczeństwo aplikacji przez i chronić je przed nieuzasadnionymi żądaniami. Więcej informacji: Sprawdzone metody zabezpieczania interfejsów API
Aby ograniczyć klucz interfejsu API:
Konsola
-
Otwórz Google Maps Platform > Dane logowania.
- Wybierz klucz interfejsu API, dla którego chcesz zastosować ograniczenie. Pojawi się strona właściwości klucza interfejsu API.
- W sekcji Ograniczenia kluczy ustaw te ograniczenia:
- Ograniczenia aplikacji:
- Aby akceptować żądania z listy dostarczanych przez Ciebie witryn, wybierz opcję HTTP strony odsyłające (witryny internetowe) z listy aplikacji, ograniczenia.
- Podaj co najmniej jedną witrynę odsyłającą. Możesz użyć symbolu wieloznacznego
do autoryzowania wszystkich subdomen (na przykład
https://*.google.com
akceptuje wszystkie witryny zakończone na.google.com
w przypadku dostępu przez HTTPS). Pamiętaj, że jeśli podasz www.domena.com, jest to symbol wieloznaczny www.domena.com/*, a autoryzuje ścieżkę podrzędną tej nazwy hosta. Dozwolone są tylko schematy stron odsyłającychhttps://
ihttp://
obsługiwane. - Ograniczenia interfejsów API:
- Kliknij Ogranicz klucz.
- Wybierz Maps Embed API z menu Wybierz interfejsy API. Jeśli interfejsu Maps Embed API nie ma na liście, musisz: włącz ją.
- Jeśli Twój projekt korzysta z Biblioteki miejsc, wybierz też Places API. Podobnie, jeśli Twój projekt używa innych usług w interfejsie JavaScript API (Usługa wskazówek dojazdu, Usługa macierzy odległości, Usługa wysokości względnej lub usługa geokodowania), musisz też włączyć i wybrać odpowiedni interfejs API z tej listy.
- Aby zastosować zmiany, kliknij Zapisz.
Pakiet SDK Cloud
Wyświetl listę istniejących kluczy.
gcloud services api-keys list --project="PROJECT"
Usuń ograniczenia dotyczące istniejącego klucza.
gcloud alpha services api-keys update "projects/PROJECT/keys/KEY_ID" \ --clear-restrictions
Ustaw nowe ograniczenia dla istniejącego klucza.
gcloud alpha services api-keys update "projects/PROJECT/keys/KEY_ID" \ --api-target="maps-embed-backend.googleapis.com" --allowed-referrers="referer"
Przeczytaj więcej na temat Pakiet SDK Google Cloud , Instalacja pakietu SDK Cloud oraz tych poleceń:
Dodaj klucz interfejsu API do żądania
Do każdego żądania do interfejsu API Map Google do umieszczenia na stronie musisz dołączyć klucz interfejsu API.
W przykładzie poniżej zastąp YOUR_API_KEY
swoją nazwą
klucz interfejsu API.
https://www.google.com/maps/embed/v1/MAP_MODE?key=YOUR_API_KEY¶meters