如果用户未使用我的Web(导轨)应用程序(例如使用API ),我该如何对他们进行身份验证

问题描述 投票:1回答:2

我创建了一个使用OmniAuth gem提供OAuth身份验证的Rails(3.2)应用程序。 用户可以使用自己的Twitter,Facebook或Google凭据登录到该站点,这是非常糟糕的标准功能。

我现在想通过API提供数据,以便可以在我的Web应用程序之外使用它,但是,用户仍然必须登录才能访问其数据。 如何在Rails APP中执行此操作? 用户必须怎么做才能拨打电话?

更新有些人建议使用“替代”身份验证方法,但是我想知道我是否不能使用已经为它们使用的相同OAuth凭据。 我不想他们必须提供其他用户名/密码,我希望他们能够像使用WebUI一样使用其Twitter,Facebook或Google身份。

ruby-on-rails rest oauth omniauth
2个回答
0
投票

从控制器中的before过滤器调用的authenticate_with_http_basic(如果需要,也可以摘要)可能对您有用。

您可以使用--user参数对curl进行测试。

这是一个关于该主题的好线程: 在Ruby on Rails中,authenticate_with_http_basic有什么作用?


0
投票

Devise具有所需的功能令牌认证。

另请访问http://zyphmartin.com/blog/simple-auth-token-example-with-devise

© www.soinside.com 2019 - 2024. All rights reserved.