共用方式為


針對 Azure 應用程式組態執行個體管理存取金鑰驗證

向 Azure 應用程式組態資源提出的每個要求都必須經過驗證。 預設可透過 Microsoft Entra 認證或使用存取金鑰來驗證要求。 在這兩種驗證配置中,Microsoft Entra ID 提供的安全性和易用性優於存取金鑰,且 Microsoft 建議使用此方法。 若要求用戶端必須使用 Microsoft Entra ID 來驗證要求,您可以停止對 Azure 應用程式組態資源使用存取金鑰。 如果您想要使用存取金鑰來驗證要求,建議定期輪替存取金鑰以增強安全性。 若要深入了解,請參閱保護應用程式秘密的建議

啟用存取金鑰驗證

預設會啟用存取金鑰,您可以在程式碼中使用存取金鑰來驗證要求。

若要在 Azure 入口網站中針對 Azure 應用程式組態資源允許存取金鑰驗證,請遵循下列步驟:

  1. 在 Azure 入口網站中,瀏覽至您的 Azure 應用程式組態資源。

  2. 在 [設定] 下找出 [存取設定] 設定。

    顯示如何存取 Azure 應用程式組態資源存取金鑰刀鋒視窗的螢幕擷取畫面。

  3. 將 [啟用存取金鑰] 切換設定為 [已啟用]

    顯示如何針對 Azure 應用程式組態啟用存取金鑰驗證的螢幕擷取畫面。

確認已啟用存取金鑰驗證

若要確認存取金鑰驗證是否已啟用,請檢查您是否能夠取得唯讀和讀寫存取金鑰的清單。 僅在啟用存取金鑰驗證時,才會有此清單。

若要在 Azure 入口網站中檢查是否已針對 Azure 應用程式組態資源啟用存取金鑰驗證,請遵循下列步驟:

  1. 在 Azure 入口網站中,瀏覽至您的 Azure 應用程式組態資源。

  2. 在 [設定] 下找出 [存取設定] 設定。

    顯示如何存取 Azure 應用程式組態資源存取金鑰刀鋒視窗的螢幕擷取畫面。

  3. 檢查是否顯示存取金鑰,以及是否已啟用 [啟用存取金鑰] 的切換狀態。

    顯示 Azure 應用程式組態資源的存取金鑰螢幕擷取畫面。

停用存取金鑰驗證

停用存取金鑰驗證會刪除所有存取金鑰。 一旦停用存取金鑰驗證後,任何使用存取金鑰進行驗證的執行中應用程式就會開始失敗。 只有使用 Microsoft Entra ID 來驗證的要求會成功。 如需使用 Microsoft Entra ID 的詳細資訊,請參閱使用 Microsoft Entra ID 授權存取 Azure 應用程式組態。 再次啟用存取金鑰驗證會產生一組新的存取金鑰,任何嘗試使用舊存取金鑰的應用程式仍會失敗。

警告

如果有任何用戶端目前使用存取金鑰來存取 Azure 應用程式組態資源中的資料,Microsoft 建議您在停用存取金鑰驗證之前,將這些用戶端移轉至 Microsoft Entra ID

若要在 Azure 入口網站中針對 Azure 應用程式組態資源禁用存取金鑰驗證,請遵循下列步驟:

  1. 在 Azure 入口網站中,瀏覽至您的 Azure 應用程式組態資源。

  2. 在 [設定] 下找出 [存取設定] 設定。

    顯示如何存取 Azure 應用程式組態資源存取金鑰刀鋒視窗的螢幕擷取畫面。

  3. 將 [啟用存取金鑰] 切換至 [已停用]

    顯示如何針對 Azure 應用程式組態停用存取金鑰驗證的螢幕擷取畫面

確認已停用存取金鑰驗證

若要確認已不允許存取金鑰驗證,可以提出要求來列出 Azure 應用程式組態資源的存取金鑰。 如果停用存取金鑰驗證,則不會有任何存取金鑰,清單作業會傳回空白清單。

