Skip to content

用户和组织架构

概述

织信采用多租户架构,系统中用户分为系统账号 Account 团队成员 CompanyMember 应用成员 User 三种。

系统账号通过注册或者管理后台添加,每个Account可加入到多个团队中成为CompanyMember, 每个CompanyMember在团队中可以加入多个应用成为 User

每一个团队成员可以归属于一个或者多个部门 Dept,部门之间也有父子关系。每个部门可以有一个或者多个CompanyMember作为部门负责人。

用户结构

系统账号

系统账号的来源有以下几个途径

  • 系统管理员通过后台添加
  • 在脚本中调用informat.system.addAccount()函数添加

在管理后台可以对系统中的所有账号执行禁用,强制修改密码等操作。系统账号只是登录织信的凭证,在没有加入团队的情况下,在登录系统后不能执行任何操作。

团队成员

系统账号可以加入到多个团队中,在每个团队中CompanyMember会被赋予不同的团队角色,团队角色会关联其可以操作的权限,团队成员可以拥有多个角色。 关于角色权限,请参见角色权限。 每个团队默认会有两个角色

  • 管理员 拥有所有权限,可进行应用设计
  • 成员 只有使用应用的权限

在加入团队时也需要设置团队成员所属的部门 Dept

团队成员的来源有以下几种途径

  • 用户创建账号后,自行创建团队后会将自己加入到团队中并赋予管理员角色
  • 接受邀请后加入团队
  • 管理员在管理后台将其加入到团队
  • 在脚本中调用informat.company.addCompanyMember()函数

移除团队成员有以下几种途径

  • 在管理后台移除
  • 用户自行退出
  • 在脚本中调用informat.company.deleteCompanyMember()函数

应用成员

团队成员可以加入到多个应用中,在每个应用中User会被赋予不同的应用角色,应用角色会关联其可操作的权限,User可以拥有多个角色。

每个应用默认有一个管理员 admin的角色,拥有所有的权限。

应用成员的来源有以下几种途径

  • 应用管理员将用户加入到应用中
  • 应用管理员设置应用的授权方式为按照角色和部门授权,并且该团队成员的部门或者团队角色属于授权的范围
  • 在脚本中调用informat.user.addUser()函数

移除应用成员有以下几种途径

  • 应用管理员将用户移除
  • 如果加入时的授权方式为按照角色和部门授权,并且该团队成员的部门或者团队角色不属于授权的范围
  • 在脚本中调用informat.user.deleteUser()函数