究竟什么是OAuth(开放授权)?
我从那里得到了一些信息
OAuth Twitter教程:什么是OAuth以及它对你意味着什么 OAuth是什么
但我想学习和了解更多。我在寻找生命周期的信息。为什么大多数社交网络都依赖于这个开放协议?
在不久的将来,随着各种技术的发展(例如ASP.NET),它会成为事实吗?
究竟什么是OAuth(开放授权)?
我从那里得到了一些信息
OAuth Twitter教程:什么是OAuth以及它对你意味着什么 OAuth是什么
但我想学习和了解更多。我在寻找生命周期的信息。为什么大多数社交网络都依赖于这个开放协议?
在不久的将来,随着各种技术的发展(例如ASP.NET),它会成为事实吗?
当前回答
OAuth是一种开放的授权标准,通常用于互联网用户使用微软、谷歌、Facebook或Twitter账户登录第三方网站而不暴露密码。
其他回答
OAuth主要是关于委托授权(选择可以为您进行授权的人)。请注意,身份验证和授权是不同的事情。OAuth是授权(访问控制),如果还想实现身份验证(ID验证),可以在OAuth之上使用OpenID协议。
All big companies like Facebook, Google, Github,... use this kind of authentication/authorization nowadays. For example, I just signed in on this website using my Google account, this means Stackoverflow doesn't know my password, it receives the allowance from Google where my password (hashed obviously) is saved. This gives a lot of benefits, one of them is; In the near future you won't have to make several accounts on every website. One website (which you trust most) can be used to login to all other websites. So you'll only have to remember one password.
OAuth是Resource Owner(facebook,谷歌,tweeter, microsoft live等)使用的协议,用于提供所需的信息,或为第三方系统(例如您的站点)提供写入成功的许可。最有可能的是,如果没有OAuth协议,第三方系统应该可以使用凭据,这将是这些系统之间不合适的通信方式。
Oauth无疑正在获得动力,并在企业api中变得流行起来。 在应用程序和数据驱动的世界里,企业越来越多地向外部世界公开api,就像谷歌、Facebook、twitter一样。 随着这种发展,身份验证的三向三角就形成了
1) API提供商——任何通过API公开其资产的企业,比如亚马逊、Target等 2)开发人员-通过此api构建移动/其他应用程序的人 3)最终用户-由亚马逊的注册用户/客座用户提供的服务的最终用户
现在这发展了一个与安全相关的情况-(我列出了这些复杂性中的一些) 1)作为终端用户,您希望允许开发人员代表您访问api。 2) API提供者必须验证开发人员和最终用户 3)最终用户应该能够授予和撤销他们所给予的同意的权限 4)开发人员可以对API提供者有不同的信任级别,其中给予她的权限级别是不同的
Oauth是一个试图以标准的方式解决上述问题的授权框架。随着API和应用程序的突出,这个问题将变得越来越重要,任何试图解决这个问题的标准——无论是外部的还是其他的——都将成为API提供商/开发人员甚至最终用户所关心的事情!
OAuth发生时,我们注册SO帐户与Facebook/谷歌 按钮。
应用程序(SO)将用户重定向到提供者的授权URL。(显示一个网页,询问用户是否希望授予应用程序读取和更新数据的访问权限)。 用户同意授予应用程序。 服务提供者将用户重定向回应用程序(SO),将授权代码作为参数传递。 SO用代码交换访问权限。
来源:OAuth1服务提供者
OAuth是一种开放的授权标准,通常用于互联网用户使用微软、谷歌、Facebook或Twitter账户登录第三方网站而不暴露密码。