我正在尝试了解VS2013 MVC5 SPA模板WebAPI的安全功能。
在Startup.Auth.cs中有这个 -
TokenEndpointPath = new PathString("/Token")
和 -
AuthorizeEndpointPath = new PathString("/Account/Authorize")
据我了解,AuthorizeEndPointPath适用于您作为第三方OAuth授权服务器的时间。
但是如何在模板中使用它,流程似乎是
Javascript检查本地存储中的承载令牌,它不存在,因此会重定向到此授权端点。
window.location =" / Account / Authorize?client_id = web& response_type = token& state =" + encodeURIComponent(window.location.hash);
使用OAuth安全性登录应用,返回令牌,该令牌将在后续API请求中传递。
似乎永远不会使用/ Token端点。这个模板的先前版本做了一个ajax帖子到/ Token登录。我有类似的情况,网站通过表单身份验证/ cookie保护,但WebApi由承载令牌保护。
在此SPA模板中是否正确使用了Authorize端点 - 这是正确的模式吗?这似乎是对承载令牌安全性进行身份验证的适当方式"内部"对于该应用程序将是一个"客户端凭据授予"虽然不确定如何生成"秘密"。