2011-03-18 37 views
1

我在服務器上託管WCF服務,要求客戶端使用x509證書進行身份驗證。由於包含的數據是業務邏輯的一部分,因此我需要在服務內部讀取此證書。如何在WCF服務中讀取Clientcertificate?

我用於WCF服務的綁定是webHttpBinding,安全性設置爲「Transport」和clientCredentialType =「certificate」。

在ASP.net中,我可以使用HttpContext.Current,但是在WCF中不可用。我能做些什麼仍然可以獲得用戶的證書?

親切的問候, 阿洛伊斯

回答

0

我在WCF服務使用,與ASP.net兼容性禁用:

var x509ClaimSet = OperationContext.Current.ServiceSecurityContext.AuthorizationContext.ClaimSets.FirstOrDefault() as X509CertificateClaimSet;