【发布时间】:2017-11-04 04:24:36
【问题描述】:
我在我的 Windows 2012 服务器机器上运行了一个本地服务。它是一个带有一个节点的 Azure Service Fabric 集群,但这对于这个问题应该无关紧要。
该服务在“NETWORK SERVICE: 用户下运行,并且具有访问存储在本地计算机上的证书的代码。使用 X509Certificate2Collection.Find 方法查找证书的代码。
例外是:
抛出异常:mscorlib.dll 中的“System.AggregateException”
附加信息:无法成功获取访问令牌 使用指纹:80CEA40A62FFA0116FCB40B7B5985ADCD3E5AC39
当我在本地执行与管理员用户相同的参数的相同查找功能时,它可以工作。
我已尝试明确授予 NETWORK SERVICE 用户对证书的读取权限,但这并没有解决问题。
我也尝试过在 NETWORK SERVICE 用户上下文(不是部署的本地服务,而是本地可执行代码 sn-p)下本地执行代码,获得证书,这很有效。
【问题讨论】:
标签: c# windows web-services x509certificate azure-service-fabric