作者允与,Java 研发工程师,对分布式、微服务 感兴趣 。
从事 Java 开发两年多了,在此期间研究过很多开源系统,自身也开发过几套系统,每个系统中必不可少的模块就是用户模块了。接下来给大家讲一下我跟用户模块的“爱恨情仇”。
在我使用 Authing 前:
我需要找一个数据库,构思表结构、创建库、建表、写字段…
我写一堆用户、机构、角色信息表、关联表类
再写一堆 mapper 以及接口类
等做完这一通操作,旁边同事已经收拾东西准备下班了。
某天,产品经理找我,让我对接微信认证登陆。于是我开始学习微信官方文档,参考文档使用 sdk 对接。
几天之后,产品经理又找我,让我实现一个短信验证码登陆。于是,我再次开始了短信服务商的选择。确定好短信服务商后,我继续学习短信服务商文档,并且使用 sdk 完成短信登陆功能的开发。
又过了几天,产品经理又双叒找到我,表示客户日常使用钉钉软件,如何快速实现钉钉扫码登录?我啥也没说,默默地打开钉钉的对接文档,吭哧吭哧忙活到了全公司都下班了才堪堪搞完。
晚上躺在床上,我默默的想:这样下去也不是办法啊,产品经理以后再找我怎么办,第三方登录方式那么多,要是让我一个一个对接,那岂不是没完没了。
接下来的漫长一周,我游荡于论坛、贴吧、百度、Google、github、gitee 。我试过十几种开源库,也参考过很多人给的建议,直到我遇到了 Authing ,我当时的心情可以用一个词来形容:Amazing。
当我使用 Authing 后 :
首先要在 Authing 注册一个账号,然后进入控制台,点击左侧的应用菜单项,在右侧会看到一个默认创建好的应用。
此时,就相当于完成了找一个数据库,构思表结构、创建库、建表、写字段…
点击左侧的SDK菜单项,在右侧会看到有 Kotlin 的 SDK ,点击查看文档即可查看详细的 API。
此时,就相当于完成了写一堆用户、机构、角色信息表、关联表类、一堆 mapper 以及接口类。
Authing 提供大量的快速集成方案,省去了查看各种文档的时间。
Authing 大量的身份认证源支持。
Authing 仅仅需要填写必要的配置项即可轻松完成对接。如果产品经理再找我加第三方认证,我只需要在 Authing 中填写一个第三方身份源的配置,就能轻松完成,再也不用去一个一个地看文档、 SDK、写代码,这不仅提高了效率,还把我从茫茫的加班中解救了出来。
自从遇到 Authing 后,只需不到半个小时,就能实现用户模块的搭建,我可以留有充分的时间去完成系统架构设计和系统业务代码。此外,公司中多个系统可以共用同一个 Authing 用户池,这也解决了多个系统的单点登录、用户信息同步等问题。