用户分类问题疑惑

Blade 已结 1 1228
xianzifeng
xianzifeng 2020-06-18 10:47

公司有很多内外部的系统, 涉及到的用户大致分为三个大类。  一是内部公司用户,二是对外服务的各企业级用户,三是对外提供服务的公众用户。

具体需求如下:

公司想做一个用户中心,包含内外部各系统。

内部用户可以访问一部分的内部使用系统,包括公司内部流程系统,例如:业务系统,广告管理系统 CMS系统等。涉及到内部公司人员。这部分系统都需要单点登录,用户可以在几个系统上切换使用各系统。

各企业级用户是公司对外提供产品及服务的对象,一般是一个公司性质的。其中包括一些对外提供的接口服务,涉及到各企业用户需要支付购买我司一些产品。

对外提供服务的公众用户,一般是指我司一些对公众提供服务的网站需要登录,也涉及到一些支付类的操作。

基本Blade的用户系统是否可以满足公司对于用户管理的需要?  这些分类用户是否需要单独一个表与系统的用户表分开?   还是说 现有系统的用户表完全可以满足需求, 只需要在此基础上做逻辑区分?



1条回答
  •  smallchill
    smallchill (楼主)
    2020-06-19 14:20

    目前blade以及有了针对不同类型用户的判断,只需要自行拓展就可以满足。具体分为两种:

     1. 给blade_user增加一个category字段,用来标注对应的用户类型,然后在请求token的时候获取这个category,后端进一步根据分类来控制权限。
     2. 各个不同的用户新建不同的用户表,在获取token的时候切换表来查询信息,然后在生成的token内加入分类的字段即可


    个人更推荐第一种方式,因为blade_user相当于是基础用户表,几乎适用于所有场景的用户。在此之外其他类型的用户要更多字段的时候,新建一个用户子表,比如blade_user_web、blade_user_app、blade_user_admin等等,以用户表id为外键做索引,这样一来,整个用户体系就很灵活,也可以直接使用blade内置的api了。


    具体用户类型判断可以看如下截图

    image.png

    0 讨论(1)
提交回复