页面树结构
转至元数据结尾
转至元数据起始

正在查看旧版本。 查看 当前版本.

与当前比较 查看页面历史

« 前一个 版本 14 下一个 »

一、概述

用户同步是指有多套系统(包括Smartbi系统)都拥有用户信息。当用户信息存储于第三方系统或使用第三方系统进行用户管理时,需要将第三方系统的用户数据同步到Smartbi系统中。

Smartbi提供用户同步功能,通过界面化简单配置即可实现定期同步用户数据。


二 、用户同步核心概念

1、三大核心概念

在Smartbi系统中,用户管理涉及三类关键对象,需与第三方系统数据一一对应

对象说明示例
用户组

即“机构”,以树形结构组织,体现层级关系。

如广州思迈特软件有限公司->开发部->运维组
角色

Smartbi系统中的主要权限载体,角色可分配给用户及用户组,决定用户在系统中的权限。

如组长、普通组员
用户

系统的实际使用者。

如张三(登录账号zhangsan)

2、属性映射

每个对象包含多个属性,需与第三方系统数据字段建立对应关系

1)用户组(机构)属性

属性属性说明必须同步同步逻辑
机构ID机构在系统中的唯一ID。

建议同步第三方系统中机构的唯一标识作为机构ID,若无则可由系统生成唯一ID。

若第三方系统中存在同名机构(如产品部下有“运维组“,开发部下也有“运维组”),则必须同步机构ID。

机构编号机构的编号,一般用于实现数据权限控制。

可从第三方系统同步,若无则为空。

机构名称

机构的名称。

不支持修改。

必须从第三方系统同步。
机构别名机构的显示别名

可从第三方系统同步,若无则自动采用机构名称作为机构别名。

机构描述机构的描述内容

可从第三方系统同步,若无则为空。

父机构Smartbi系统中,机构以机构树的形式存在,因此机构具有“父机构”属性

必须从第三方系统同步,支持机构ID或名称。

若父机构数据为机构名称,系统将基于机构名称构建组织机构树。当第三方系统中存在同名机构时,机构树将无法精准构建。

若父机构数据为机构ID,系统将基于机构ID构建组织机构树。由于机构ID为机构在系统中的唯一ID,因此可以保证机构树构建的精确性。

机构状态

额外增加的属性,用于将机构进行逻辑删除处理,值为0 、1 或 NULL。


若机构在第三方系统中被删除,需要在Smartbi进行逻辑删除,需同步状态为0。

逻辑删除功能可参考:用户同步new

2)角色属性

属性属性说明必须同步同步逻辑
角色ID角色在系统中的唯一ID。

支持从从第三方系统同步,若无则可由系统生成唯一ID。

角色名称

角色的名称。

不支持修改。

必须从第三方系统同步。
角色别名角色别名

可从第三方系统同步,若无则自动采用角色名称作为角色别名。

角色描述角色的描述内容

可从第三方系统同步,若无则为空。

角色所属机构

Smartbi系统中,角色是存储于机构树上的某个机构下的,因此需要为角色指定其所属机构。

必须从第三方系统同步,支持机构ID和名称。

若角色所属机构数据为机构名称,当第三方系统中存在同名机构时,角色将无法存放到正确的机构下。

若角色所属机构数据为机构ID,由于机构ID为机构在系统中的唯一标识,因此可以保证角色存放到正确的机构下。

角色状态

额外增加的属性,用于将角色进行逻辑删除处理。值为0 、1 或 NULL。


机构在第三方系统中被删除,需要在Smartbi进行逻辑删除,需同步状态为0

逻辑删除功能可参考:用户同步new

3)用户属性

属性属性说明是否必须同步同步逻辑
用户ID用户在系统中的唯一ID。

建议同步第三方系统中用户的唯一标识作为用户ID,若无则可由系统生成唯一ID。

用户名称

用户名称,即登录账号。

不支持修改。

必须从第三方系统同步用户的登录账号作为用户名称。
用户别名用户别名

可从第三方系统同步,若无则自动采用用户名称作为用户别名。

密码用户的登录密码

支持从第三方同步密码,若无则可统一设置初始密码。

用户描述用户的描述内容

可从第三方系统同步,若无则为空。

手机用户的手机号码
可从第三方系统同步,若无则为空。
邮箱用户的邮箱地址
可从第三方系统同步,若无则为空。
是否强制修改密码

设置用户首次登录时是否强制修改密码。数据值为0或1:

0:不强制修改密码

1:强制修改密码

必须从第三方系统同步,设置用户首次在Smartbi系统中登录是否强制修改密码。
启用用户

