WebAPI模拟访问UNC路径

时间:2017-04-12 09:52:44

标签: vb.net asp.net-web-api impersonation unc

我想使用登录用户的凭据从支持NTLM的WebAPI访问UNC路径。为此,我使用以下代码:

Using DirectCast(RequestContext.Principal.Identity, System.Security.Principal.WindowsIdentity).Impersonate()
    Dim FileList As String() = IO.Directory.GetFiles("\\file-server\path", "*.xlsm")
End Using

但是,这不起作用。

在我的服务器上执行该操作时,仍然会拒绝访问。如果我在使用块中调用System.Security.Principal.WindowsIdentity.GetCurrent().Name,我会得到正确的用户名。此外,如果我运行应用程序池并将应用程序池设置为我自己的用户标识,它就可以运行。但出于安全考虑,我们希望坚持使用标准的.net池标识。

知道如何让它发挥作用吗?

0 个答案:

没有答案