2012-01-02 63 views
2

我最近决定从使用Windows身份验证将我的内部Web应用程序更改为Forms身份验证。我没有很多地使用后者,一个网站解释说你必须启用Forms和Anonymous才能工作。这个想法是根据活动目录验证用户密码,然后相应地授予他们访问权限。我在本地工作得很好,在发布到IIS 7.5时仍然有效。这只是一个基本的Visual Studio项目,将重定向到我们的主页。通过https在IIS中匿名身份验证不会触发回发

当我试着用https安全地访问这个项目时,出现了问题,我包含了完整的域名,它会加载新的登录页面,但是当我点击登录时它什么都不会做。从那以后,我浏览了网页,发现了很多这方面的内容,并尝试了其中的很多内容,但都无济于事。

只是后来我创建了一个空白项目,在页面上用单个按钮和一行代码来查看是否发布了帖子。发布后,我只在IIS中启用匿名身份验证,并在点击按钮时使用http浏览到此基本测试应用程序,页面上的false更改为true - 表示回发。然而,使用https,它仍然是错误的。我认为这可能是活动目录登录不起作用的原因,因为它也启用了匿名。

虽然我在安全方面仍然很新,但是细节传过来,我必须使用安全连接才能登录,然后它可以重定向到我们在内部使用的通常应用程序。

我很感激你对此有任何想法。

谢谢!

回答

1

我们一直使用此配置(匿名IIS访问,表单身份验证和https)成功。

有三件事情,你应该做跟踪这个问题了下来:

1)确认有在页面没有JavaScript错误是打破按钮(即JavaScript文件不被传递到页)

2)从asp.net/iis检查窗口事件日志中的异常。

3)安装并运行fiddler,从Tools菜单中选择Fiddler Options...,点击HTTPS选项卡上,并确保所有的复选框被选中,然后运行你的网站,并期待在请求和响应,特别是当你按下按钮。

+0

感谢您对这些建议competent_tech我尝试了一堆东西,让它工作了一段时间,但随后又停了下来。我现在要坚持使用Windows Auth,但将来会再次深入研究,因为后者不适合所有情况。 – Lifesigns 2012-01-19 11:23:37