asp.net - ASP.NET 中的模拟和委托(delegate)

标签 asp.net impersonation

我在使用 ASP.NET 访问远程服务器上的文本文件时遇到问题。 ASP.NET 1.1 应用程序在 Server 2003 上运行,使用模拟和请求者的 Windows 凭据。客户端、网络服务器和远程服务器都在同一个域中,用户有权访问文本文件。用户可以通过 UNC 共享从他们的机器上打开文本文件。当用户运行直接在服务器上登录的站点时,它工作正常。但是,当用户在他们的机器上尝试时,它不起作用。应如何设置模拟以使其正常工作?

编辑:
该应用程序的其他功能工作正常,它只是访问不起作用的远程文件。

最佳答案

听起来您遇到了多跳问题。使用集成身份验证时,您可以从浏览器向 IIS 进行身份验证。但是,您不能对域中的任何其他计算机进行身份验证。原因是使用标准凭据,他们无法验证您的身份。

我熟悉两种主要的解决方法:

  • 实现 Kerberos,这些证书允许您进行更高级的身份验证,并允许多个网络跃点。
  • 使用 LogonUser win32 api 重新模拟您的用户(需要密码)。
  • 关于asp.net - ASP.NET 中的模拟和委托(delegate),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/517846/

    相关文章:

    c++ - 是否可以模拟进程的访问 token ?

    c# - 模拟和委派

    asp.net - 为什么使用 iis 7.5/windows 7/在 asp.net 应用程序上 Windows 身份验证/模拟失败

    asp.net - SQL Server报表服务和其他报表工具有什么区别

    c# - 为什么 Request.QueryString.Get() 和 NameValueCollection.Get() 返回解码值?

    C# :How can i set Memory stream as the asp. 网络图像控件的源属性?

    winapi - 登录用户、LOGON32_LOGON_INTERACTIVE 和 LOGON32_LOGON_NETWORK

    ASP.net 模拟适用于已发布的 Intranet 站点,但不适用于 localhost

    asp.net - 我使用哪个Active Directory字段来唯一标识用户?

    javascript - Ajax 分页在使用分页替换页面内容时复制 _layout 页面