使用MVC Web应用程序中的URL标记对用户进行身份验证

时间:2013-06-17 21:04:47

标签: c# .net asp.net-mvc-4

我想向现有的MVC 4 Web应用程序添加用户身份验证流程,用户将在其中单击包含URL令牌的电子邮件中的链接。这应该将他带到应用程序并自动登录。 可以将此令牌添加到任何现有请求以允许透明登录。

在框架中添加令牌检查的正确位置是什么?

请。 我知道此功能的安全风险。所以请不要分析这方面的安全问题。

喜欢了解此功能的可能实现

1 个答案:

答案 0 :(得分:1)

最简单的方法可能是实现自定义ActionFilterAttribute并将其添加到全局过滤器列表中。

类似的东西:

[Attribute]
public class TokenLoginAttribute : AuthorizeAttribute
{
    public overrides void OnAuthorization(AuthorizationContext filterContext)
    {
        // Perform your authorization / login based on token here
    }
}

App_Start\FilterConfig.cs

public static void RegisterGlobalFilters(GlobalFilterCollection filters)
{
    filters.Add(new HandleErrorAttribute());
    filters.Add(new TokenLoginAttribute());
}

希望有所帮助!