khe*_*eit 11 asp.net-mvc asp.net-web-api asp.net-identity
我有一个网站利用mvc和web api控制器和aspnet身份.我使用VS2013 SPA模板将mvc和web api控制器作为起点.
这是我的场景:
用户使用mvc控制器登录并获取auth cookie.
使用经过身份验证的mvc控制器提供下一页.该页面使用knockout并对一个web api控制器进行ajax调用,该控制器通过单击按钮进行身份验证(保存).web api控制器需要带有Bearer --token--的Authentication头.
我的问题是其他人如何处理这种"两种"认证方法.我在经过身份验证的mvc控制器上创建了一个端点,并根据当前主体返回一个承载令牌.我可以使用该令牌成功发布到Web api端点.
我正在创建的javascript逻辑有点令人困惑.它检查访问令牌是否在会话存储中,如果是,则进行ajax调用.如果没有,请调用get token端点,然后调用web api端点(使用一堆回调来处理Ajax承诺,失败,等等).
其他人如何处理您需要auth cookie和bearer token的场景,以便对每个"mvc"页面进行身份验证,并对页面调用的web api端点进行身份验证.如果持票人令牌在cookie到期之前到期,您该怎么办?
如果我不清楚或者您是否需要更多信息,请告诉我.
编辑
我遇到了这个问题,一起使用bearer令牌和cookie身份验证 它仍然没有回答我的问题,因为我已经设置好了所以mvc接受cookie auth而web api只接受bearer token.我觉得这应该是一个已经解决的问题,但也许我采取了错误的方法.
我已经通过使用 cookie 和刷新令牌设法解决了这个问题。
这样做是这样的
我没有在VS2013 SPA模板中尝试过。但正如我所见,您可以使用第二步来验证令牌,如果令牌已过期,请调用 mvc 控制器端点来获取新的访问令牌。
| 归档时间: |
|
| 查看次数: |
1515 次 |
| 最近记录: |