【问题标题】:WCF - Certificate based authorization from a web appWCF - 来自 Web 应用程序的基于证书的授权
【发布时间】:2011-10-09 06:57:02
【问题描述】:

我有一个 WCF 服务,只有少数具有已知证书的机器和一个 Web 应用程序才能访问该服务。

对于网络应用,我需要指定用于授权的证书:

<behaviors>
  <endpointBehaviors>
    <behavior name="ScannerManagerBehavior">
      <clientCredentials>
        <clientCertificate findValue="MyCertificateName" x509FindType="FindBySubjectName" storeLocation="CurrentUser" storeName="My"/>
        <serviceCertificate>
          <authentication certificateValidationMode="PeerTrust"/>
        </serviceCertificate>
      </clientCredentials>
    </behavior>
  </endpointBehaviors>
</behaviors>

问题是网络应用程序没有在注册证书的用户帐户下运行。为了在开发模式下绕过它,我将应用程序池更改为在我的用户身份下运行,但这是一个临时的。解决方案。

我应该为“网络服务”用户帐户安装证书(如果可以的话),为证书指定不同的来源,还是有更好的方法来解决这个问题?

谢谢!

【问题讨论】:

    标签: c# asp.net wcf certificate


    【解决方案1】:

    在 LocalMachine 存储而不是当前用户存储中安装证书 - 然后您可以通过更改 clientCertificate 元素中的 storeLocation 从那里获取它

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-07
      • 2013-08-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-08-23
      • 2018-08-24
      • 1970-01-01
      相关资源
      最近更新 更多