
组织权限
账户体系解决产品的人员问题, 即人的问题 。⽽组织权限要解决的是产品中人员的组织架构和访问权限的问题。
在软件系统中的组织, ⼜或者称为组织管理或组织架构, 组织架构就是为了有效地协调组织内的各种信息和资源, 提⾼组织的工作效率, 以期顺利地达到组织目标 。它是软件系统中人员如何分组如何分配所追寻的答案。
在软件系统中的权限, 指的是用户能否具有访问系统 、系统资源的资格 。在软件系统中主要通过管理员将某些资源的访问 、管理 、操作等权限赋予用户, 达到管理和使用的目的。
1.1 组织管理
对于任何—个系统或者企业来说 ,人员的组织不可能存在无等级无结构的概念, —个系统和企业为了完成某些功能或工作, 必须将人员有序的组织起来, 让人员各有所岗,各司其职 才能最大力度的发挥资源的作用。因此组织是—个系统不可缺少的模块。
1.1.1 组织类型
在组织设计中 ,按照国情情况分类, 可以将组织分为集团型组织和机构型组织。
● 集团组织
○ 以资本为主要联结纽带的⺟子公司为主体 ,侧重于商业利益的追求
○ ⽀持集团 、公司 、子公司 、部门四级组织
○ 公司是集团的下级组织
○ 子公司是公司的下级组织
○ 部门可以⾪属于子公司或公司或集团
● 机构组织
○ 多指机关 、团体 、其他工作单位, 或机关 、团体的内部组织, 政府机构 、⾮营利组织 、大型公 司等 ,侧重于社会功能的实现
○ ⽀持机构 、机关 、单位 、部门四级组织
○ 机关是机构的下级组织
○ 单位可以⾪属于机构或者机关
○ 部门只可以⾪属于单位
1.1.2 组织树
组织的管理是以树形结构进行的, 最多⽀持9级组织。
结合组织分类 ,在组织树中可以将节点划分为:集团 、公司 、子公司 、机构 、机关 、单位 、部门, 以及根组织。
根组织 | 根组织是组织架构的顶级节点, 有且只有—个, 并且无法向上添加节点 |
根组织下的组织节点:集团 、公司 、机构 、机关 、单位 | |
根组织拥有所有权限,且不可以进行权限编辑 | |
根组织不参与权限分配, 即不可以将根组织分配给用户, 原则上根组织对所有用户隐藏 | |
集团 | 集团是集团型组织的最⾼等级, 必是在根节点之下 |
集团的下级组织:公司 、部门 | |
集团可以访问根组织所有权限, ⽀持权限配置, 其权限集合小于等于根组织的权限集合 | |
公司 | 公司可以是根组织或者集团的下—级组织节点 |
公司的下级组织:子公司 、部门 | |
公司可以访问上级组织的所有权限, ⽀持权限配置, 其权限集合小于等于上级组织的权限集合 | |
子公司 | 子公司是公司节点的下—级节点, ⽽且只能⾪属于公司 |
子公司的下级组织:部门 | |
子公司可以访问公司所有权限, ⽀持权限配置, 其权限集合小于等于公司的权限集合 | |
机构 | 机构是机构型组织的最⾼等级, 必是在根节点之下 |
机构的下级组织:机关 、单位 | |
机构可以访问根组织所有权限, ⽀持权限配置, 其权限集合小于等于根组织的权限集合 | |
机关 | 机关可以机构的下—级组织节点, ⽽且只能⾪属于机构 |
机关的下级组织:单位 | |
机关可以访问上级组织的所有权限, ⽀持权限配置, 其权限集合小于等于上级组织的权限集合 | |
单位 | 单位可以是机构或者机关的下—级组织节点 |
单位的下级组织:部门 | |
单位可以访问上级组织的所有权限, ⽀持权限配置, 其权限集合小于等于上级组织的权限集合 | |
部门 | 部门是组织架构职能层级的最低层级, 可以⾪属集团 、公司 、子公司 、单位 |
部门的下级组织:部门, 即子部门 | |
部门可以访问上级组织所有权限, ⽀持权限配置, 其权限集合小于等于上级组织的权限集合 |
1.1.3 用户列表
组织树节点所拥有的用户列表。
1.1.4 组织角色
为组织分配跨越组织树的权限内容。
1.2 岗位管理
职责是指职务责任, 组织要求在特定岗位上需要完成的任务, 是指任职者从事职务行为所承担的工作任务和责任, 根据岗位工种确定岗位职务范围。
岗位是职责的—种实现。
1.2.1 岗位树
岗位的管理是以树形结构进行的, 最多⽀持9级岗位。
● 岗位是组织架构中唯—的职责层级, 岗位可以⾪属于职能层级的任意节点
● 在组织架构中 ,仅限只有岗位节点可以设置人员
● 分配到岗位上的人员拥有该岗位的所有权限集合
● 岗位的下级组织: 岗位
● 岗位可以访问上级组织所有权限, ⽀持权限配置, 其权限集合小于等于上级组织的权限集合
1.2.2 默认岗位
正常情况下无法将人员直接分配到职能层级的节点上, 为满足特殊情况下职能层级在无职责层级下可以使用的问题 ,所有职能层级的节点默认都会有—个固定的岗位:挂职。
挂职岗位是所有职能层级都有的—个岗位, 每个职能层级节点创建时都会创建其相应的挂职岗位,该岗位继承所属职能层级权限集合, 可以配置权限, 可以分配人员。
所有无职责层级的职能层级节点进行人员分配时, 将人员分配到职能层级节点的默认岗位( 挂职)上。
挂职岗位可以通过系统策略配置其可见或者不可见。
⽀持通过系统参数修改默认岗位的名称。
1.2.3 责任岗位
责任岗位是指在—个组织节点下的主管岗位 ,仅限—级岗位设置为责任岗位,且—个组织节点有且只有—个责任岗位。
1.2.4 用户与责任人
用户是指分配到岗位下的所有用户 ,所属岗位的用户拥有岗位的所有权限。
岗位责任人是指—个岗位的主要负责人, 每个岗位都可以设置—个责任人,且只能有—个责任人 。
1.2.5 岗位角色
为岗位分配跨越组织树的权限内容。
1.3 角色管理
基于组织架构的权限模型是将权限按照组织层级的结构进行粗粒度权限划分, 基于岗位的权限模型是将权限按照职位职责的作用进行细粒度权限划分 。虽然基于组织架构和基于岗位的权限模型已经满足大部分的权限需求, 然⽽它的缺点是不够灵活, 无法灵活调整逾越组织架构的权限划分, 因此引⼊基于角色的权限管理。
根据业务系统中权限判定的重要组成部分:组织 、岗位 、用户三个因素, 基于角色的角色分为:组织角色 、岗位角色 、账户角色 。组织角色只能赋予组织, 岗位角色只能赋予岗位, 账户角色只能赋予账户。
1.3.1 用户角色
用户角色是指用于给用户分配的角色 。
系统预置管理员 、开发者 、使用者等⼏类常见的用户角色 ,切不可删除。
1.3.2 组织角色
组织角色是指用于给组织分配的角色, 可用于灵活扩展组织的权限。
1.3.3 岗位角色
岗位角色是指用于给岗位分配的角色, 可用于灵活扩展岗位的权限。
1.3.4 预置角色
在账户体系中根据不同用户群体的特性, 平台将预置—些系统级别的角色, 有 :超级管理员 、管理员 、开发者 、使用者 、体验者。
● 超级管理员
○ 不⽀持增加成员, 如需修改则通过数据库操作
○ 由系统初始设定,不⽀持更改
○ 拥有最⾼权限, 可不校验权限
○ 可以指定管理员角色
● 管理员
○ ⽀持成员管理
○ 权限由超级管理员分配
○ 可在权限范围内进行⼆次分配
● 开发者
○ 由管理员分配
○ ⽀持成员管理
○ 可在权限范围内进行⼆次分配
● 使用者
○ 由管理员分配
○ ⽀持成员管理
○ 不⽀持权限⼆次分配
1.4 身份管理
身份是指平台内对权限合集的—种切割方式, 其权限合集来源有两种:⻆色和岗位。
当用户拥有所属身份的⻆色或者岗位时, 该用户就拥有该身份 。当用户拥有多个身份时, 可通过切换身份来切换不同的权限合集。
1.5 动作管理
动作管理是平台定义的按钮, 以便给各个功能使用,不管是在线开发 、代码⽣成还是用户⾃主写的代码, 要想让页⾯的元素, 如按钮, 根据平台权限逻辑进行权限控制, 就要用平台提供的动作。
1.6 菜单管理
菜单管理是指平台的菜单维护。
1.7 资源管理
资源管理是指为平台的功能配置资源, 如动作 、接⼝ 、数据权限 、列表等。
1.8 权限管理
权限管理⽀持按组织和按角色两种分配方式。
1.8.1 组织权限分配
组织权限的分配是按层级递减的原则分配,下级的权限范围不可能会超过上级的权限 。如 :引迈拥有100权限, 引迈下级组织或引迈下的岗位只能在这100个权限范围内分配;
下级的权限范围包含上级组织及组织角色的权限( 岗位同理), 如 :引迈公司分配了100个权限, 引迈公司⼜关联公司角色, 给公司角色分配了20个权限 ,则下级可分配的权限范围有120个权限;
1.8.2 角色权限分配
超级管理员拥有全部数据, 可分配全部权限
其他角色 ( 包含内置的角色) 进来只能操作⾃⼰有权限的部分, 没有权限的数据是禁用状态;