OAuth2和Omniauth之间的区别

法兰·马丁内斯

我已经阅读了很多有关Omniauth和OAuth2的信息,以及Omniauth如何使用OAuth的知识,但是我真的不了解每个OAuth的目标是什么。

例如,我知道使用Omniauth可以通过以下方式返回发送的参数

@auth ['omniauth.params']

但是,如果我使用的是不带Omniauth的OAuth,是否可以这样做?

我的真正问题是,我不了解它们之间的区别,Omniauth在何处结束和OAuth开始,以及我如何使用OmniAuth来完成OAuth无法做到的事情。

pjmorse

在这个答案中,我假设您使用的是Rails(或其他基于Rack的框架),因为没有这些,Omniauth就没有多大意义。

从OAuth2开始。OAuth是一种系统,用于使用一个站点上的身份验证来授权一个站点上的用户。OAuth本身描述了对此进行管理的系统,但未指定网站用来执行此操作的代码。(这意味着,例如,基于PHP的站点可以使用基于Ruby的站点作为提供程序,而无需知道该提供程序的幕后发生的事情。)

这就是Omniauth的用处。Omniauth是一个软件包,用于支持基于Rack的站点中的分散式身份验证。OAuth2是它支持处理此问题的协议之一,并且它包含一个名为OAuth2的类,该类是OAuth2规范的Ruby实现。您可以将Omniauth视为OAuth2的包装器,它可以处理协议的详细信息,而不会给您带来太多麻烦。

可以在不使用Omniauth的情况下使用OAuth2 gem / class,并且自己处理通过OAuth2进行身份验证的细节,但是我不确定为什么。

至于您可以使用OAuth无法完成的Omniauth所做的事情,大多数是通过其他非OAuth服务进行身份验证(Omniauth允许使用社区构建的“策略”来进行身份验证,例如对Stack Exchange进行身份验证)。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

OAuth2和Omniauth之间的区别

来自分类Dev

带有devise和omniauth的Google oauth2被视为失败

来自分类Dev

OAuth2:使用JWT客户端身份验证的JWT授权授予和客户端凭据授予之间有什么区别?

来自分类Dev

Rails - Google oauth2 request.env['omniauth.auth'] is nil using omniauth with multiple models

来自分类Dev

Rails和OAuth2

来自分类Dev

ServiceStack和OAuth2

来自分类Dev

ServiceStack和OAuth2

来自分类Dev

Rails和OAuth2

来自分类Dev

Microsoft Bot Framework .Net中的Directline API和OAuth2有什么区别?

来自分类Dev

client_id和client_secret OAuth2&OAuth流类型之间的区别

来自分类Dev

client_id和client_secret OAuth2&OAuth流类型之间的区别

来自分类Dev

在OAuth2身份验证调用和重定向调用之间传递值

来自分类Dev

Rails-在多个模型上使用omniauth时,Google oauth2 request.env ['omniauth.auth']为零

来自分类Dev

OAuth2开发和生产中

来自分类Dev

Oauth2用于授权和认证?

来自分类Dev

带轨和zapier的oauth2

来自分类Dev

依赖注入-HttpClient和OAuth2

来自分类Dev

Spring oauth2 和集成测试

来自分类Dev

redirect_uri_mismatch与Heroku上的OmniAuth Google oauth2

来自分类Dev

`[[[$ a -lt 2]]`和`((($ a <2))`之间的区别

来自分类Dev

“%%2:”和“ number%2 == 0”之间的区别?

来自分类Dev

为自定义omniauth策略获取“身份验证失败!invalid_credentials:OAuth2 :: Error”

来自分类Dev

MSYS2和Cygwin之间的区别

来自分类Dev

Git和libgit2之间的区别

来自分类Dev

fork(3)和fork(2)之间的区别

来自分类Dev

2NF和BCNF之间的区别

来自分类Dev

Python 2中“ //”和“ /”之间的区别

来自分类Dev

char *和char []之间的区别(2)

来自分类Dev

'2>&1'和'&> filename'之间的区别

Related 相关文章

热门标签

归档