我一直无法让我的ASP.NET应用程序自动将用户登录到我正在构建的Intranet站点。 无论我使用谷歌搜索还是实验,IE7都会显示一个登录框。

我已经在Web.config中设置了Windows身份验证模式,禁用了匿名访问并在IIS中配置了正确的默认域,但它仍然要求用户登录,更令人讨厌的是,用户也需要提供域( DOMAIN \\ auser ),这会导致非技术访问者出现问题。 感谢Zeus的密码记忆功能。

我不是网络管理员因此可能会错误地设置Active Directory的某些内容,或者可能只是让我遗漏了一些非常简单的内容。 请注意,我不想冒充用户,我只需要知道IPrincipal.Name属性与我的用户数据库中的有效记录的属性匹配,因此将用户验证到我的应用程序。

为此,将AD,ASP.NET和IIS的所有配置要求的清单以这种方式一起工作作为调试参考并希望减少一些用户摩擦是非常有用的。

===============>>#1 票数:19 已采纳

听起来你已经覆盖了所有服务器端基础 - 也许这是客户端问题? 我假设您的用户在IE7中启用了集成身份验证? (工具 - > Internet选项 - >高级 - >安全性)。 默认情况下启用此选项。

此外,您的网站是否被IE7正确识别为位于本地Intranet区域? IE7默认允许仅在该区域中自动登录,因此如果IE认为您的站点在Internet上,则会提示用户。 我相信使用带有点的主机名会导致IE将站点放入Internet区域。

===============>>#2 票数:1

  1. 打开Active Directory Users and Computers MMC管理单元

  2. TreeView扩展computers部分(左侧)

  3. 检查计算机是否已在您的域中注册。

此外,您必须使用该计算机上的域帐户登录,否则将显示该身份验证框。

===============>>#3 票数:0

在IIS中,启用匿名访问并允许web.config处理用户身份验证。

  ask by tags2k translate from so

未解决问题?本站智能推荐:

关注微信公众号