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

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

通过 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 平台封禁了社区的应用或者他们服务宕机了,用户也能通过用户名/邮箱 + 密码的方式登录,进而降低账号登录失败的概率。

  • 链滴

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

    记录生活,连接点滴

    131 引用 • 3639 回帖
  • 使用指南

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

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

相关帖子

欢迎来到这里!

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

注册 关于
请输入回帖内容 ...
  • 老版本的博客端,后台 oauth 登录 404 了,有法解决吗

    1 回复
  • 其他回帖
  • hefeng 1

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

  • 不会吧,我的也用了很久了,还没出现过封禁的情况

    1 回复
  • 会不会是 Github 自己的技术问题trollface 毕竟我刚才看到百度 APP 上的国外疫情统计数字竟然是 78 万多。。。虽然他们没多久就更正了数字

    1 回复
  • 查看全部回帖