我不太熟悉IIS或VisualC#,
但最近,我想将一个服务控制器封装在一个.dll文件中,这个web服务可以在云应用程序中使用。
我编写了一个简短的脚本,在C#中将信息发布到Http C#中,并将依赖程序集的函数封装在其中。
在本地计算机中,我可以访问证书存储区。即使我在本地主机上运行app.exe或IIS :5000,它作为web应用程序也可以看到证书密钥存储库。
当我从IIS 10或服务器公共ip运行它时,它不识别证书。
映像位于服务器内的同一本地主机中。在IIS上运行,左边是webbapp.exe,右边是IIS10。
是否知道IIS与本地IIS相比有什么问题?可以做任何事情来修复它,或者我应该找到其他的解决方法。
发布于 2018-08-17 21:06:40
正如@LexLi建议的那样,IIS仅限于访问KeyStore。配置正在运行,以便dll试图访问
X509Store(StoreName.My, StoreLocation.CurrentUser);
问题是,国际空间站无法为安全目的与该用户接触。经过几次调整后,我更改为:
X509Store(StoreName.Root, StoreLocation.LocalMachine);
在IIS 10“应用程序池”中,在我正在运行的应用程序池的“预置设置”下。我做了以下工作
Identity: LocalSystem
Load User Profile: True
现在一切似乎都正常了。
https://stackoverflow.com/questions/51886697
复制相似问题