我有一个疑问,当试图点击需要身份验证的页面时,ASP.NET附加的returnUrl querystring参数。在查看Microsoft Nerddinner示例的登录操作(以及我在'Net上看到的其他所有“示例身份验证代码”)时,它只是在操作的签名中声明了返回参数,并直接在redirect()调用中使用它。但是,回到WebForms时代并使用会员控件,我们使用formauthentication.getReturnurl()调用。除了返回“默认URL”,如果在问题中未指定URL,它还进行了一些安全检查(Cross App Redirect和iSdangerCoreRl())。那些不再是关注的问题,还是所有我在'网络上看到的“登录”动作的所有样本“登录”只是忽略了这些问题?

有帮助吗?

解决方案

我不确定您正在查看的样本,但是完全可以使用MVC中的表格身份验证,并受益于在 FormsAuthenticationModule 处理(或使用 FormsAuthentication 直接类)。

IIRC,Visual Studio中的默认MVC应用程序包括围绕表单身份验证的适配器(AuthenticationService)很容易适应 ReturnUrl 请求参数。

我想所讨论的样本只是忽略了XSR攻击。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top