Rails 3.构建oauth2提供者

Jon*_*ark 41 ruby-on-rails oauth-2.0 ruby-on-rails-3

我正在使用Ruby on Rails 3开发一个API,我想用Oauth2保护它.换句话说,我需要创建一个Oauth提供程序.是否有Rails 3的工作宝石或者可能是关于这个问题的教程?

UPDATE

我知道Rails是基于REST的,所以我觉得很奇怪,没有关于如何创建公共API并保护它的教程.有谁知道任何好的教程.优先使用oAuth.

感谢所有的帮助!!

Fel*_*ipp 31

看看这个宝石https://github.com/applicake/doorkeeper

它适用于Rails 3,虽然它是早期阶段的开发.

还有一个示例应用程序,您可以查看API是如何完成的.

http://doorkeeper-provider.herokuapp.com/


rai*_*ive 24

https://github.com/intridea/oauth2现在是OAuth2开发的规范宝石.如果您正在寻找更完整的解决方案,请查看以下内容,而不是滚动您自己的提供商代码:

但如果您对流程不是很熟悉,我建议您使用oauth2 gem,以便您可以更好地学习它.


And*_*ato 24

我昨天开了一个OAuth2服务器实现.

它有很好的文档记录,并有一个控制访问的仪表板.现在我正在寻找一个想要从它开始构建引擎的人,或者在机架顶部放置一些很酷的东西.这就是开源的原因.

  • 截至目前,[Oauth2服务器实现](https://github.com/Lelylan/rest-oauth2-server)被标记为已放弃并建议继续[门卫](https://github.com/doorkeeper- gem/doorkeeper)或[opro](https://github.com/opro/opro). (2认同)

小智 9

如果您正在使用(或计划使用)设计进行身份验证,则可以使用https://github.com/socialcast/devise_oauth2_providable作为插件.


小智 5

我正在为OAuth2提供商Rack :: OAuth2开发一个rugygem. https://github.com/nov/rack-oauth2

它需要自己开发模型(令牌,代码,客户端等),但是你可以在这里获得一个完整的Rails3示例OAuth2服务器. https://github.com/nov/rack-oauth2-sample