Sar*_*els 4 javascript ruby-on-rails oauth google-oauth doorkeeper
我正在尝试在Ruby on Rails API应用程序中使用Doorkeeper进行身份验证.从客户端AngularJS应用程序,我想获得一个访问令牌.目前,这涉及到/ oauth/authorize的GET请求,它给了我一个代码,然后我将该代码与client_id和/ oauth/token的秘密一起发布.我不想从客户端应用程序发送客户端ID和密码,因为它们以纯文本形式存储在JavaScript文件中.我想按照这个流程在那里response_type是token不是code,但我无法弄清楚如何做到这一点与守门人.他们的wiki示例似乎都涉及将客户端ID和秘密POST到/ oauth/token.
门卫是否是正确的宝石?如何从客户端应用程序执行Google OAuth2,其中没有秘密从客户端传递到服务器?
编辑:看起来像我想要的是Implicit Grant,门卫支持.现在我只需要在我的Rails应用程序中找到如何做到这一点......
无需额外的服务器端配置.
当我Doorkeeper::Application在我的Rails应用程序中创建一个新的时,门卫界面为我提供了一个授权链接,response_type=code用于该应用程序.
我改变了response_type=token,当我做一个GET请求时,它立即响应,access_token而不是code.授权URL看起来像http://my-rails-doorkeeper-app/oauth/authorize?client_id=1234&redirect_uri=http://my-angularjs-app&response_type=token.
更新:
仅当我们还允许对授权流进行隐式授权时,才能应用此选项.默认情况下,门卫将允许其四种流程(隐式授权,授权授权,密码和client_credentials).
initializer/doorkeeper.rb如果你不想让它发生,你可以配置它,因为有时它可能是危险的.
| 归档时间: |
|
| 查看次数: |
2767 次 |
| 最近记录: |