開發者面臨的一項常見挑戰是管理用於保護服務間通訊的秘密、憑證、憑證和金鑰。 受控識別可讓開發人員不需要管理這些認證。
雖然開發人員可以安全地將秘密儲存在 Azure 金鑰保存庫中,但服務需要一種方式來存取 Azure 金鑰保存庫。 受管識別在 Microsoft Entra ID 中提供一個自動管理的識別,讓應用程式在連接到支援 Microsoft Entra 驗證的資源時使用。 應用程式可以使用受控識別來取得 Microsoft Entra 權杖,而不需要管理任何認證。
以下是使用受控識別的一些優點:
- 您不需要管理認證。 你無法存取憑證。
- 您可以使用受控識別,驗證支援 Microsoft Entra 驗證的任何資源 (包括您自己的應用程式)。
- 你可以免費使用受管理身份。
Azure 中可用的受控識別類型
管理身份有兩種類型:
系統指派:某些 Azure 資源類型,例如適用於 PostgreSQL 的 Azure 資料庫,可讓您直接在資源上啟用受控識別。 其稱為系統指派的受控識別。 當您啟用系統指派的受控識別時:
Microsoft Entra ID 會為該身分識別建立特殊類型的服務主體。 服務主體會綁定於該 Azure 資源的生命週期。 當你刪除 Azure 資源時,Azure 會自動幫你刪除服務主體。
根據設計,只有該 Azure 資源可以使用此身分識別,自 Microsoft Entra ID 要求權杖。
你可以授權與受管理身份相關的服務主體存取一個或多個服務。
指派給與受控識別相關聯之服務主體的名稱,一律與為其建立該服務主體的 Azure 資源名稱相同。
使用者指派:部分 Azure 資源類型也支援你建立的獨立資源管理身份指派。 這些身分識別的生命週期與指派給它們的資源生命週期無關。 你可以把它們分配到多個資源。 當您啟用使用者指派的受控識別時:
Microsoft Entra ID 為該身分建立了一種特殊類型的服務主體。 你要將服務主體與使用它的資源分開管理。
多個資源可以利用使用者指派的身分。
您授權受控識別存取一或多個服務。
在適用於 PostgreSQL 的 Azure 資料庫中使用受控識別
適用於 PostgreSQL 的 Azure 資料庫 使用 系統指派的受控識別 來執行下列作業:
-
azure_storage 擴充功能,當您將其設定為使用
managed-identity驗證類型來存取儲存體帳戶時。 如需詳細資訊,請參閱如何 設定 azure_storage 擴充功能以使用 Microsoft Entra ID 授權。 - 來自 適用於 PostgreSQL 的 Azure 資料庫 的 Microsoft Fabric 鏡像資料庫 (預覽) 會使用系統指派受控識別的認證,為彈性伺服器傳送至 Microsoft Fabric 中 Azure Data Lake 服務、用來鏡像您所指定資料庫的要求以進行簽署。
使用你為 適用於 PostgreSQL 的 Azure 資料庫 彈性伺服器設定的使用者指派管理身份,用於以下用途: