关闭 OAuth 注册,仅支持通过邮箱注册账号

本贴最后更新于 1463 天前,其中的信息可能已经时异事殊

通过 GitHub 登录不上的反馈

今天早上收到一些关于使用 GitHub 登录不上的反馈,看了服务器日志发现是在用的 GitHub OAuth 应用被封禁了。

为什么通过 GitHub 登录不上会对社区造成很大影响?因为之前有很大一部分用户是通过 GitHub OAuth 注册的,注册后没有绑定邮箱,也没有绑定其他登录验证方式,所以一旦不能通过 GitHub 登录社区,就意味着没有任何其他方式能够成功登录。另外,有一部分用户还搭建了博客端节点,这也意味着他们登录不了自己伺服的博客,这是令人非常沮丧甚至是愤怒的。

封禁原因排查

以前曾经发工单和 GitHub 确认过关于 API 的调用频率,得到的答复是完全 OK 的,不会触发它们的风控。实际上在使用时调用频率也很低,仅在用户登录时会发起这些请求:

  • 身份验证
  • 拉取公开仓库

GitHub 官方文档也明确说明了带 token 的 API 调用频率限制是每小时 5K 次。而社区调用 API 的频率是远远不可能达到这个上限的,所以可以排除是技术原因导致的封禁。除了技术原因,那还剩下的原因就是违反了 GitHub API 使用规范,可是:

  • 用户授权时没有任何额外的 scope,也就是使用默认的最小化权限获得 access token
  • 拉取到的仓库信息都是公开仓库的信息,也没有任何商用目的

我实在想不出来到底是哪里违反了使用规范。为了弄清楚封禁原因,已发工单进行咨询,目前还没有得到答复。

如何解决问题

现在已经重新注册了一个 GitHub OAuth 应用从而恢复了登录。

为了长远考虑,我们需要从根本上解决问题。这个“根本”在于注册入口必须是完全自主可控的,所以我们决定关闭所有 OAuth 方式的注册,仅支持通过邮箱注册新账号。登录方式依然支持 OAuth 授权登录,在账号设置中进行绑定后就可以使用 OAuth 登录了,继续支持 OAuth 登录的目的在于方便。

这样一来,即使 OAuth 平台封禁了社区的应用或者他们服务宕机了,用户也能通过用户名/邮箱 + 密码的方式登录,进而降低账号登录失败的概率。

  • 链滴

    链滴是一个记录生活的地方。

    记录生活,连接点滴

    126 引用 • 3621 回帖
  • 使用指南

    链滴用户指南系列帖,社区功能可在此逐一了解,欢迎讨论。

    42 引用 • 2874 回帖 • 29 关注
  • 登录
    17 引用 • 133 回帖

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • DevYui

    我主要就是觉得这样只有第三方登录太不安全了

    1 回复
  • 其他回帖
  • goodbye

    我看了下,使用 GitHub 弹出取消再次确认 GitHub 登录授权,权限相比以前多了一些东西,请问为何需要额外权限?

    1 回复
  • hefeng 1

    你的敌人总是会想尽一切办法把你搞崩,无论是从技术上还是从精神上。这是黎明前最黑暗的时间,D 大和社区一定能够挺过去的,加油 D 大!

  • 88250

    不管是不是技术问题吧,造成的结果都是不可用,所以就不纠结了,稳定大于一切。

    1 回复
  • 查看全部回帖