我想使用X509證書向我的WCF服務驗證用戶身份。我將我的服務設置爲使用SSL並進行所有相關的WCF配置。當我嘗試使用我的服務,我得到以下錯誤:WCF身份驗證-X509證書
The remote certificate is invalid according to the validation procedure.
如果我把我的證書(自簽名),並把它添加到信任的人,那麼這個錯誤消失。我相信這意味着我需要向我的服務的所有(外部)消費者提供我的證書。有沒有辦法解決?
我想使用X509證書向我的WCF服務驗證用戶身份。我將我的服務設置爲使用SSL並進行所有相關的WCF配置。當我嘗試使用我的服務,我得到以下錯誤:WCF身份驗證-X509證書
The remote certificate is invalid according to the validation procedure.
如果我把我的證書(自簽名),並把它添加到信任的人,那麼這個錯誤消失。我相信這意味着我需要向我的服務的所有(外部)消費者提供我的證書。有沒有辦法解決?
由於我們爲開發目的使用自簽名證書,因此我必須重寫證書的驗證。我的代碼是:
if (validateServerCertificate)
{
ServicePointManager.ServerCertificateValidationCallback += new RemoteCertificateValidationCallback(ValidateRemoteCertificate);
}
private static bool ValidateRemoteCertificate(object sender,
X509Certificate certificate,
X509Chain chain,
SslPolicyErrors policyErrors)
{
return true;
}
所有證書都由證書頒發機構(CA)進行驗證。
就你而言,我懷疑你的CA不可信。啓動MMC併爲本地計算機添加證書管理器。受信任根CA下的Se(不記得確切的單詞)。
自簽證書意味着證書的CA與證書本身相同。
還了解如何使用證書:您是使用它們來識別您的客戶端,還是用於SSL加密傳輸級別的目的?
如果你想使用證書進行許多不同的客戶,我強烈建議你看一看公共PKI服務的公司,如威瑞
證書由CA頒發(基於CSR創建,證書籤名請求和簽名),未經過」驗證「。當然,OP使用不受信任的自簽名證書。 – 2011-06-15 18:42:04
自簽名證書也不能被信任(除非用戶明確相信他們或一些代碼這樣做)。您確實需要從Thawte,GlobalSign,Comodo(InstantSSL)等已建立的CA購買證書。我們使用GlobalSign和Comodo,每個都有自己的優勢。您需要的是爲您的服務器的域名發佈的常規「SSL證書」(因爲他們稱之爲該名稱不正確)。
我的安全配置如下: <安全模式= 「TransportWithMessageCredential」><傳輸clientCredentialType = 「證書」 proxyCredentialType = 「無」 的境界= 「」/><消息clientCredentialType =「證書「algorithmSuite =」Default「/> – user472292 2011-06-15 18:24:10