AuthenticationContext.AcquireTokenAsync without creds:仅适用于Console App

时间:2017-10-30 22:15:57

标签: jwt azure-active-directory

我有一个测试控制台应用程序,可以从本地计算机证书存储区成功检索证书,并使用此证书从AAD获取令牌。

但是,当我在Windows服务中运行时,虽然从商店检索到证书,但AcquireTokenAsync()不会运行并中断执行。

我确实注意到私钥错误: PrivateKey ='_ certCred.Certificate.PrivateKey'引发了类型'System.Security.Cryptography.CryptographicException'的异常

任何建议都会有所帮助

1 个答案:

答案 0 :(得分:0)

如果我们有一个源代码和有关您正在使用的帐户的信息会很好,这样我们就可以看到证书的存储位置,但是根据您的描述:

运行服务帐户的用户可能无法访问您尝试访问的证书。

一种可能性是将服务配置为以系统帐户运行,然后选择“允许服务与桌面交互”#39;。