共用方式為


管理 Azure Maps 中的認證

當你建立 Azure Maps 帳號時,你的客戶端 ID 和共享金鑰會自動建立。 這些數值在使用 Microsoft Entra ID共享金鑰驗證時是必須的。

先決條件

登入 Azure 入口網站。 如尚未擁有 Azure 訂用帳戶,請在開始之前先建立免費帳戶

查看認證細節

這很重要

我們建議您在使用共享金鑰認證呼叫 Azure Maps 時,使用主金鑰作為訂閱金鑰。 在類似於動態密鑰更換的情境下,最好使用次鍵。

要查看您的 Azure Maps 認證詳情:

  1. 登入 Azure 入口網站

  2. Azure 服務區塊選擇所有資源,然後選擇你的 Azure Maps 帳號。

    選擇 Azure Maps 帳號。

  3. 在左側窗格的設定區選擇 「認證 」。

    截圖顯示您在 Azure 入口網站的 Azure Maps 訂閱金鑰。

選擇認證類別

根據您的應用程式需求,有特定的應用程式安全途徑。 Microsoft Entra ID 定義了特定的認證類別,以支援各種認證流程。 要選擇最適合你申請的類別,請參見 申請類別

備註

了解分類與情境將有助於你保護 Azure Maps 應用程式,無論你使用 Microsoft Entra ID 或共用金鑰認證。

如何新增與移除受管理身份

要啟用 Azure Maps REST API 的 共享存取簽章(SAS)令牌認證 ,您需要為您的 Azure Maps 帳號新增一個由使用者指派的管理身份。

建立受控識別

你可以在建立地圖帳號前後,建立使用者指定的管理身份。 你可以透過入口網站、Azure 管理 SDK 或 Azure 資源管理員(ARM)範本新增管理身份。 若要透過 ARM 範本新增使用者指派的管理身份,請指定該受管理身份的資源識別碼。

"identity": {
    "type": "UserAssigned",
    "userAssignedIdentities": {
        "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/example/providers/Microsoft.ManagedIdentity/userAssignedIdentities/exampleidentity": {}
    }
}

移除受控身分識別

您可以透過入口網站或 Azure Resource Manager 範本,依照建立時的方式停用該功能,來移除系統指派的身分識別。 使用者指派的身分識別可以個別移除。 如要移除所有身分識別,請將身分識別類型設為"None"

以這種方式移除系統指派的身分識別,也會從 Microsoft Entra ID 將其刪除。 系統指派的身份也會在 Azure Maps 帳號被刪除時自動從 Microsoft Entra ID 中移除。

若要使用 Azure 資源管理員範本移除所有身份,請更新此區塊:

"identity": {
    "type": "None"
}

選擇認證與授權情境

此表概述了 Azure Maps 中常見的認證與授權情境。 每個情境描述一種可用來存取 Azure Maps REST API 的應用程式類型。 請使用連結了解每種情境的詳細設定資訊。

這很重要

對於生產應用程式,我們建議實作 Microsoft Entra ID 搭配 Azure 角色基礎存取控制(Azure RBAC)。

Scenario Authentication Authorization 開發工作量 作戰努力
受信任的精靈應用程式或非互動式客戶端應用程式 共用機碼 N/A 中等 High
受信任守護程序或非互動式客戶端應用程式 Microsoft Entra ID High Low 中等
具互動式單登入功能的網頁單頁應用程式 Microsoft Entra ID High 中等 中等
具非互動式登入功能的網頁單頁應用程式 Microsoft Entra ID High 中等 中等
網頁應用程式、守護程序應用程式或非互動式登入應用程式 SAS 代幣 High 中等 Low
具互動式單一登入功能的網頁應用程式 Microsoft Entra ID High High 中等
物聯網裝置或輸入受限應用程式 Microsoft Entra ID High 中等 中等

檢視內建的 Azure Maps 角色定義

要查看內建的 Azure Maps 角色定義:

  1. 從左側窗格中,選取 [存取控制 (IAM)]

  2. 選取 [角色] 索引標籤。

  3. 在搜尋方塊中輸入 Azure 地圖服務

結果顯示 Azure Maps 內建的角色定義。

查看內建的 Azure Maps 角色定義。

檢視角色指派

要查看已授權使用 Azure Maps 的使用者與應用程式,請前往存取控制(IAM)。 在那裡,選擇 角色分配,然後依 Azure 地圖篩選。

  1. 從左側窗格中,選取 [存取控制 (IAM)]

  2. 選取 [角色指派] 索引標籤。

  3. 在搜尋方塊中輸入 Azure 地圖服務

結果顯示目前 Azure Maps 的角色分配。

檢視已授與存取權的內建檢視使用者與應用程式。

請求 Azure 地圖的代幣

向 Microsoft Entra 令牌端點請求一個令牌。 在您的 Microsoft Entra ID 申請中,請使用以下細節:

Azure 環境 Microsoft Entra 權杖端點 Azure 資源識別碼
Azure 公用雲端 https://login.microsoftonline.com https://atlas.microsoft.com/
Azure Government 雲服務 https://login.microsoftonline.us https://atlas.microsoft.com/

欲了解更多關於向 Microsoft Entra ID 請求使用者與服務主體存取權杖的資訊,請參閱 Microsoft Entra ID 的認證情境。 欲查看特定情境,請參閱 情境表

管理與輪換共用金鑰

你的 Azure Maps 訂閱金鑰類似於你 Azure Maps 帳號的根密碼。 務必小心保護你的訂閱金鑰。 使用 Azure Key Vault 來安全地管理並輪換你的金鑰。 避免將存取金鑰分發給其他使用者、硬編碼,或以明文形式儲存在他人可存取的任何地方。 如果你懷疑你的金鑰可能被盜用,請更換它們。

備註

如果可能,我們建議使用 Microsoft Entra ID 而非共享金鑰來授權請求。 Microsoft Entra ID 的安全性比 Shared Key 更好,也更容易使用。

手動輪換訂閱金鑰

為了保護你的 Azure Maps 帳號安全,我們建議定期更換你的訂閱金鑰。 如果可能,建議使用 Azure Key Vault 來管理你的存取金鑰。 如果你沒有使用 Key Vault,你需要手動旋轉你的鑰匙。

會分配兩個訂閱金鑰,方便你輪換金鑰。 擁有兩個金鑰可以確保你的應用程式在整個過程中都能存取 Azure Maps。

要在 Azure 入口網站中輪換你的 Azure Maps 訂閱金鑰:

  1. 更新你的應用程式代碼,參考 Azure Maps 帳號的次要金鑰並部署。
  2. Azure 入口網站,導覽到你的 Azure Maps 帳號。
  3. 選取 [設定] 下方的 [驗證]
  4. 要重新產生 Azure 地圖帳號的主鍵,請點選主鍵旁的 「重新生成 」按鈕。
  5. 更新你的應用程式代碼,參考新的主鍵並部署。
  6. 用同樣方式重新生成次要鍵。

警告

我們建議在所有應用程式中使用相同的金鑰。 如果你在某些地方用主鍵,在其他地方用次鍵,你就無法旋轉鍵而不讓某些應用程式失去存取權限。

後續步驟

尋找 Azure 地圖服務帳戶的 API 使用計量:

探索範例,了解如何使用 Azure 地圖服務與 Microsoft Entra ID 整合: