使用 API 金鑰

透過集合功能整理內容 你可以依據偏好儲存及分類內容。
選取平台: Android iOS JavaScript

本主題將說明如何為 Maps SDK for Android 建立 API 金鑰、怎麼將金鑰加進應用程式,以及限制金鑰來保護應用程式安全的做法。您必須在採用該 SDK 的所有應用程式中加進 API 金鑰。

事前準備

您的專案必須連結帳單帳戶並啟用 Maps SDK for Android,才能開始使用 Maps SDK for Android。請參閱這篇文章,進一步瞭解如何在 Cloud 控制台中進行設定。

建立 API 金鑰

API 金鑰是一組專屬 ID,用於驗證與您專案有關的使用權限及帳單處理請求。您的專案至少要有一個相關聯的 API 金鑰。

建立 API 金鑰的方法如下:

控制台

  1. 前往「Google 地圖平台」>「憑證」頁面。

    前往「憑證」頁面

  2. 在「憑證」頁面上,依序點選「建立憑證」>「API 金鑰」
    「建立的 API 金鑰」對話方塊會顯示您新建立的 API 金鑰。
  3. 按一下「關閉」
    新建立的 API 金鑰會出現在「憑證」頁面的「API 金鑰」下方。
    (別忘了先為 API 金鑰設定限制,然後才在實際工作環境中使用。)

Cloud SDK

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

進一步瞭解 Google Cloud SDKCloud SDK 安裝和下列指令:

限制 API 金鑰

Google 強烈建議您設定限制,只允許將 API 金鑰用於應用程式需要的 API。限制 API 金鑰可避免不必要的請求使用 API 金鑰,有助提升應用程式的安全性。詳情請參閱「API 安全性最佳做法」。

當您限制 API 金鑰時,必須提供用於簽署應用程式的簽署金鑰 SHA-1 憑證指紋。憑證類型分為兩種:

  • 偵錯憑證:請僅將這種憑證類型用於您要測試的應用程式和其他不在實際生產環境使用的程式碼。請勿嘗試發布以偵錯憑證簽署的應用程式。執行偵錯版本時,Android SDK 工具會自動產生這個憑證。
  • 發布憑證:準備將應用程式發布到應用程式商店時,請使用這個憑證。執行發布子版本時,Android SDK 工具會產生這個憑證。

如要進一步瞭解數位憑證,請參閱「簽署應用程式」指南。

如要瞭解如何取得憑證指紋,請參閱「驗證用戶端」一文。如果您改為使用 Play 應用程式簽署功能,則必須前往 Play 管理中心的應用程式簽署頁面取得憑證指紋。

限制 API 金鑰的方法如下:

控制台

  1. 前往「Google 地圖平台」>「憑證」頁面。

    前往「憑證」頁面

  2. 選取要設定限制的 API 金鑰,畫面隨即顯示 API 金鑰屬性頁面。
  3. 在「金鑰限制」下方,設定下列限制:
    • 應用程式限制:
      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. 按一下「限制金鑰」
      2. 從「選取 API」下拉式選單中點選「Maps SDK for Android」。如果畫面上未列出 Maps SDK for Android,表示您需要啟用該 SDK。
  4. 如要完成變更,請按一下 [儲存]

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 SDKCloud SDK 安裝和下列指令:

後續主題

取得 API 金鑰後,接下來請按照「設定 Android Studio 專案」一文中的說明來建立及設定專案。