我在写一个WCF服务,我需要访问用于连接到服务的客户端证书的哈希码。从WCF服务访问客户端证书属性
我正在寻找类似于ASP.NET 2.0 2.0版Request.ClientCertificate的属性或方法,但无法找到允许轻松访问客户端证书的任何内容。
我们的服务设置为使用basicHttpBinding和“Transport”安全模式使用SSL运行。
IIS已设置为要求SSL和接受证书。
需要注意的一件事是我们用于保护端点的服务器证书来自与客户端证书不同的CA--客户端证书旨在仅通过自定义代码进行验证(因此需要获取散列连接证书的代码)。
我已经创建了IDispatchMessageInspector的自定义实现,以查看是否有任何对客户端证书的访问,但无济于事。
有没有人尝试过这个,并取得了成功?
谢谢,这个解决方案完美:) 我们确实采取了这种方法,然后也发现WCF正在填充我们需要的信息ServiceSecurityContext而无需使用自定义证书验证程序,只需在我们的服务实现中使用以下代码: ((X509CertificateClaimSet)ServiceSecurityContext.Current.A uthorizationContext.ClaimSets [0])。X509Certificate – lowds 2011-02-16 08:36:59