wcf - 证书只能被网络服务账户使用,不能被域账户使用

标签 wcf security ssl https certificate

问题:

我们的服务使用合作伙伴服务调用的一项认证。它在作为网络服务帐户运行的 IIS 站点中运行良好。但是当我们以管理员(域帐户)运行测试代码时,服务调用总是会出现 403 错误(子状态代码为 7:需要证书)。

我们已经验证:

  • 将调试器附加到我们发现站点在以域帐户运行时可以访问私钥的进程。
  • 证书位于域帐户的 CURRENT_USER/MY 证书库中。并且证书授权链在证书存储中很好。此证书的特殊之处在于其根 CA 是公司内部 CA。但是 CA 已经在信任根中。
  • 在IE中,如果我们直接访问一个https站点,这个证书是不在弹出列表中的。但它确实存在于 IE 选项-内容-证书-个人列表中。 (不确定这是否相关)

问题:

似乎证书的使用被某些安全设置(Windows 或某些公司域策略)阻止了,如何解决这个问题?欢迎任何想法。谢谢。

最佳答案

命令 certutil -store my 将尝试使用本地计算机\my 商店中的所有证书。它将列出有关已测试证书的信息。

可选地,命令 certutil -user -store my 将测试当前用户\my 存储中的证书。

尝试这两个命令,看看证书及其对应的私钥存储在什么存储中。 有关 certutil 的更多信息,请参阅文档 here .

关于wcf - 证书只能被网络服务账户使用,不能被域账户使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27751726/

相关文章:

asp.net - 如何在 ASP.NET 和 WCF 之间对用户进行身份验证?

wcf - WCFStorm 是否支持调用启用了 JSON 的 WCF 服务?

c# - WCF 数据服务 : 400 Bad Request when saving lots of changes

security - 盐、密码和安全

security - 有没有等同于 TLS 的协议(protocol)?

wcf - 有没有办法通过单个端点公开多个 WCF 服务?

ruby-on-rails - 更新: Free tools for checking security vulnerabilities for rails app

windows - 任务计划程序应用程序退出触发器

google-chrome - 拦截即时生成的代理证书会引发浏览器错误

python - SSH:我怎么知道并发限制?