使用用戶端憑證進行驗證
適用於:所有 API 管理 層
使用 authentication-certificate
原則來透過用戶端憑證向後端服務進行驗證。 首先將憑證安裝至 APIM 時,先透過其指紋或憑證識別碼 (資源名稱) 來識別它。
警告
如果憑證參考 Azure Key Vault 中儲存的憑證,請使用憑證識別碼來識別。 當金鑰保存庫憑證輪替時,其指紋在 API 管理中會變更,如果是由指紋識別新憑證,原則不會解析新憑證。
注意
請依照原則陳述式中提供的順序,來設定原則的元素和子元素。 深入了解如何設定或編輯 APIM 原則。
原則陳述式
<authentication-certificate thumbprint="thumbprint" certificate-id="resource name" body="certificate byte array" password="optional password"/>
屬性
屬性 | 描述 | 是必要欄位 | 預設 |
---|---|---|---|
thumbprint | 用戶端憑證的指紋。 允許使用原則運算式。 | thumbprint 或 certificate-id 可以存在。 |
N/A |
certificate-id | 憑證資源名稱。 允許使用原則運算式。 | thumbprint 或 certificate-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" />
相關原則
相關內容
如需使用原則的詳細資訊,請參閱:
- 教學課程:轉換及保護 API
- 原則參考,取得原則陳述式及其設定的完整清單
- 原則運算式
- 設定或編輯原則
- 重複使用原則設定
- 原則程式碼片段存放庫 (英文)
- 使用 Microsoft Copilot for Azure 撰寫原則