如何為 Azure 應用程式組態使用受控識別
本文說明如何建立 Azure 應用程式組態 的受控識別。 Microsoft Entra ID 的受控識別可讓 Azure 應用程式組態輕鬆存取其他受 Microsoft Entra 保護的資源。 身分識別是由 Azure 平台管理。 不需要您佈建或輪替任何祕密。 如需有關 Microsoft Entra ID 中受控識別的詳細資訊,請參閱適用於 Azure 資源的受控識別。
您的應用程式可以授與兩種類型的身分識別:
- 系統指派的身分識別會繫結至您的組態存放區。 如果您的組態存放區已刪除,則會將其刪除。 組態存放區只能有一個系統指派的身分識別。
- 使用者指派的身分識別是一項獨立 Azure 資源,可指派給您的組態存放區。 組態存放區可以有多個使用者指派的身分識別。
新增系統指派的身分識別
若要建立採用系統指派身分識別的應用程式組態存放區,您必須在存放區上設定額外的屬性。
使用 Azure CLI
若要使用 Azure CLI 設定受控識別,請針對現有的組態存放區使用 [az appconfig identity assign] 命令。 有三個選項可供您執行本節中的範例︰
- 從 Azure 入口網站使用 Azure Cloud Shell。
- 請透過下方每個程式碼區塊右上角的 [立即試用] 按鈕,使用內嵌的 Azure Cloud Shell。
- 如果您偏好使用本機 CLI 主控台,請安裝最新版的 Azure CLI (2.1 或更新版本)。
下列步驟會逐步引導您建立 應用程式組態 存放區,並使用 CLI 將身分識別指派給它:
如果您在本機控制台中使用 Azure CLI,請先使用 [az login] 登入 Azure。 使用與您 Azure 訂用帳戶相關聯的帳戶:
az login
使用 CLI 建立應用程式組態存放區。 如需如何使用 CLI 搭配 Azure 應用程式組態的更多範例,請參閱應用程式組態 CLI 範例:
az group create --name myResourceGroup --location eastus az appconfig create --name myTestAppConfigStore --location eastus --resource-group myResourceGroup --sku Free
執行 [az appconfig identity assign] 命令,為此組態存放區建立系統指派的身分識別:
az appconfig identity assign --name myTestAppConfigStore --resource-group myResourceGroup
新增使用者指派的身分識別
利用使用者指派的身分識別建立應用程式組態存放區,會需要您建立身分識別,然後將其資源識別碼新增到您的存放區中。
注意
您最多可以將 10 個使用者指派的受控識別新增至應用程式組態存放區。
使用 Azure CLI
若要使用 Azure CLI 設定受控識別,請針對現有的組態存放區使用 [az appconfig identity assign] 命令。 有三個選項可供您執行本節中的範例︰
- 從 Azure 入口網站使用 Azure Cloud Shell。
- 請透過下方每個程式碼區塊右上角的 [立即試用] 按鈕,使用內嵌的 Azure Cloud Shell。
- 如果您偏好使用本機 CLI 主控台,請安裝最新版的 Azure CLI (2.0.31 或更新版本)。
下列步驟會逐步引導您建立使用者指派的身分識別和 應用程式組態 存放區,然後使用 CLI 將身分識別指派給存放區:
如果您在本機控制台中使用 Azure CLI,請先使用 [az login] 登入 Azure。 使用與您 Azure 訂用帳戶相關聯的帳戶:
az login
使用 CLI 建立應用程式組態存放區。 如需如何使用 CLI 搭配 Azure 應用程式組態的更多範例,請參閱應用程式組態 CLI 範例:
az group create --name myResourceGroup --location eastus az appconfig create --name myTestAppConfigStore --location eastus --resource-group myResourceGroup --sku Free
使用 CLI 建立名為
myUserAssignedIdentity
的使用者指派身分識別。az identity create --resource-group myResourceGroup --name myUserAssignedIdentity
在此命令的輸出中,記下
id
屬性的值。執行 [az appconfig identity assign] 命令,將新的使用者指派身分識別指派給此組態存放區。 使用您在上一個步驟中記錄的
id
屬性值。az appconfig identity assign --name myTestAppConfigStore --resource-group myResourceGroup --identities /subscriptions/[subscription id]/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myUserAssignedIdentity
移除身分識別
使用 Azure CLI 中的 az appconfig identity remove 命令,即可停用功能來移除系統指派身分識別。 使用者指派的身分識別可以個別移除。 以這種方式移除系統指派的身分識別,也會從 Microsoft Entra ID 將其刪除。 您刪除應用程式資源時,系統指派的身分識別會自動從 Microsoft Entra ID 移除。