【发布时间】:2014-03-10 19:05:45
【问题描述】:
我已经认真阅读了这篇关于使用 OWIN/Katana 的 OAuth 授权服务器的文章:http://www.asp.net/aspnet/overview/owin-and-katana/owin-oauth-20-authorization-server
这篇文章确实告诉我们如何设置一个基本的身份验证服务器,但似乎省略了很多信息和代码。我对隐式授权流程特别感兴趣。他们确实提供了登录页面和“权限”页面,但我很困惑:
- 决定经过身份验证的用户是否授予客户端的代码在哪里?这不能在“幕后”完成,因为我们从未告诉任何中间件“组件”路径“/OAuth/Authorize”。
- 实际将用户重定向回客户网站的代码以及自动生成的 access_token 和其他值在哪里?
- 我怀疑在将其传递给/OAuth/Authorize 中的
authentication.SignIn(claimsIdentity)之前,有一种适当的方法可以“构造”ClaimsIdentity 对象(尤其是范围声明),这样它就会自动将用户重定向回具有访问和刷新令牌的客户端。 - /OAuth/Authorize 和 /Accounts/Login 的 MVC 操作似乎总是在成功验证和授予之后返回 View(),因此永远不会将用户转发回客户端的网站。这似乎我必须手动确定何时到
return Redirect(Request.QueryString["RedirectUrl"]);,并找出要传递的加密值。我似乎不应该生成确切的响应。
我忽略了什么?
【问题讨论】:
-
为什么会跑题?我正在提供一个包含代码以及如何正确执行某些操作的参考,这需要我自己编程!
-
只是路过,但直接来自密切的原因:“要求我们推荐或查找工具、库或最喜欢的场外资源的问题对于 Stack Overflow 来说是无关紧要的,因为它们往往会吸引固执己见的人答案和垃圾邮件。”您要求在您有四个问题之上提供书籍和网站推荐。它可能“过于宽泛”或“征求建议”。不适合 SO。
-
好的。所以我会取消它,希望它会被认为是合法的。
标签: authentication oauth owin