2010-10-23 177 views
1

我想获取当前登录的活动目录用户名/详细信息。如何获取当前登录的活动目录用户名C#

在这里,用户使用其用户名和密码登录到机器。我怎么能得到这个用户名和Application.AuthenticateRequest()事件的Global.asax文件中的其他细节。

我已经使用 System.Security.Principal.WindowsIdentity.GetCurrent().Name 但是,它在IIS 6.0上托管时返回服务器的用户凭据。如“域\用户名”。我目前已启用匿名访问和集成身份验证。并在使用表单身份验证的项目。

我应该使用System.Directory.dll

回答

2

如果你想在Windows凭据,那么你应该禁用匿名访问,并在你的应用程序中使用Windows安全性,而不是形式的认证。

您使用HttpContext.User.Identity.Name来获取应用程序内登录用户的名称。如果您使用窗体身份验证,那么您将获得登录窗体用户的名称,如果您使用集成安全性和Windows身份验证,那么您将获得用户的AD名称。

+0

还有一两件事,我使用个性化设置我的申请,我已经改变了它,你说,但它给错误“个性化未启用”,当我把它改为形成应用程序验证,它却又工程恢复IIS用户名称,前提是匿名已启用。如果我禁用它请求用户名和密码来访问我不需要的应用程序。请回复。 – 2010-10-25 07:38:33

+0

要清楚,你需要一个带有用户配置文件但基于AD凭据的用户数据库,对吧? – 2010-10-25 20:03:46

+0

感谢您的回复。我有DB用户配置文件,我想要AD凭据(用户名),他/她进入系统时输入。任何解决方案... – 2010-10-27 04:31:15

相关问题