若要在 Azure 入口網站中確認已針對 Azure 應用程式組態資源停用存取金鑰驗證,請遵循下列步驟:

  1. 在 Azure 入口網站中,瀏覽至您的 Azure 應用程式組態資源。

  2. 在 [設定] 下找出 [存取設定] 設定。

    顯示如何存取 Azure 應用程式組態資源存取金鑰刀鋒視窗的螢幕擷取畫面。

  3. 檢查沒有顯示任何存取金鑰,以及 [啟用存取金鑰] 的切換狀態為關閉。

    顯示已針對 Azure 應用程式組態資源停用存取金鑰的螢幕擷取畫面

允許或禁止存取金鑰驗證所需的權限

若要修改 Azure 應用程式組態資源的存取金鑰驗證狀態,使用者必須有權限建立和管理 Azure 應用程式組態資源。 提供這些權限的 Azure 角色型存取控制 (Azure RBAC) 角色包括 Microsoft.AppConfiguration/configurationStores/writeMicrosoft.AppConfiguration/configurationStores/* 動作。 具有此動作的內建角色包括:

這些角色無法透過 Microsoft Entra ID 存取 Azure 應用程式組態資源中的資料。 但包括 Microsoft.AppConfiguration/configurationStores/listKeys/action 動作權限,可授與存取資源的存取金鑰。 此權限可讓使用者使用存取金鑰來存取資源中的所有資料。

角色指派必須以 Azure 應用程式組態資源的層級或更高為範圍,才可讓使用者允許或禁止對資源進行存取金鑰驗證。 如需角色範圍的詳細資訊,請參閱了解 Azure RBAC 的範圍

請小心將這些角色僅限指派給需要建立 Azure 應用程式組態資源或更新其屬性的使用者。 使用最低權限原則,以確保使用者具有完成其工作所需的最低權限。 如需使用 Azure RBAC 管理存取權的詳細資訊,請參閱 Azure RBAC 的最佳做法

注意

傳統訂用帳戶管理員角色「服務管理員」和「共同管理員」含有 Azure Resource Manager 擁有者角色的相等權限。 擁有者角色包括所有動作,因此,具有上述其中一個系統管理角色的使用者也可以建立和管理 Azure 應用程式組態資源。 如需詳細資訊,請參閱 Azure 角色、Microsoft Entra 角色和傳統訂用帳戶管理員角色

注意

停用存取金鑰驗證且應用程式組態存放區的 ARM 驗證模式為本機時,也會停用在 ARM 範本中讀取/寫入金鑰值。 這是因為存取 ARM 範本中使用的 Microsoft.AppConfiguration/configurationStores/keyValues 資源需要使用本機 ARM 驗證模式的存取金鑰驗證。 建議使用傳遞 ARM 驗證模式。 如需詳細資訊,請參閱部署概觀

存取金鑰輪替

Microsoft 建議定期輪替存取金鑰,以降低來自外洩秘密的攻擊向量風險。 每個 Azure 應用程式組態資源都包含兩個唯讀存取金鑰,以及兩個指定為主要和次要金鑰的讀寫存取金鑰,以利順暢的秘密輪替。 此設定可讓您在應用程式中替代存取金鑰,而不會造成任何停機。

您可以使用下列程序輪替金鑰:

  1. 如果您在生產環境中同時使用這兩個金鑰,請變更程式碼,以確保只有一個存取金鑰在使用中。 在此範例中,假設您決定繼續使用存放區的主要金鑰。 您的程式碼中必須只有一個金鑰,因為當您重新產生次要金鑰時,舊版的金鑰將會立即停止運作,而導致使用舊金鑰的用戶端收到 401 拒絕存取錯誤。

  2. 一旦主要金鑰成為使用中的唯一金鑰後,您就可以重新產生次要金鑰。

    移至 Azure 入口網站的資源頁面,開啟 [設定]>[存取設定] 設定功能表,然後選取 [次要金鑰] 下的 [重新產生]

    顯示重新產生次要金鑰的螢幕擷取畫面。

  3. 接下來,更新您的程式碼以使用新產生的次要金鑰。 建議您檢閱應用程式記錄,確認應用程式的所有執行個體都已從使用主要金鑰轉換到次要金鑰,然後再繼續進行下一個步驟。

  4. 最後,您可以重新產生主要金鑰來使其失效。 下一次,您可以使用相同的程序,在次要金鑰和主要金鑰之間替代存取金鑰。

下一步