共用方式為


使用用戶端憑證進行驗證

適用於:所有 APIM 層

使用 authentication-certificate 原則來透過用戶端憑證向後端服務進行驗證。 首先將憑證安裝至 APIM 時,先透過其指紋或憑證識別碼 (資源名稱) 來識別它。

警告

設定此原則時,將認證暴露的風險降至最低。 Microsoft 建議您使用更安全的驗證方法 (如果您的後端支援的話),例如受控識別驗證認證管理員。 如果您在原則定義中設定敏感性資訊,建議您使用具名值,並將祕密儲存在 Azure Key Vault 中。

警告

如果憑證參考 Azure Key Vault 中儲存的憑證,請使用憑證識別碼來識別。 當金鑰保存庫憑證輪替時,其指紋在 API 管理中會變更,如果是由指紋識別新憑證,原則不會解析新憑證。

注意

請依照原則陳述式中提供的順序,來設定原則的元素和子元素。 深入了解如何設定或編輯 APIM 原則

原則陳述式

<authentication-certificate thumbprint="thumbprint" certificate-id="resource name" body="certificate byte array" password="optional password"/>

屬性

屬性 描述 是必要欄位 預設
thumbprint 用戶端憑證的指紋。 允許使用原則運算式。 thumbprintcertificate-id 可以存在。 N/A
certificate-id 憑證資源名稱。 允許使用原則運算式。 thumbprintcertificate-id 可以存在。 N/A
本文 用戶端憑證為位元組陣列。 未從內建憑證存放區擷取憑證時使用。 允許使用原則運算式。 No N/A
password 用戶端憑證的密碼。 允許使用原則運算式。 body 中指定的憑證受到密碼保護時使用。 N/A

使用方式

使用注意事項

  • 建議您設定金鑰保存庫憑證來管理用來保護對後端服務存取的憑證。
  • 如果您在此原則中設定憑證密碼,建議您使用具名值

範例

透過憑證識別碼識別的用戶端憑證

<authentication-certificate certificate-id="544fe9ddf3b8f30fb490d90f" />  

透過指紋識別的用戶端憑證

<authentication-certificate thumbprint="CA06F56B258B7A0D4F2B05470939478651151984" />

用戶端憑證是設定於原則中,而不是從內建憑證存放區擷取

<authentication-certificate body="@(context.Variables.GetValueOrDefault<byte[]>("byteCertificate"))" password="optional-certificate-password" />

如需使用原則的詳細資訊,請參閱: