通过为终端用户授权不同角色,开发者可以定义该用户在应用运行时能访问和操作哪些数据。
哪些终端用户可以访问应用
终端用户可访问应用的前提,是用户在应用的可用范围内;可通过以下 3 种方式可将用户添加到可用范围:
- 开发者在首次发布时设置应用的可用范围,经过发布审批后生效。被指定的用户及部门成员可在任何渠道访问该应用
- 终端用户可主动申请使用应用,经过审批后该用户将被添加到应用可用范围。申请通过的用户可在任何渠道访问该应用
250px|700px|reset
- 机器人所在群聊中的终端用户,在机器人所在群中有权限与机器人对话。
- 用户仅可在机器人所在群中与机器人对话,无法单聊或打开应用
- 若群聊时涉及到使用用户的 User Access Token,也需要将用户添加到应用可用范围内才能走通
250px|700px|reset
哪些终端用户可以使用应用的哪些功能
添加到可用范围的终端用户,还需要被授权「终端用户角色」,才可以使用应用中的具体功能。
终端用户角色
「终端用户角色」是一组权限的集合,决定了应用运行时,终端用户能访问和操作哪些资源、执行哪些技能。比如:
- 技能:用户可以唤起或指定哪些技能
- 资源:
- 使用“数据更新”技能时,能否对数据表进行新增和编辑的操作,以及具体能编辑哪些字段
- 使用“数据分析”技能时,能查看哪些记录或字段
- 使用“知识问答”技能时,当问答结果来源于数据表时,能获取来源于哪些记录或字段的信息
目前权限管控的资源主要是「数据表」、「分析表」、「知识库中的本地文件」:
系统预置的「终端用户角色」
应用在创建时,预置了 2 个能满足最基本要求的终端用户角色(后续将根据用户需求持续补充预置角色),无需开发者创建即可供应用管理员和运维人员在运维后台进行使用。
250px|700px|reset
为用户分配「终端用户角色」
应用管理员和运维人员可在应用管理后台的「终端用户角色授权」里给用户分配终端用户角色:
终端用户的「默认角色设置」
运维人员和管理员可以设置应用默认的终端用户角色,应用可用范围内或应用机器人所在群中的用户将被默认被分配该角色,从而确保可用范围内或应用机器人所在群中的用户可用该应用。应用首次发布时,可配置应用的默认角色:
开发者可在「用户管理-角色权限配置」查看和修改默认角色配置:
250px|700px|reset
常用的记录权限(行权限)授权方式
固定值方式授权
选择数据表或分析表要进行记录权限控制的字段,并设置固定的值(如“销售区域“字段等于“华东大区”)。适用于权限控制较为简单的场景
250px|700px|reset
250px|700px|reset
动态值方式授权
选择数据表或分析表要进行记录权限控制的字段,并设定其读取用户属性中的某一属性字段的值(如“销售区域“字段等于用户“所属销售区域”)。适用于受控的用户较多,权限复杂需要统一管理的场景
- 数据表或分析表中包含「用户类型」字段
250px|700px|reset
- 数据表或分析表中某字段与「用户」属性有关
250px|700px|reset
- 若左右值字段类型不一致时,可通过类型转换的公式进行转换后设置授权规则
250px|700px|reset
无权限的表现和处理方式
1. 终端用户不在应用的可用范围内的表现:
授权方式:可通过前述 3 种方式将用户添加到应用可用范围中
2. 终端用户没有技能的使用权限
授权方式:将用户添加到有权限的角色中或给用户所属角色添加对应技能的权限
3. 终端用户没有数据的查看或操作权限
授权方式:将用户添加到有权限的角色中或给用户所属角色添加对应数据操作的权限