Windows服务无法访问证书存储区

时间:2015-09-15 06:20:46

标签: windows wcf service windows-services truststore

我正在尝试使用winldap对Opends服务器进行身份验证,我将自签名证书安装到系统受信任的根证书,个人存储等(在适用的地方)。 ldp.exe这是一个微软的工具适用于ssl和tls连接。我的电脑上有2个用户帐户(管理员和管理员)一切正常,除了我的Windows服务以外的两个用户帐户。

我的Windows服务(图书馆管理程序)无法验证服务器证书。但我的示例代码工作(这是与我的Windows服务类似的代码的一小部分),

我在本网站上看到了类似的情况及其建议(https://msdn.microsoft.com/en-us/library/aa702621.aspx)。

我的服务在服务选项卡中显示组名称为N / A,在任务管理器的进程选项卡中显示用户名为SYSTEM,我不知道该怎么做,请帮助我解决此问题。

提前致谢。

1 个答案:

答案 0 :(得分:2)

实际上,Windows有3种类型的证书存储本地用户,系统,服务。 通常,Windows服务作为一个名为System的特殊帐户运行(我们也可以在特定的用户帐户上运行)

自签名证书仅添加到本地用户帐户(对于管理员和管理员,如上所述)。所以Windows服务无法验证证书。

解决方案是将证书添加到系统存储区。

程序运行正常