SaaS平台下企业账号的注册及认证和模型设置
UIMS即统一身份管理系统,可以认为是多租户架构的升级版,通常是整个平台账号和权限管控的基础性系统,可划分为两级账户体系、基础权限模块和基础信息模块三大模块。本文从这三个方面对UIMS进行了分析阐述,一起来看一下吧。
表3组织分类
三、基础信息模块
基础信息,主要针对个人实体和组织实体,如企业工商信息、通用信息等要满足灵活扩展的需求,实体的类型种类繁多,随着业务场景的变化,信息结构的变化也可能比较频繁。在技术上建议采用以下两种方式应对:
1. EAV 数据模型
EAV 即 Entity(实体)-Attribute(属性)-Value(值)数据模型,将传统的 ORM 映射模型——即实体属性与数据库表字段一一对应的模型,变换为实体属性与数据表的行记录一一对应的模型。EAV 模型大大增加了数据映射和相关业务逻辑的复杂程度,但是具备高度的灵活性,能够满足随时变化的信息结构,满足动态变更的实体结构、满足字段级权限控制、满足字段级数据版本历史等功能。
2. 采用松散型数据结构的数据库方案
其中的代表便是MongoDB:一个介于关系数据库和非关系数据库之间的分布式文件存储数据库产品,在 CAP 理论中属于 CP 范畴,支持松散数据结构,支持复杂的混合数据类型,支持 JSON 和文档存储。采用此方案的优势比较明显,除了能够满足 EAV 模型所具备的大部分功能外,还大大简化了技术复杂度,支持分布式部署,推荐采用此方案。
3. 信息分类
平台的信息主要分为基础信息和业务信息两大类。基础信息分为个人实体信息和组织实体信息,主要描述实体的基本信息、通用信息,与业务相关性不大,例如姓名、性别、身份证号码、手机号码、企业通用信息、企业工商信息等。业务信息由各业务系统自行管理和维护,UIMS 不涉及。
所有与信息收集、储存、处理及数据安全有关的书面政策,应当出具《隐私政策》并进行声明。部分组织信息由于可在网上公开查到,且是法定必须公布的信息,因此可以默认公开。
四、其他功能模块1. 软件授权
基于两级账户体系,建立云平台付费授权机制,针对用户账户和组织账户进行独立授权。根据产品的商业策略,可执行灵活的付费模式:
时效限制:年付、季付、月付,不同时效费用不同。功能限制:授权不同的功能,费用不同。数量限制:最大组织数量限制、最大用户数量限制,不同的数量费用不同。2. 组织入驻
UIMS 应提供一个组织实体注册登记的流程,允许组织主动提交基本信息,开户入驻平台。此外,应提供在管理后台手工录入组织开户的功能。
3. 实名认证
分为个人账户实名认证和组织账户实名认证,尽量通过技术手段自动执行实名认证的审核过程,减少甚至取消人工干预。UIMS 应提供实名认证的功能和流程。
4. 资质审核
资质审核分为两部分:一是部分实体实名认证过程中的人工核查;二是对实体提交的额外资质进行技术或人工审核。
5. 组织绑定
基于『从属关系隔离原则』,个人账户应在具体的业务系统中绑定组织账户,绑定过程分为两种类型:一是由组织管理员手工创建的从属个人账户,另一个是个人账户申请加入某个组织。业务系统应该提供此功能和流程。例如,个人注册帐号后,可主动登记绑定组织,对已注册登记的组织则要该组织管理员审核,未在系统中注册登记的组织,则始终处于待审核状态。
6. 组织解绑
允许个人账户解除与组织之间的从属关系。解绑分为两种情况:一是个人账户主动解除关系,二是组织管理员解绑、解雇或清除雇员(个人账户)。
其中第一种个人解绑的,应当由组织进行审核批准,个人申请解除绑定关系,组织进行审核,但是是否需要审核,应交由具体的业务系统自行决定。
7. 间接雇佣(从属)关系
雇佣(从属)关系分为直接雇佣与间接雇佣关系。例如保安员在某保安公司入职(直接雇佣),在某物业作保安(间接雇佣)。考虑两种办法标识间接雇佣关系。
8. 增加服务单位(项目点、物业社区)的实体概念
利用组织内部的组织机构体系,将间接雇佣单位作为当前组织的分支机构进行处理。
9. 账户注销
分为个人账户的注销和组织账户的注销。UIMS 应提供相应的页面完成账户注销的操作。
10. 私有化部署
原则上拒绝私有化部署,但对于特定的客户,考虑私有化部署。私有化部署须考虑版本升级问题,在软件架构设计时,尽量遵循业务系统和技术系统分离的原则,并抽离公共模块,最大限度为私有部署的版本提供升级服务。
五、总结
总体来说,统一身份管理系统要做的事情有这么几件:
1. 定义实体
2. 业务系统实体
3. 服务账户实体(客户端)
4. 组织实体
5. 组织架构
6. 个人实体
7. 角色实体
8. 权限标识
9. 资源标识
10. 条件标识
11. 处理上述各实体之间的关系,并提供数据结构
12. 提供鉴权API和业务 API
13. 提供其他功能:统一注册功能(页面和流程)、统一登录功能、软件授权、组织入驻、组织绑定/解绑、资质审查。
本文由@刘同学 原创发布于人人都是产品经理,未经许可,禁止转载
题图来自Unsplash,基于CC0协议
该文观点仅代表作者本人,人人都是产品经理平台仅提供信息存储空间服务。