【发布时间】:2010-09-24 05:31:37
【问题描述】:
请注意:在下面我描述的每个步骤中,我都以相同的域用户帐户登录。
我有一个控制远程机器上的服务的网络应用程序(通过ServiceController)。当我远程连接到网站并尝试控制服务时,我收到 InvalidOperationException: Access is denied.
我知道它可以工作,因为当我从网络服务器连接到网站时(远程桌面进入,以我的域用户身份登录,然后打开网页),它按预期工作。
我已将 IIS 和 ASP.NET 配置为需要 Windows 身份验证和模拟。当此操作失败时,我会记录当前线程的主体,并且无论我是远程连接还是从服务器本身连接,我都会看到该线程以我的身份运行。
我曾尝试强制 IIS 同时使用 Kerberos 身份验证、NTLM 身份验证以及两者;我的委托人将其 AuthenticationType 报告为“协商”还是“NTLM”都没有关系。当我远程连接(从我的本地计算机)时,它们都不起作用
另一个奇怪的事情是,如果我从本地计算机调试/连接到远程服务器,它每次都能正常工作!但是我没有调试,每次都失败!
这到底是怎么回事?
【问题讨论】:
标签: asp.net authentication iis-6 invalidoperationexception servicecontroller