为什么有些服务不提供 Google/Facebook/Apple/Twitter 登录?即加密交换。
我认为他们想要尽可能多的用户,这是获得更多用户的好方法。是否存在与它们相关的某种安全漏洞?
编辑:对于 Google 和 Apple 登录,因为两者都提供电子邮件服务(gmail 和 icloud),为这些提供登录按钮与要求他们验证其电子邮件地址相同。假设您在登录按钮上所做的只是获取经过验证的电子邮件地址(这就是您所需要的)。当然你还是想要 2FA
为什么有些服务不提供 Google/Facebook/Apple/Twitter 登录?即加密交换。
我认为他们想要尽可能多的用户,这是获得更多用户的好方法。是否存在与它们相关的某种安全漏洞?
编辑:对于 Google 和 Apple 登录,因为两者都提供电子邮件服务(gmail 和 icloud),为这些提供登录按钮与要求他们验证其电子邮件地址相同。假设您在登录按钮上所做的只是获取经过验证的电子邮件地址(这就是您所需要的)。当然你还是想要 2FA
公司可能不希望提供联合登录选项的原因有很多。其中一些包括以下内容:
当然,这些都是一些普遍的原因。个别公司可能有其他原因,但我们无法知道它们是什么。
除了其他答案中已经提到的极好的原因:
从工程角度解决这个问题,提供第三方登录服务并不一定是微不足道的。OAuth2 确实使它更容易,但从技术上讲,您不能只在页面上点击一个通过 OAuth2(或任何其他联合协议)链接的登录按钮,而不必做任何其他事情。
例如,谷歌实际上对他们的登录按钮的外观、应该放置的位置以及许多其他事情有一些非常具体的要求。要使用他们的 SSO 功能实际遵守他们的 ToS 作为第三方服务(因此不会受到诉讼或被阻止使用他们的 sSO 功能),您必须满足所有这些要求,而不是做他们认为不可接受的事情与(或可能认为与他们的一项服务直接竞争)。
几乎所有主要的 SSO 提供商也有类似的要求。一般来说,这些通常不是非常困难,但有些网站可能认为不值得麻烦(或者他们可能是势利小人,拒绝接受 SSO 提供商所要求的风格方面)。
每个提供商还提供略有不同的信息集,必须针对您自己的帐户数据库进行标准化,并且根据具体情况,您甚至可能需要处理不同的协议。
除了工程方面,还有公众形象方面。例如,一家以“全美国人”而自豪的公司可能不想将 Yandex 或阿里巴巴列为 SSO 提供商,因为这些公司在很大程度上不是美国公司,这可能会损害他们在潜在用户中的形象。
就 CBHacking 的观点而言,隐私问题不仅适用于使用它登录的人(这可以被认为是可以接受的,因为使用联合登录是可选的/用户可以选择使用哪个提供商),有时甚至会影响有意避免它的用户.
例如,谷歌强烈推荐他们的客户端库,它总是向谷歌发送个性化请求以检查你是否已经登录等。对于想要使用谷歌登录的人来说,这不是问题,但其他用户可能不想发送信息哪个站点他们正在访问多个与他们没有任何关联的身份提供者。
即使通过不使用 API 来避免这种情况(这进一步增加了实现这一点的工作量),标准化按钮的存在可能会给您的用户留下他们的数据被发送到这些公司的印象。