2009-01-12 48 views
40

这是IIS 7的Windows Server 2008不是一个AD域的一部分上。我想密码保护一个网站,人们必须输入用户名/密码(例如一个Windows帐户)来查看网站。然后,网站将使用自己的身份验证方法(形式)来处理用户帐户并决定是否要出示会员的特定页面等IIS7:设置集成Windows身份验证像IIS6

随着IIS6,我们只是禁用匿名访问并启用集成Windows身份验证。 IIS7的行为有所不同,当我输入windows用户名/密码来查看站点时,站点正常,但重定向到登录页面。一旦我登录,网站的行为自然。我需要能够在不登录网站凭证的情况下浏览网站。

我不认为启用匿名访问将使意义,在这里,因为我想访问的网站进行密码保护(弹出用户名/密码对话框当您第一次浏览到URL)。

任何帮助表示赞赏!

回答

9

两级认证不能和IIS7集成模式的支持。身份验证现在已经模块化,所以不是IIS执行身份验证,然后由asp.net执行身份验证,而是全部同时发生。

您可以:

  1. 更改应用程序域将在IIS6经典模式...
  2. 关注this example的(old link)如何在IIS7集成模式假两阶段认证。
  3. 使用Helicon Apemod_auth to provide basic authentication
+0

顺便说一句,我无法得到经典模式来按预定方式操作... – 2009-01-13 14:29:59

+0

嗨吉姆,链接不工作了,你能找到内容已经去了哪里?也许将其粘贴到你的答案?谢谢。 – Myster 2011-09-14 23:18:35

+0

“链接”可能在这里:http://mvolo.com/iis-70-twolevel-authentication-with-forms-authentication-and-windows-authentication/ – LosManos 2013-05-22 13:27:46

0

那么你希望他们得到IE密码的挑战中,还是应该被定向到登录页面,并没有输入自己的信息?如果是第二种选择,那么您应该至少启用匿名访问您的登录页面,因为该网站不知道他们是谁。

如果您想要第一个选项,那么它们要转发到的登录页面将需要读取当前登录的用户并基于该用户采取行动,因为他们必须正确进行身份验证才能实现这一目标。

+0

我希望他们让弹出对话框被迫访问该网站。但是他们不会在那个时候登录到网站。然后,他们应该能够浏览网站上的页面,并且可以选择使用网页登录进行登录。 – 2009-01-12 19:55:21

52

要启用IIS7的Windows身份验证的Windows 7机器:

  • 进入控制面板

  • 单击程序>>程序和功能

  • 从左侧的sid中选择“打开或关闭Windows功能”即

  • 展开Internet Information Services >>万维网服务>>安全

  • 选择Windows身份验证,然后单击确定。

  • 重置IIS,现在检查IIS的Windows身份验证。

享受

0

还有另一种在Stack的其他地方用类似于PIC和最好的解决方案我遇到是使用Helicon Ape

免费版本一旦你得到了安装,按照下列步骤进行题为页“HTTP身份验证和授权”