- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
所以在两台机器之间,没有信任——它们在不同的域中。
我已使用登录类型 LOGON32_LOGON_NEW_CREDENTIALS 使用 LogonUser API 成功连接到远程计算机。我能够使用 UNC 共享检索目录的内容,并创建一个文件流来“下载”该文件。到现在为止还挺好。
唯一的问题是,似乎除非有一个已经打开的 session ,否则 LogonUser 会失败。让我澄清一下。
我发现今天早上 ASP.NET MVC 页面不起作用,特别是使用 LogonUser 从这台远程机器检索文件列表的页面。我查看日志并在堆栈跟踪中看到 Directory.GetFiles 调用上方的 System.IO.__Error.WinIOError。然后我远程进入 Web 服务器并尝试使用与网站相同的登录名/密码在资源管理器中打开远程文件夹。它通过了,我可以看到文件。我打开命令提示符,输入 net use,我看到有一个到远程机器的开放连接。然后我回到页面,突然页面又开始工作了。
因此,在这一点上,我不确定 LogonUser 是否按预期工作。如果调用需要先通过其他方式打开网络连接,那么这肯定不能令人满意。
有谁知道可能会发生什么或建议解决方法?
最佳答案
我不确定我是否理解您为什么使用 LogonUser
.如果您想在 上做一些工作,此功能可以帮助您本地 机器使用另一个用户凭据,但它有助于不与另一台计算机建立远程连接。
如果您想从远程计算机获取一些独立于计算机之间现有信任的信息,您应该使用 WNet 或 Net(网络管理)功能来建立到远程计算机的新连接。所以你应该使用 WNetAddConnection2
(见 http://msdn.microsoft.com/en-us/library/aa385413%28VS.85%29.aspx)或 NetUseAdd
( http://msdn.microsoft.com/en-us/library/aa370645%28VS.85%29.aspx ) 函数。此功能将使 远程登录在目标计算机上并建立一个新 session (正是 net use \\computer\share /u:domain\user password
所做的)。您不能将新连接映射到本地驱动器。为此,您应该填写 lpLocalName
与 NULL
在结构中 NETRESOURCE
.作为 lpUsername
和 lpPassword
您应该给出任何理解目标计算机的值。您也可以使用 ipc$
作为目标共享名称,那么您只需建立与计算机的 session ,仅此而已。之后,您可以使用任何其他功能来访问远程共享、目录或文件。要关闭 session ,您应该使用 WNetCancelConnection2
或 NetUseDel
.
关于winapi - LogonUser 使用 LOGON32_LOGON_NEW_CREDENTIALS 对远程不受信任的域机器起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2916359/
我需要使用 C# 模拟用户。我使用 LogonUser Win32 API。当模拟来自与当前登录用户相同的域的用户时,这工作正常。但是,当我尝试模拟来自其他域的用户时,得到的响应是“false”。 什
我正在打电话LogonUser尝试验证一组凭据: LogonUser("forest", "avatopia.com" "stapler", LOGON32_LOGON_NETWOR
我们正在尝试“锁定”一台计算机,以便我们拥有一个只有很少权限的 Windows XP 通用登录帐户。然后我们的软件通过一个启动器启动,该启动器以更高权限的用户身份运行它,允许它访问文件系统。 然后,运
我只是想知道如何在我的 C++ 程序中获取导致 LoginUser 函数失败的错误并将其作为字符串返回? JNIEXPORT jstring JNICALL Java_com_entrust_admi
LogonUser 函数 http://msdn.microsoft.com/en-us/library/aa378184(VS.85).aspx返回一个句柄,你可以用它来模拟用户,当你使用完它时,你
我很难找到有关此方法的大量信息,所以我想我应该在这里问问,看看你们这些优秀的人是否可以提供帮助。 我们基本上拥有的是...... [DllImport("advapi32.dll", SetLastE
bool bRet=LogonUser(strUserName, L"", strPassword, LOGON32_LOGON_TYPE_NEW_CREDENTIALS, LOGON32_PROVI
我在使用 C++ 中的 LogonUser() API 函数时遇到一些问题。我正在测试的计算机不在域中。我正在测试的帐户存在于计算机上,但当我提供无效域时,它会验证登录。 这对我来说似乎不对。 HAN
我们正在开发具有内部用户帐户系统的应用程序,但希望能够使用来自 Active Directory 和/或 Windows 帐户的凭据。为此,我们将用户 SID 存储在应用程序用户表的一个字段中。我们的
我已经阅读了 Stack Overflow 上关于 CreateProcessAsUser 的所有帖子,但很少有已解决的问题,所以我不会在这个问题上屏住呼吸。但似乎我肯定遗漏了一些东西,所以这可能很容
我一直在尝试使用 LogonUser(...) 获取用户帐户的访问 token ,如 this MSDN sample . // Call LogonUser to obtain a handle t
我正在开发一个 C++ 应用程序,这个应用程序作为 Windows 服务运行。我需要模拟当前用户来访问网络位置,为此我使用 Windows API LogonUser 和 ImpersonateLog
ASP.NET: Impersonate against a domain on VMWare 这个问题是我问的,但是答案没有提供_token是如何派生的细节。它似乎只使用 WindowsIdenti
所以在两台机器之间,没有信任——它们在不同的域中。 我已使用登录类型 LOGON32_LOGON_NEW_CREDENTIALS 使用 LogonUser API 成功连接到远程计算机。我能够使用 U
我使用模拟机制来管理远程机器上的服务我可以在 RDP session 中使用我的用户名和密码连接到该机器并手动启动/停止服务。我还设法通过在模拟语句中使用 IntPtr.Zero token 的代码启
是否有一些标志系列允许 LogonUser 在计算机未连接到网络时返回可用于模拟本地用户的 token (但所有帐户都已在本地存在)。 我有执行应用程序的域帐户 MYDOMAIN\FooUser 我正
我正在尝试使用 this code从我的本地计算机 (Windows 8.1) 登录到受限网络共享(在头节点上使用 Windows Server 2012),但我似乎无法让它工作。 两台机器都在同一个
谁能帮我解决这个问题?我试图使用所需的凭据登录到 portal.microsoftonline.com,但它给我带来了错误。是我的网址有误还是什么?因为我试图模仿并赋予用户角色。谢谢,顺便说一句,我是
你可以用 token 做什么 LogonUser返回?它的用途是什么? BOOL LogonUser( __in LPTSTR lpszUsername, __in_opt LPT
大家好,我正在尝试编译这个 C++ 程序: #include #include #include #include #include #include "Validate.h" JNI
我是一名优秀的程序员,十分优秀!