首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过Google登录,无需登录Google

通过Google登录,无需登录Google
EN

Stack Overflow用户
提问于 2016-11-03 18:24:44
回答 2查看 76关注 0票数 1

出于好奇,当我通过OpenID或类似的(谷歌、脸书等)登录到像StackOverflow这样的网站时,我也会登录到身份提供者本身(例如谷歌)。

有没有办法让用户可以使用第三方身份登录到我的站点,而无需登录到该身份本身?

我知道Google Sign-In的工作原理与其他人不同,使用Google sign-in。我对所有流行的登录服务(Google,Facebook,Twitter,...)的一般答案感兴趣。无论他们是基于OpenID (2.0),OAuth,还是一个专有的解决方案,例如:“使用OpenID,如果你做某某,这是可行的。对谷歌来说,这是不可能的,因为技术原因。”

EN

回答 2

Stack Overflow用户

发布于 2016-11-03 18:35:24

OAuth是一种通用的“协议”,它允许站点(例如stackoverflow)驻留在身份提供商(例如谷歌)上进行身份验证。这包括一个事务,其中

你告诉stackoverflow,你将使用goole login

  1. stackoverflow将发送到谷歌,以获得重定向url的认证。
  2. 谷歌将认证你,有效地将您登录到他们的服务(以便知道您就是您)
  3. 谷歌(和任何其他身份提供商)应询问您是否希望将您的电子邮件和其他信息发送到stackoverflow您同意将此信息发送给消费者stackoverflow这一点取决于身份验证消费者(例如stackoverflow)是否接受此信息(您的电子邮件)为有效。

任何未通过ID提供商的登录(步骤3)的方案都会将您的凭据暴露给(可能)不受信任的第三方(您会用stackoverflow来获得您的google密码吗?)

步骤3还会在您的机器上安装一个cookie,其中包含您与Google的会话。这取决于Google (或任何ID提供商)是否认为此会话对所有其他用途(Gmail等)有效,但无论如何,它是一个方便的功能

如果您已经与Google建立了会话,则可能不需要您再次登录。

票数 2
EN

Stack Overflow用户

发布于 2016-11-04 16:42:31

您所描述的行为是可能的(并且IDP可以很容易地实现它),但由于多种原因,它是不可取的。

  1. 它训练用户进行网络钓鱼。因为点击“登录”后,用户应该输入id和pw,所以用户可以很容易地显示登录页面,用户会输入他们的信息。
  2. 当然对用户不方便。
  3. 从风险和密码破解的角度来看,最好在用户登录时做很多“检查”,并可能需要额外的检查(如ping电话或询问问题),然后创建一个已登录的会话。

我理解用户不应该登录到IDP的愿望,这是一个副作用,如果您正在编写IDP代码,或者在用户返回到您的站点时提醒用户注销IDP,您可以很容易地实现这一点。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40399086

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档