设置用户数是否启动。数据值为0或1:

0:不启用用户

1:启用用户

必须从第三方系统同步,设置用户是否在Smartbi系统中启用。
用户默认所属机构

用户的默认所属机构。

在Smartbi用户管理体系中,用户可同时属于多个机构,但必须指定其中1个机构作为用户的默认所属机构。


必须从第三方系统同步,支持机构ID和名称。

若用户默认所属机构数据为机构名称,当第三方系统中存在同名机构时,用户将无法存放到正确的机构下。

若用户默认所属机构数据为机构ID,由于机构ID为机构在系统中的唯一标识,因此可以保证用户存放到正确的机构下。

用户所属机构列表用户若同时属于多个机构,则应存在对应的“用户所属机构列表”数据。

1)支持从第三方系统同步,支持机构ID列表和机构名称列表。

若用户所属机构列表数据为机构名称,当第三方系统中存在同名机构时,用户将无法存放到正确的机构下。

若用户所属机构列表数据为机构ID,由于机构ID为机构在系统中的唯一标识,因此可以保证用户存放到正确的机构下。

2)同步数据按照 "机构1ID,机构2ID,机构3ID,...”格式,其中分隔符支持英文分号(;)、英文逗号(,)、#、@、$、&六种符号。

3)若不从第三方系统同步,则需在Smartbi中手工进行用户所属机构的维护。

用户角色列表用户拥有的角色列表

1)支持从第三方系统同步,支持角色ID和角色名称。

同步数据按照"角色1ID,角色2ID,角色3ID,...”格式,其中分隔符支持英文分号(;)、英文逗号(,)、#、@、$、&六种符号。

2)若不从第三方系统同步,则需在Smartbi中手工进行用户角色的维护。

三、用户同步功能

了解完Smartbi系统中的三大关键对象的属性及其同步逻辑后,需要先了解用户同步功能。

1、功能入口

1)进入 运维设置,点击导航栏的 用户同步 菜单  或 点击系统快捷菜单 用户/机构/角色同步 ,打开用户同步模块

注意

使用用户同步功能,前提是具备“计划任务”、“用户同步”的操作权限,因此需要为用户授予对应的操作权限。详情可参考:操作权限


2)点击  新建用户同步计划 ,进入用户同步计划的配置界面

2、界面及功能说明

用户同步计划包含5个步骤,分别是:机构同步、角色同步、用户同步、机构角色同步 和 执行计划。

1)机构同步/角色同步/用户同步/机构角色同步 步骤

前4个步骤分别进行机构、角色、用户、机构角色关系的同步配置。具体操作为:从系统中选择一个数据模型(该数据模型从第三方系统中获取机构/用户等数据),并将数据模型中的字段与机构/用户等属性进行映射。如下


各步骤中,其他特殊设置项说明如下

步骤特殊设置项说明
机构同步

顶级机构

1)同步的机构树需选择Smartbi系统的现有机构作为其根节点,通常选择“根组”。如下

2)同步的机构数据中,若机构的父机构数据为空,则该机构将被同步到“顶级机构”下。

用户同步

密码


用户的密码属性支持“绑定字段”和“使用固定密码”两种选项。

1、绑定字段:即选择数据模型中的字段,将第三方系统的密码数据同步到用户的密码属性中。绑定的字段数据支持明文密码和加密密码。

1)明文密码:即第三方系统的密码数据为明文。支持选择密码在Smartbi中的加密方式(MD5、DES或明文)。Smartbi会根据加密方式对密码进行加密存储。

2)加密密码:即第三方系统的密码数据为加密后的密文。若第三方系统密码的加密算法与Smartbi中的加密算法一致,则可以直接同步到Smartbi系统中,并选择密码的加密方式。Smartbi同步时会根据所选择的“密码加密方式”,在密码的密文前增加前缀(MD5加密则前缀为0,DES加密则前缀为1,明文则前缀为2)后存储在Smartbi中。


2、使用固定密码:为同步的所有用户设定一个固定密码,并选择密码加密方式。Smartbi会根据加密方式对密码进行加密存储。

更新用户时同步密码

同步密码:用户同步时,若用户已在Smartbi系统中存在,则更新用户时会使用第三方数据中的密码覆盖Smartbi系统中的密码适用于用户密码在第三方系统中修改维护的场景。

不同步密码:同步用户时,若用户已在Smartbi系统中存在,则只更新用户的用户别名、用户描述等属性,不更新用户的密码。适用于用户需要在Smartbi中单独修改密码的场景。

