移动应用该如何做好登录授权?

发布于 2022-09-01 16:51:59 字数 469 浏览 13 评论 0

我现在在做一款app,需要匿名访问,手机号码验证登录、账号秘密登录、第三方登录都需要集成进去。

我最近很纠结这个问题,之前没接触过,这样的设计该如何去做?看了一些关于oauth2的内容,感觉还是不知道该如何实现。可能是对oauth2 协议有很多的困惑吧,感觉很多都没理解清楚,一知半解的。求大家支招。

困惑如下:

  1. 匿名访问,oauth2 有支持匿名访问吗,该怎么做的呢?

  2. 手机短信验证登录,这个验证该怎么去做呢?是在授权服务器上进行短信验证吗?

  3. 第三方登录该如何集成进去呢?例如 QQ 的第三方登录之后,QQ登录平台会返回一个OPENID,还有一个 redirect 的重定向。
    我想的是,第三方登录成功之后,有个 redirect_url 的指定,可以跳转到一个指定的 url,通过这个url 来表示授权成功,然后发放 token。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

烙印 2022-09-08 16:51:59

你先不要管oauth

账户注册、登陆、注销、改密码、手机号等,都变更token(token就是账户的一个字段)

国内第三方基本都是给你一个openid,这个openid字段也作为账户的识别就好

谁对谁错谁最难过 2022-09-08 16:51:59

挨个回答你的问题:

  1. oauth2是一种第三方授权体系,可以通过第三方的账号密码拿到授权标志作为本身平台的用户标志,不支持匿名

  2. 手机验证这个和验证码验证是一个思路,异步调用生成随机数并发送短信的接口,这个接口会吧验证码同时保存进session或者redis,可以设置时效性,然后提交注册的时候同步验证手机号和对应验证码的即可

  3. 第三方回调地址这个不用过于纠结,第三方登陆后可以拿到用户的基本信息(openid和昵称之类),可以通过openid去检测此用户之前有没有通过这个第三方登陆过(这里是app逻辑还是网页逻辑取决于第三方认证的发起方式),如果有,生成token,没有就进入生成新用户逻辑,然后返回token,至于你说的地址回调这个一般来说是上面的逻辑完成之后进行的跳转。

作死小能手 2022-09-08 16:51:59

ddddddddddddd

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文