我需要创建一个具有非标准授权逻辑的网站(或者更确切地说不是网站。它应该是现有ASP.NET MVC3应用程序中的单独区域)。只有授权用户才能访问大多数页面。授权是在链接中传递的令牌上执行的。用户到达此区域后,应检查令牌,如果有效站点将创建30分钟的会话密钥(我们已经拥有自己的会话管理机制,应该使用它)。
工作流程示例: 第三方网站为用户生成链接,例如https://example.com/securedPage/?accountId=123456&token=XXXXX 我们的站点检查此令牌(它取决于URL中的页面,在本例中为https://example.com/securedPage/) 如果令牌有效,example.com将获取用户的会话密钥并将其存储在cookie中。 然后用户继续浏览整个网站,只检查会话。
我是MVC框架的新手,所以我想问几个关于架构的问题。 什么是这个逻辑的适当位置? ActionInvoker,Global.asax等? 目前我正在尝试创建自己的ActionInvoker并保持这种逻辑,但我担心这可能是一种错误的方式。
答案 0 :(得分:0)
如果我理解正确,你需要扩展控制器的Action来注入/检查你的令牌。