首先——感谢您的浏览。
我的问题
在 .NET Web 应用程序中,对由各种用户、公司、用户代理等组成的 WAN 上的外部网络使用 Windows 身份验证是一个坏主意吗?
背景
我是外网快速(非常快)Web 应用程序的首席开发人员,该应用程序将允许客户的供应商、供应商、合作伙伴等登录并推送和拉取某些资产,例如图像文件、视频、Flash 文件、 ETC。
平台/技术
ASP.NET 4.0、C#、MVC3
问题(也许)
客户的 IT 部门已请求应用程序使用 Windows 身份验证来对用户进行身份验证。他们说,原因之一是用户推送/拉取的资产驻留在第三方服务器(Signiant)上,该服务器已经使用其活动目录中的凭据来对用户进行身份验证。
MY VIEW
Windows 身份验证将会引起一系列令人头痛的问题。从堆栈的角度来看,该应用程序将位于第三方服务器之上。因此,如果我们使用表单身份验证,我们只需使用每个用户的 Windows 凭据填充数据表,并将这些凭据与我们的请求一起传递到 Signiant 的服务器(无论如何您都必须这样做)。如果可能的话,我们甚至可以动态调用 LDAP 来获取信用信息,然后将其传递到 Signiant 的服务器。
在我看来,如果我们进行 Windows 身份验证,那么诸如“丢失密码”之类的简单功能将变得极其困难。但是,完全公开,我从未使用 Windows 身份验证构建过 Asp.Net 应用程序,所以我知道什么?
Thanks!
Matt
2011 年 8 月 12 日更新
我仍然没有答案你是否should这样做,但客户坚持必须这样做。该应用程序应该在一个月内完成,所以我会回来让这个主题的任何追随者知道我的发现。
ASP.NET 内置了对使用表单身份验证进行 AD 身份验证的支持,包括密码恢复。
See: http://msdn.microsoft.com/en-us/library/ff650308.aspx http://msdn.microsoft.com/en-us/library/ff650308.aspx
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)