现在开始考虑身份验证,想知道来自Intridea的Omniauth与Omniauth-Facebook等所有单一提供商选项之间的区别。
在我看来,如果Omniauth允许多提供商,它也应该允许单一提供商,在这种情况下使用它几乎总是一个更好的选择,因为你永远不知道以后何时想要添加另一个提供商,而对于像Omniauth-Facebook这样的东西,如果您决定稍后添加其他东西,则必须回溯。
答案 0 :(得分:1)
Developer
的虚假身份验证服务。您必须使用omniauth-facebook,omniauth-twitter等,具体取决于您希望用户使用哪种服务。你可以在同一个项目中使用尽可能多的东西 - 使用omniauth-facebook不会以任何方式限制你 - 想要twitter身份验证吗? - 只需将omniauth-twitter添加到您的Gemfile(对于rails / bundler项目)。
我认为omniauth的README在引言部分非常清楚:
https://github.com/intridea/omniauth
和omniauth github.io页面显示了在“入门”部分同时使用多个策略的Gemfile:
答案 1 :(得分:0)
OmniAuth是一个框架,允许您根据需要对许多身份提供者进行身份验证。您为要进行身份验证的每个提供程序创建或使用单独的“策略”。
因此,您将安装omniauth
gem,然后为您想要使用的提供者安装任何策略性gem,例如omniauth-facebook
或omniauth-slack
。
OmniAuth提供了list of strategies,可与OmniAuth v1.0或更高版本一起使用。