3

我们开发了一个 ASP.Net 应用程序。我的 apppool 在网络服务识别下运行。通过代码我们需要安装证书。由于我的应用程序池使用网络服务特权运行,它会引发加密异常“访问被拒绝”。

我尝试了以下选项:

  1. 为以下路径授予网络服务的完全权限:“C:\Documents and Settings\All Users\Application Data\Microsoft\Crypto\RSA\MachineKeys”
  2. 安装以下工具以授予网络服务权限。WinHttpCertCfg.exe 无法授予证书根权限。此工具仅有助于授予访问特定证书的权限。

请帮我解决这个问题。

4

2 回答 2

1

根据在 msdn 上找到的文章

http://msdn.microsoft.com/en-us/library/windows/desktop/aa384088(v=vs.85).aspx

它说:

注意 用户必须具有足够的权限才能使用此工具,这要求用户是管理员并且是安装客户端证书(如果已安装)的同一用户。

所以检查网络服务是否是本地管理员组的成员。

于 2012-07-05T09:38:57.597 回答
0

整个故事 ASP.net 对根证书存储的权限

从下面的链接下载 WCF 示例项目并编译 FindPrivatekey 项目。(提示:添加参考 system.security 否则你会发现 undefine X509Certificate2UI 函数错误) http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=21459

于 2015-04-01T04:05:31.683 回答