gpt4 book ai didi

c# - 尝试连接到远程 IIS 服务器时出现 "Access Denied"- C#

转载 作者:行者123 更新时间:2023-11-30 21:25:28 26 4
gpt4 key购买 nike

当我尝试从在 IIS 5.1 下运行的 C# 应用程序连接到远程 IIS 6 服务器时,我收到“Access Deined”COMException。

有什么想法吗?我遇到了与原始问题相同的所有问题。

更新 - 2009 年 4 月 1 日

我找到了这个解决方案 ( http://www.codeproject.com/KB/cs/Start_Stop_IIS_Website.aspx),它包含一个连接到 IIS 服务器以启动和停止网站的窗口应用程序。我能够在我的工作站上运行它并连接到 IIS 服务器。

呃......为什么我可以运行这个独立的应用程序而不是我的 ASP.NET 应用程序?

原创

当我尝试使用 DirectoryEntry.Exist 方法从远程计算机连接到 IIS 以检查 IIS 服务器是否有效时,我收到“拒绝访问”COMException。

string path = string.Format("IIS://{0}/W3SVC", server);

if(DirectoryEntry.Exist(path))
{
//do something is valid....
}

我是事件目录组的成员,该组已添加到我尝试连接的 IIS 服务器的管理员组。

有没有人遇到过这个问题并知道如何解决?

更新:

@Kev - 这是一个 ASP.NET 应用程序。此外,我可以通过 IIS6 管理器在没有用户名和密码的情况下连接到远程服务器。

@Chris - 我正在尝试连接到远程服务器以显示虚拟目录的数量并确定每个目录的 .NET 框架版本。参见 this所以问题。

@dautzenb - 我的 ASP.NET 应用程序在 IIS 5.1 下运行,试图连接到 IIS 6 服务器。我可以在远程服务器上本地 ASPNET 帐户的安全日志中看到错误审计。当我尝试调试应用程序时,我正在我的域帐户下运行,但仍然收到访问被拒绝的消息。

更新 2:

@Kev - 我能够使用以下重载创建一个 DirectoryEntry 对象:

public DirectoryEntry
(
string path,
string username,
string password
)

但是,在我调试应用程序时,所有属性都包含“引发了‘System.Runtime.InteropServices.COMException’类型的异常”。

此外,AuthenticationType 属性设置为 Secure。

更新 3:

每次尝试建立连接时,远程 IIS 服务器的安全事件日志中都会出现以下两个失败审核条目:

第一个事件:

事件类别:账号登录
事件 ID:680
登录尝试:MICROSOFT_AUTHENTICATION_PACKAGE_V1_0
登录账号:ASPNET
来源工作站:
错误代码:0xC0000234

第二个事件:

事件类别:登录/注销
事件 ID:529
登录失败:
原因:未知用户名或错误密码
用户名:ASPNET
域:(我的域)
登录类型:3
登录过程:NtLmSsp
身份验证包:NTLM
工作站名称:(MyWorkstationId)
来电用户名:-
调用方域:-
来电登录 ID:-
调用方进程 ID:-
中转服务:-
源网地址:10.12.13.35
源端口:1708

模拟设置为真,用户名和密码为空。它正在使用远程 IIS 服务器上的 ASPNET 帐户。

最佳答案

如果是身份问题,您可以尝试将 IIS 5.1 应用程序设置为使用 Integrated Windows Authentication , 然后将以下内容添加到您的 IIS5.1 网站的 web.config 中的 system.web 下以启用 impersonation .

<identity impersonate="true"/>
<authentication mode="Windows" />

关于c# - 尝试连接到远程 IIS 服务器时出现 "Access Denied"- C#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/637090/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com