删除用户已有角色

是:同步用户数据时,先删除用户现有的所有角色列表,再同步用户角色列表。

否:同步用户数据时,不删除用户现有的所有角色列表,直接新增角色进入用户的角色列表。

扩展属性若用户配置了扩展属性,扩展属性也支持同步。
机构角色同步

机构角色字段绑定

在Smartbi系统中,支持为机构分配角色,且可勾选“应用于子孙组”,则该机构及其所有子孙机构,都拥有对应的角色。

因此对于机构所拥有的角色列表,也支持进行同步。

1)机构:绑定机构数据字段,支持机构ID和机构名称。

若机构数据为机构名称,当第三方系统中存在同名机构时,角色无法保证准确分配到对应机构上。

若机构数据为机构ID,由于机构ID为机构在系统中的唯一标识,因此可以保证角色分配到正确的机构下。

2)角色:绑定角色数据字段,支持角色ID和名称

3)是否应用于子孙组:设置角色是否应用于机构的子孙机构。值为0和1。

0:不应用于机构的子孙组

1:应用于机构的子孙组

4)同步逻辑
同步时,会将同步数据中对应的机构在Smartbi系统中现有的角色全部删除,再同步新的角色数据到Smartbi系统中。


2)执行计划 步骤

最后1个步骤“执行计划”,进行用户同步计划的定时执行等设置

设置项说明如下:

设置项说明

无归属管理机构

无归属管理机构主要用于对机构、角色的逻辑删除处理。

1)需要指定1个Smartbi系统现存的机构作为无归属管理机构。

2)同步过程中,状态为0的机构和角色,会被自动移动到无归属管理机构下。用户可在同步完成后,访问“用户管理“模块”,对无归属管理机构下的机构、角色进行物理删除等处理。

用户同步计划名称用户同步计划的名称
用户同步执行计划

用户同步计划的执行设置,支持设置用户同步计划定时执行、启用/禁用用户同步计划。
点击打开设置界面,如下

该界面与“计划”功能一致,详情可参考:新建计划


3、整体同步逻辑

机构同步逻辑:同步时,若机构在Smartbi中不存在,则新增;若存在,则更新机构。若机构状态为0,同时将机构移动到无归属管理机构下。

角色同步逻辑:同步时,若角色在Smartbi中不存在,则新增;若存在,则更新角色。若角色状态为0,同时将角色移动到无归属管理机构下。

用户同步逻辑:同步时,若用户在Smartbi中不存在,则新增;若存在,则更新用户。

机构角色同步逻辑:同步时,先将同步数据中对应的机构在Smartbi系统中现有的角色列表全部删除,再同步数据到Smartbi系统中。

注意

注意:删除机构的角色列表数据时,不会删除机构从其父级机构集成的角色。

四、实施用户同步

步骤1:明确同步需求

通常第三方系统都拥有自己的组织机构树及用户数据,因此推荐同步机构、用户数据,有利于对机构、用户的统一管理。

而角色是权限的载体,第三方系统与Smartbi系统的权限体系通常相差较大,因此不推荐进行角色的同步。

内容

是否推荐同步

机构
角色
用户
机构角色

步骤2:属性映射配置

在明确同步需求后,需要确认机构、用户属性与第三方系统数据的字段映射关系。可下载附件的execl表格,确定映射字段并进行填写。附件:机构用户与第三方系统数据映射表.xlsx

以下为填写示例:

步骤3:创建数据模型

确定好同步内容和字段映射后,在Smartbi系统中创建数据模型,通过数据源表或者SQL等方式,从第三方系统中获取机构、用户数据和字段。

数据模型功能参考:查询并准备数据

步骤4:创建用户同步计划

用户同步计划的前4个步骤:机构同步、角色同步、用户同步、机构角色同步为可选步骤,至少选择1个步骤进行配置即可。

当存在多个同步对象时,因为对象之间存在依赖关系:角色、用户数据依赖机构;用户数据依赖角色;机构角色列表依赖机构和角色。因此推荐按照机构、角色、用户、机构角色的顺序分别创建用户同步计划,且同步计划的执行时间间隔半小时以上,保证被依赖的数据同步完成后再进行后续数据的同步。

步骤5:验证

按照设定的执行时间,系统会自动执行同步计划。可通过以下方式查看执行结果

1)进入“计划任务”-“计划调度日志”中搜索同步计划名称,查看调度日志

2)进入“用户管理”,查看最新的机构信息


三、用户同步计划管理

用户同步计划的管理参考:用户同步计划管理



  • 无标签