相关疑难解决方法(0)

混合MVC/Web Api控制器站点中的AspNet 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.我觉得这应该是一个已经解决的问题,但也许我采取了错误的方法.

asp.net-mvc asp.net-web-api asp.net-identity

11
推荐指数
1
解决办法
1515
查看次数

Cookie和承载令牌在同一个应用程序中

所以,这是我的情况.我有一个Web应用程序,用户可以在其中注册和管理/查看每次有医生预约时自动生成的数据.同时,此用户数据通过API向任何已批准的客户端(第三方应用程序)公开.此外,这些客户端可以将数据提供给API.因此,我的网站是其他客户端可以使用/提供的用户数据的中央存储库.没关系.

现在,我希望用户使用电子邮件和密码(而不是使用FB或Twitter等)在我的Web应用程序中创建帐户,以便他们可以对客户端进行身份验证和授权以访问其数据.典型的Facebook-Twitter/Apps关系.

当我尝试为我的网站实施正确的身份验证/授权方法时,我的困境就出现了.一方面,Web应用程序将提供对其用户的访问权限,以便他们可以查看他们的数据.想想你使用你的电子邮件和密码登录Facebook.这是在MVC5上完成的,几乎有一些迷你水疗中心实现...也许,所以我想在这里使用常规cookie,因为它都是"内部".同时,我必须实现OAuth/Bearer Token身份验证,以允许客户端访问我们的用户数据.

我在这里发现了这个问题.一起使用承载令牌和cookie身份验证

这是实施我的安全基础设施的正确方法吗?

谢谢!

authentication cookies access-token oauth-2.0 asp.net-mvc-5

9
推荐指数
1
解决办法
2015
查看次数