Custom 驗證模式提供最高彈性,允許開發者實作 X509CertificateValidator 完全自定邏輯。
<serviceCertificate>
<authentication certificateValidationMode="Custom"
customCertificateValidatorType="WcfSecurityExampleServiceLibrary.MyX509CertificateValidator, WcfSecurityExampleServiceLibrary" />
</serviceCertificate>
public class MyX509CertificateValidator : X509CertificateValidator {
public override void Validate(X509Certificate2 certificate) {
if (certificate.SerialNumber.ToLower() != "9414bfe12286dc874b631a702c7d2ad9")
throw new Exception("Certificate Error!");
}
}
繼承抽象類別 X509CertificateValidator 並覆寫 Validate,此範例僅檢查序號是否符合預期。初始序號不符時拋出異常 (圖 11-19)。

此模式適合需對憑證擴充屬性 (主體、簽發者、用途、撤銷狀態等) 進行複雜業務驗證的場景。
作者:玄魂
出處:https://www.cnblogs.com/xuanhun/