向 Azure Key Vault 進行驗證

已完成

使用 Key Vault 進行驗證時,會與 Microsoft Entra ID 搭配運作,其會負責驗證任何指定安全性主體的身分識別。

有兩種方式可取得應用程式服務主體:

  • 為應用程式啟用系統指派的受控識別。 使用受控識別,Azure 會在內部管理應用程式的服務主體,並使用其他 Azure 服務自動驗證應用程式。 部署至各種服務的應用程式均可使用受控識別。

  • 如果無法使用受控識別,請改為向 Microsoft Entra 租用戶註冊應用程式。 註冊也會建立可在所有租用戶中識別應用程式的第二個應用程式物件。

注意

建議使用系統指派的受控識別。

以下是有關不使用受控識別即可向 Key Vault 驗證的資訊。

在應用程式程式碼中向 Key Vault 進行驗證

Key Vault SDK 使用 Azure 身分識別用戶端程式庫,可讓您以相同程式碼跨環境向 Key Vault 進行無縫驗證。 下表提供有關 Azure 身分識別用戶端程式庫的資訊:

.NET Python Java JavaScript
Azure 身分識別 SDK .NET Azure 身分識別 SDK Python Azure 身分識別 SDK JAVA Azure 身分識別 SDK JavaScript

使用 REST 向 Key Vault 驗證

存取權杖必須使用 HTTP Authorization 標頭傳送給服務:

PUT /keys/MYKEY?api-version=<api_version>  HTTP/1.1  
Authorization: Bearer <access_token>

未提供存取權杖時,或服務不接受權杖時,會將 HTTP 401 錯誤傳回給用戶端,並且其中會包含 WWW-Authenticate 標頭,例如:

401 Not Authorized  
WWW-Authenticate: Bearer authorization="…", resource="…"

WWW-Authenticate 標頭上的參數如下:

  • authorization:可能用來取得要求存取權杖之 OAuth2 授權服務的位址。

  • resource:要在授權要求中使用的資源名稱 (https://vault.azure.net)。

其他資源