gpt4 book ai didi

C# asp.net - 在部署服务器上获取 Windows 用户登录帐户

转载 作者:太空宇宙 更新时间:2023-11-03 15:43:53 25 4
gpt4 key购买 nike

我正在使用 C# asp.net 获取 Windows 登录帐户(域\用户名)以自动登录我的网站。在 visual studio 上本地运行语句“System.Security.Principal.WindowsIdentity.GetCurrent().Name.ToString()”时,我可以正确获取帐户。但是,部署网页部署服务器后,返回“NT AUTHORITY\IUSR”。

我在互联网上找到的大多数解决方案都是使用 Windows 身份验证而不是匿名身份验证。我试过这个解决方案,运行 web 时会提示用户登录窗口。它需要输入已部署服务器的用户名和密码。但是,我的 windows 用户登录帐户无法登录到部署服务器。因此我无法在我的计算机上运行网络。

我想知道如果我的window账号无法登录部署服务器,是否可以获取window用户登录账号?

最佳答案

请尝试启用两种身份验证方法。首先,您必须像您已经提到的那样启用 Windows 身份验证,以将您的凭据自动传递到服务器(当然只在 Intranet 中)。
此外,您必须激活 ASP.NET 模拟 以允许服务器使用传递的凭据。
帮助告诉您原因:

Use ASP.NET Impersonation authentication when you want to run your ASP.NET application under a security context different from the default.

在您的 web.config 中,您必须将以下节点添加到您的 system.web 节点以告诉您的应用程序将您的凭据传递给服务器:

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

关于C# asp.net - 在部署服务器上获取 Windows 用户登录帐户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29071199/

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