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ć i ograniczyć klucz interfejsu API oraz jak go używać w Google Maps Platform.
Zanim zaczniesz
Zanim zaczniesz korzystać ze statycznego interfejsu API Map Google, potrzebujesz projektu z kontem rozliczeniowym i Statyczny interfejs API Map Google włączony. Więcej informacji znajdziesz w artykule Konfiguracja w konsoli Cloud.
Tworzę klucze 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ń:
Ograniczanie kluczy 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
Oprócz ograniczania kluczy interfejsu API musisz też podpisywać żądania dla tego interfejsu API. Więcej Więcej informacji zawiera 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 podanych adresów IP serwerów WWW, wybierz Adresy IP (serwery WWW, zadania cron itp.) z listy Ograniczenia aplikacji. Podaj co najmniej jeden adres IPv4 lub IPv6, lub podsieci w notacji CIDR. Adresy IP muszą być zgodne z adresem źródłowym w parametrze Obserwowanie przez serwery Google Maps Platform. Jeśli używasz sieć tłumaczenie adresów (NAT), Zazwyczaj odpowiada on publicznemu adresowi IP komputera.
- Ograniczenia interfejsów API:
- Kliknij Ogranicz klucz.
- Z menu Wybierz interfejsy API wybierz Maps static API. Jeśli statycznego interfejsu API Map Google nie ma na liście, musisz: włącz ją.
- 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="static-maps-backend.googleapis.com" --allowed-ips="IP_ADDRESS"
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 statycznego interfejsu API Map Google musisz dołączyć klucz interfejsu API. W poniższym przykładzie
zastąp YOUR_API_KEY
swoim kluczem interfejsu API.
https://maps.googleapis.com/maps/api/staticmap?center=Z%C3%BCrich&zoom=12&size=400x400&key=YOUR_API_KEY
W przypadku żądań korzystających z klucza interfejsu API wymagany jest protokół HTTPS.
Co dalej?
Żądania statycznego interfejsu API Map Google powinny też korzystać z podpisu cyfrowego.