Sprawdzone metody zabezpieczania interfejsu API

Zadbaj o dobrą organizację dzięki kolekcji Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.

Klucze interfejsu API są wymagane w przypadku aplikacji i projektów korzystających z interfejsów API i pakietów SDK Google Maps Platform. Podczas tworzenia kluczy bezpieczeństwa zabezpiecz je przy minimalnym nakładzie pracy.

Chociaż klucze bezpieczeństwa można utworzyć po ich utworzeniu i użyciu, mogą obowiązywać różne ograniczenia w zależności od sposobu ich użycia. Aktualizowanie lub zastępowanie kluczy w aplikacjach mobilnych (Android i iOS) jest najtrudniejsze, ponieważ klucze nie zostaną zastąpione, dopóki wszyscy klienci nie zaktualizują aplikacji. Aktualizowanie lub zastępowanie kluczy w aplikacjach JavaScript lub aplikacjach internetowych jest o wiele łatwiejsze, ale ich aktualizacja może nadal wymagać starannego planowania i szybkiej pracy.

Zasady bezpieczeństwa dotyczące poszczególnych usług Google Maps Platform, np. Maps JavaScript API, są wymienione w sekcji Więcej informacji.

Ogranicz klucze interfejsu API

Gdy tworzysz klucze interfejsu API po raz pierwszy, ogranicz je za pomocą ograniczenia aplikacji i co najmniej 1 ograniczenia interfejsu API.

  • Ograniczenia aplikacji ograniczają używanie klucza interfejsu API do określonej platformy (Android lub iOS) lub do określonych witryn (publiczny adres IP i witryna). Do każdego klucza interfejsu API można dodać tylko jeden typ ograniczenia aplikacji.

  • Ograniczenia dostępu do interfejsów API ograniczają możliwość używania kluczy interfejsu API do co najmniej jednego interfejsu API lub pakietów SDK Google Maps Platform. Przetwarzane będą tylko żądania korzystające z interfejsów API lub pakietów SDK powiązanych z kluczem interfejsu API. W przypadku danego klucza interfejsu API możesz określić dowolną liczbę ograniczeń interfejsu API.

Jeśli podczas tworzenia klucza interfejsu API nie został przez Ciebie zabezpieczony, utwórz dodatkowe klucze interfejsu API i ogranicz je, a następnie zaktualizuj wszystkie swoje aplikacje nowymi kluczami interfejsu API. Co prawda pojedynczy klucz w danej aplikacji będzie idealny ze względów bezpieczeństwa, ale w przypadku wielu aplikacji możesz używać kluczy z ograniczonym dostępem, o ile ich typy nie powodują problemów ze zgodnością z aplikacjami, które współużytkują klucz.

Jeśli ograniczasz klucze interfejsu API po ich utworzeniu, sprawdź ich użycie, aby upewnić się, że ograniczenia nie naruszają żadnych istniejących aplikacji.

  1. Otwórz stronę Dane w Google Cloud Console.

  2. Wybierz Pokaż filtry.

  3. W menu Grupowanie według wybierz Dane logowania. Zobaczysz, które klucze interfejsu API są używane w poszczególnych usługach Google.

  4. Kliknij Dane logowania.

  5. Odznacz wszystkie dane logowania.

  6. Dla każdego wyświetlanego klucza wybierz klucz i kliknij OK.

  7. W menu Grouped by (Pogrupowane według) wybierz API (Interfejs API). Zobaczysz, które ograniczenia interfejsu API musisz zastosować na tym kluczu.

    Po wybraniu metody interfejsu API z opcji Pogrupowane według dowiesz się, który typ ograniczeń aplikacji jest odpowiedni do danego klucza.

Ustawianie ograniczenia aplikacji dla klucza interfejsu API

  1. Otwórz stronę Dane logowania.
  2. Wybierz klucz interfejsu API, dla którego chcesz ustawić ograniczenie. Pojawi się strona właściwości klucza interfejsu API.

  3. W sekcji Ograniczenia klucza wybierz Ograniczenia aplikacji.

    Wybierz jeden z typów ograniczeń i podaj wymagane informacje zgodnie z listą ograniczeń.

    Typ ograniczenia Opis
    Strony odsyłające 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śl https:// i http:// 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 format file:///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://.
    Adresy IP Podaj jeden adres IPv4 lub IPv6 albo podsieć w notacji CIDR. Żądanie usługi internetowej usługi sprawdza i porównuje zewnętrzny adres IP z ograniczeniem klucza interfejsu API, więc użyj publicznego adresu IP serwera.
    Aplikacje na Androida Dodaj odcisk cyfrowy certyfikatu podpisującego SHA-1 i nazwę pakietu aplikacji na Androida z pliku AndroidManifest.xml.
    Aplikacje na iOS Pod typami wybierz odpowiedni identyfikator pakietu na iOS.
  4. Kliknij Zapisz.

Ustawianie ograniczenia dotyczącego klucza interfejsu API

  1. Otwórz stronę danych logowania.

  2. Wybierz klucz interfejsu API, który chcesz ograniczyć. Pojawi się strona Ogranicz klucz interfejsu API i zmień jego nazwę.

  3. W sekcji Ograniczenia interfejsu API:

    • Kliknij Ogranicz klucz.

    • Kliknij menu Wybierz interfejsy API i wybierz interfejsy API lub pakiety SDK, do których aplikacja ma uzyskiwać dostęp za pomocą klucza interfejsu API.

      Jeśli nie widzisz na liście interfejsu API lub pakietu SDK, musisz go włączyć.

  4. Kliknij Zapisz.

    Po wykonaniu tego kroku ograniczenie stanie się częścią definicji klucza interfejsu API. Jeśli nie podasz odpowiednich szczegółów lub nie klikniesz „Zapisz”, klucz interfejsu API nie zostanie ograniczony. Więcej informacji znajdziesz w przewodniku o pobieraniu klucza interfejsu API dotyczącym określonego interfejsu API lub pakietu SDK, który Cię interesuje.

Usuń nieużywane klucze interfejsu API

Zanim usuniesz klucz interfejsu API, upewnij się, że nie jest on używany w środowisku produkcyjnym. Jeśli ruch się nie powiedzie, klucz może być bezpieczny do usunięcia.

Aby usunąć klucz interfejsu API:

  1. Otwórz stronę Dane logowania.

  2. Wybierz klucz interfejsu API, który chcesz usunąć.

  3. Kliknij przycisk Usuń u góry strony.

  4. Gdy pojawi się okno Usuń dane logowania, kliknij Usuń.

    Rozpowszechnienie klucza interfejsu API może potrwać kilka minut. Po rozpowszechnieniu ruch przy użyciu usuniętego klucza API zostanie odrzucony.

Inne sposoby zabezpieczania interfejsów API

Zachowaj ostrożność podczas generowania kluczy interfejsu API