首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在app.config中配置digicert CNG证书

如何在app.config中配置digicert CNG证书
EN

Stack Overflow用户
提问于 2022-06-21 16:59:03
回答 1查看 52关注 0票数 1

我们正在尝试配置由DigiCert CA颁发的客户端提供的证书,以便在WCF服务中进行身份验证。

不幸的是,我们需要运行的实用程序无法解析证书并给出一个Unexpected error: Invalid provider type specified.错误。

似乎错误意味着证书的格式是CNG而不是CAPI,显然.NET 4和更高版本应该能够接受这些格式。但我们仍然不确定如何将其输入app.config以使.NET识别证书。下面是带有端点证书身份验证的app.config文件内容。

有人能给我一些建议吗?提前谢谢你。

代码语言:javascript
复制
    <behaviors>
      <endpointBehaviors>
        <behavior name="ClientCertificateBehavior">
          <clientCredentials>
            <clientCertificate findValue="2449997a30a8c9df29bd43c1eaa91cb47d89b0cb" storeLocation="LocalMachine" storeName="My" x509FindType="FindByThumbprint"/>            
            <serviceCertificate>
              <authentication certificateValidationMode="None" revocationMode="NoCheck"/>
            </serviceCertificate>
          </clientCredentials>
        </behavior>
      </endpointBehaviors>
    </behaviors>

    <client>
      <endpoint name="Download" address="http://mywebserviceurl.com/MobileService/WebService2.svc" behaviorConfiguration="ClientCertificateBehavior" binding="wsHttpBinding" bindingConfiguration="TheWsHttpBinding" contract="MyApp.FileClient.IDownloadService">
        <identity>
          <certificate encodedValue="*****"/>
        </identity>
      </endpoint>
    </client>

    <bindings>
      <wsHttpBinding>
        <binding name="TheWsHttpBinding">
          <security>
            <message clientCredentialType="Certificate"/>
          </security>
        </binding>
      </wsHttpBinding>
    </bindings>

  </system.serviceModel>
EN

回答 1

Stack Overflow用户

发布于 2022-06-24 20:28:15

您可能正在使用.NET Framework4.6.1或更低版本:

.NET Framework4.6.1和更早版本不支持这些证书,因为它们使用遗留CryptoAPI来处理CNG/KSP证书。在.NET Framework4.6.1和更早版本中使用这些证书将导致异常。来源

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72704566

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档