昨晚爆肝了一下,给自己的网站加上了 Github OAuth 登录。
现在可以通过 Github 账号登录了: https://www.natfrp.org/
登录时点击左下角的基佬猫图标即可登录,无需手动设置账号、邮箱和密码。
关于将普通用户系统改造加入 OAuth,我是这样做的:
- 因为我比较懒,不想再单独开个邮箱绑定页面,所以做了个判断,如果通过 Github OAuth 登录的用户没有 public email (即用户资料的 email 为 null ),就不允许注册
- 将 OAuth 用户的密码设置为 NULL,这样用户只能通过 OAuth 登录,因为系统做了判断,常规渠道无法通过空密码登录;用户也不能修改密码,因为旧密码不允许为空。
现在虽然没啥问题,但是感觉还是不太完善。。而且这个设计只能 Github 登录,并不是真正的 OAuth 兼容。
想问一下这种设计会有什么安全漏洞之类的吗?各位 V 友在处理 OAuth 登录的用户这方面有没有什么更好的办法呢?
谢谢