Использование ключей API

Выберите платформу: Android iOS JavaScript

В этой статье рассказывается, как создать ключ API для Maps SDK для Android, добавить его в приложение и защитить приложение с помощью ограничений ключа. Вы должны добавлять ключи API во все приложения, в которых используется комплект SDK.

Подготовка

Чтобы начать использовать Maps SDK для Android, вам необходимо создать проект с платежным аккаунтом и включить Maps SDK для Android. Инструкции вы можете найти в статье Настройки в Google Cloud Console.

Создание ключей API

Ключ API – это уникальный идентификатор, который используется для аутентификации запросов, связанных с вашим проектом. Он нужен для учета использования API и оплаты. С вашим проектом должен быть связан хотя бы один ключ API.

Чтобы создать его, выполните следующие действия:

Cloud Console

  1. Откройте страницу Google Maps Platform > Credentials (Платформа Google Карт > Учетные данные).

    Перейти на страницу Credentials (Учетные данные)

  2. На странице Учетные данные нажмите Создать учетные данные > Ключ API.
    Появится диалоговое окно с созданным ключом API.
  3. Нажмите Close (Закрыть).
    Новый ключ API можно будет найти в разделе Ключи API на странице Учетные данные.
    Не забудьте настроить ограничения для ключа API, прежде чем использовать его в рабочей среде.

Cloud SDK

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

Прочитайте статьи о Google Cloud SDK, установке Cloud SDK и следующих командах:

.

Настройка ограничений для ключей API

Мы настоятельно рекомендуем ограничивать использование ключей только теми API, которые необходимы для работы вашего приложения. Это защитит ваше приложение от нежелательных запросов. Подробную информацию вы найдете в Рекомендациях по обеспечению безопасности доступа к API.

При настройке ограничений ключа API вам потребуется указать цифровой отпечаток сертификата SHA-1, который был использован для подписи в приложении. Существует два типа сертификатов.

  • Сертификат для отладки. Его следует использовать исключительно при тестировании приложений и работе с кодом до публикации. Не пытайтесь опубликовать приложение, подписанное с помощью сертификата для отладки. Этот сертификат создается автоматически при выполнении отладочной сборки приложения с помощью инструментов Android SDK.
  • Сертификат для выпуска. Используйте этот сертификат, когда будете готовы разместить приложение в магазине. Он создается с помощью инструментов Android SDK при выполнении сборки в процессе подготовки к выпуску.

Дополнительную информацию о цифровых сертификатах вы найдете в руководстве по добавлению подписи в приложения.

О том, как получить цифровой отпечаток сертификата, можно прочитать в разделе об аутентификации клиентов. Если вы используете функцию подписания приложений в Google Play, вы можете найти цифровой отпечаток сертификата на странице подписания приложений в Play Console.

Чтобы задать ограничение для ключа API, выполните следующие действия:

Cloud Console

  1. Откройте страницу Google Maps Platform > Credentials (Платформа Google Карт > Учетные данные).

    Перейти на страницу Credentials (Учетные данные)

  2. Выберите нужный ключ API. Откроется страница со свойствами ключа API.
  3. В разделе Key restrictions (Ограничения для ключа) установите следующие ограничения:
    • Ограничения для приложений:
      1. Выберите Приложения для Android.
      2. Нажмите + Название пакета и цифровой отпечаток.
      3. Укажите название пакета и цифровой отпечаток сертификата SHA-1. Пример:
        com.example.android.mapexample
        BB:0D:AC:74:D3:21:E1:43:67:71:9B:62:91:AF:A1:66:6E:44:5D:75
    • Ограничения для API:
      1. Нажмите Restrict key (Применить ограничения для ключа).
      2. В раскрывающемся списке Выберите API нажмите Maps SDK для Android. Если Maps SDK для Android там нет, его необходимо включить.
  4. Нажмите Save (Сохранить).

Cloud SDK

Список существующих ключей.

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

Снятие ограничений с существующего ключа.

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

Настройка новых ограничений для существующего ключа.

gcloud alpha services api-keys update "projects/PROJECT/keys/KEY_ID" \
    --api_target="maps-android-backend.googleapis.com"
    --allowed-application="sha1_fingerprint=SHA1_FINGERPRINT,package_name=ANDROID_PACKAGE_NAME"

Прочитайте статьи о Google Cloud SDK, установке Cloud SDK и следующих командах:

Что дальше

Теперь, когда у вас есть ключ API, создайте и настройте проект Android Studio.