0

请原谅我对这篇文章的天真,因为我习惯于在 LAMP 环境而不是 Microsoft .NET 环境中进行开发,所以我在这里有点不适应。

我正在 Windows 网络上开发单页 Intranet。用户通过 Active Directory windows 2008 服务器进行身份验证。我希望我的 Intranet 页面能够无缝地收集经过身份验证的用户的网络用户名,而无需再次输入凭据。我已经能够获得用户名,但只有在浏览器强制第二次登录之后。

我正在运行 IIS 7 并对其进行了配置,以便:

Anonymous User is disabled
Integrated Windows Authentication is enabled

我的 web.config 文件包含以下文本:

<identity impersonate="false"/>
<authentication mode="Windows"/>
<authorization>
  <deny users="?"/>
</authorization>

我的 C# 代码如下:

public partial class AuthUser : System.Web.UI.Page {

  protected void Page_Init( object sender, EventArgs e ) {

    Response.Write(User.Identity.Name);

  } 
} 

所以我的问题是:

如何实施无缝身份验证,无需第二次身份验证即可收集登录用户的网络用户名?

4

1 回答 1

0

只有在 IE 中才能使用 Active Directory 自动登录,将站点添加到受信任的站点(您已这样做),并更改 IE >> Internet 选项 >>(选择受信任的站点)>> 自定义级别中的设置:

User Authentication >> Logon >> Automatic logon with current user name and password.
于 2012-06-13T08:56:04.610 回答