当前我国各领域正在加速向数字化、移动化、智能化发展,大力投入信息化建设与数字化转型已成为企业的共识,而企业门户系统是企业信息化系统建设是一个重要支撑,以企业业务系统为基础,搭建门户系统作为统一入口和应用中心可以有效支撑系统整合,打造一体化信息整合平台。
本篇文档是对于内部产品权限集成的整体实现介绍,其中IDM身份管理系统作为组织、用户以及角色数据的数据源头,而ESB则是主要用来构建IDM与Portal的集成通道进行数据的集成,最终将数据同步到Portal,通过视图共享到其他系统。
1总体说明
总体说明主要包括对于整体的业务需求、管理流程以及内部系统的集成架构等进行介绍。
1.1业务需求
本次关于内部系统的权限集成基于实际业务需求,需要将IDM系统的组织、用户以及角色数据信息同步到Portal当中,其他系统(MDM、ESB、DAP)采用Portal的视图获取组织、用户数据,而其他系统的使用权限在系统内部进行配置,从而完成内部系统权限的集成。
1.2集成架构
整体的集成架构以IDM结合ESB为主,数据同步到Portal后其他系统通过视图的方式获取对应数据,并在系统内部进行各系统使用权限的配置,具体如下:
1.IDM进行组织、账号、角色数据的统一维护,提供组织、账号数据;
2.由IDM调用ESB流程同步组织、账号、角色数据到Portal进行统一管理
3.MDM主数据平台通过视图的方式获取到数据并进行内部权限的配置;
4.DAP数据分析平台通过视图的方式获取到数据并进行内部权限的配置;
5.ESB应用集成平台通过视图的方式获取到数据并进行内部权限的配置。
1.3管理流程
整体的管理流程主要是IDM提供组织、账号以及角色数据,之后IDM通过生成任务的方式分发到Portal中进行统一的管理,具体如下:
1.IDM提供组织、用户以及角色数据;
2.由IDM通过生成任务的方式同步数据到Portal;
3.在Portal中对于组织、用户以及角色数据进行统一管理,包括新增、编辑、修改、删除以及对于账号的启用、禁用等;
4.其他系统视图的方式获取到数据进行使用。
2实现方式
在本章中将对于内部系统权限集成的具体实现方式进行详细的介绍,具体将分为管理流程、实现思路以及过程梳理三个方面进行展开说明。
2.1实现思路
在上文已经对本次工作的需求做出了阐述,在拿到需求之后,先整理出大体的实现思路,有了一个大体的实现思路之后,再根据实现思路进行更为具体的实现过程的设计,本次开发工作的大体实现思路如下:
1.对于各产品的数据库调整;
2.对于各产品的调整配置;
3.集成流程开发(IDM同步数据到Portal);
4.调用流程进行数据的同步;
5.同步数据后各产品内部权限的配置;
6.最后进行登录测试;
2.2过程梳理
在此将根据从需求整理出的大概实现思路进行更为具体的设计,对于开发过程进行整体概述。本次的开发主要内容整体如下:
1.数据库配置:各产品删除原有的组织、用户以及角色相关的数据表(权限相关的关联表保留)并创建视图引用Portal的数据;
2.产品配置:
(1)在IDM中创建BPM分发流程;
(2)在各产品(MDM、DAP、ESB)全局变量的统一用户配置中修改对应配置;
3.集成流程:包括IDM组织、用户集成Portal流程与IDM角色集成Portal流程;
4.调用流程:包括调用IDM组织、用户集成Portal流程与IDM角色集成Portal流程进行数据同步;
5.产品权限配置:产品的使用权限在内部进行配置;
6.登录测试:登录已经配置好内部权限的账号进行测试。
2.3关键要点
在此对于本次开发过程中需要注意的关键要点进行详细的介绍,具体如下:
1.数据库配置:
(1)删除表时权限关联相关的表不需要删除;
(2)各产品删除原有数据表后需要按照之前删除的表名命名视图;
(3)创建视图时需要将“定义者”定义出来;
2.产品配置:在各产品(MDM、DAP、ESB)全局变量的统一用户配置中修改对应配置。
3具体实现
通过上文已经对于整体的实现步骤进行了相应的梳理,下面对于内部系统权限集成的具体实现过程进行详细地介绍。
3.1前置配置
在正式开发前需要进行一些前置的配置,下面分为数据库配置、产品配置两方面进行介绍:
各产品的配置方式基本一致,下面以DAP产品为例进行介绍。
1.数据库配置
首先需要删除组织、用户以及角色的相关数据表,具体如下:
删除表后通过创建视图的方式让当前系统采用Portal的数据。
创建视图时按照删除表的字段进行视图的创建,下面以组织表视图为例进行介绍。
2.产品配置
配置完数据库后需要进行产品的配置,配置产品的全局变量,具体如下:
3.2BPM流程
在IDM的BPM分发工作流,具体流程如下:
具体调用节点配置如下:
1.获取IDM的tokenId;
2.创建分发日志;
3.调用统一分发接口;
4.修改任务状态。
之后进行BPM发布和重新加载。
3.3流程开发
流程清单如下:
1.IDM组织人员分发Portal流程。
在设计器中通过配置完成的集成流程创建HTTP流程,并完成功能开发,具体如图:
具体节点如下:
(1)获取入参的任务ID;
(2)获取IDM的tokenId;
(3)调用IDM接口获取组织、账号数据;
(4)将数据进行解析(把组织数据、账号数据、账号与组织的关联数据分别放在不同的变量当中);
(5)调用portal的tokenId;
(6)调用portal组织账号同步接口同步数据;
(7)获取分发日志数据,调用IDM分发日志回写接口;
(8)写入ESB集成日志。
2.IDM组织角色分发Portal流程
在设计器中通过配置完成的集成流程创建HTTP流程,并完成功能开发,具体如图:
具体节点如下:
(1)获取入参的任务ID;
(2)获取IDM的tokenId;
(3)调用IDM接口获取角色数据;
(4)将数据进行解析(把角色数据、角色的关联数据分别放在不同的变量当中);
(5)调用portal的tokenId;
(6)调用portal角色同步接口同步数据;
(7)获取分发日志数据,调用IDM分发日志回写接口;
(8)写入ESB集成日志。
4数据分发
完成上述配置之后,便可进行数据的分发测试,在本章节中,将对组织分发、用户分发、角色分发以及登录测试进行详细介绍。
4.1组织分发
首先,进行需要分发组织的分发范围配置。
在IDM的基础管理的组织管理功能中选择对应的应用系统,选中对应分发的组织,选择分发。
选择对应BPM流程后,进行保存提交。
提交以后,查看Portal系统,查看组织是否同步成功。
可以看到组织已经同步Portal。
之后登录其他产品(以DAP为例),查看数据。
可以看到该产品已获取到Portal组织数据。
4.2账号分发
在IDM的基础管理的用户管理功能中选择对应的应用系统,选中对应分发的组织,选择分发:
选择对应BPM流程后,进行保存提交。
提交以后,查看Portal系统,查看账号是否同步成功。
可以看到账号已经同步Portal。
之后登录其他产品(以DAP为例),查看数据。
可以看到该产品已经获取到Portal用户数据。
4.3角色分发
在IDM的统一权限的角色管理功能中选择对应的应用系统,选中对应分发的角色,选择分发。
选择对应BPM流程后,进行保存提交。
提交以后,查看Portal系统,查看角色是否同步成功。
可以看到角色已经同步Portal。
之后登录其他产品(以DAP为例),查看数据。
可以看到该产品已经获取到Portal角色数据。
4.4登录测试
之后配置完产品的权限后可以进行登录测试。
首先登录Portal。
通过Portal跳转其他产品。
5总结说明
通过本次内部系统的权限集成开发,使自身有了一定的感悟和提升,现从过程总结、难点攻克以及后续思路几个方面进行总结。
5.1过程总结
本次内部系统的权限集成开发主要过程如下:
1.数据库配置:配置各产品的Portal视图;
2.产品配置:在IDM中进行分发BPM的流程配置,各产品配置全局变量;
3.流程开发:通过ESB注册服务、配置集成场景,在设计器中对于集成流程进行业务调整并调用测试;
4.配置产品内部权限:在产品内部配置对应账号的权限,之后进行登录测试。
5.2难点攻克
在本次工作的历练,让我的能力有了很大的提升,同时在配置的过程中也是遇到了一些难点,现从以下几点进行阐述。
1.数据库配置:
(1)各产品需要将原数据表删除,之后创建同名的Portal视图获取Portal数据。
(2)创建视图时需要配置定义者。
2.产品配置:各产品通过Portal视图获取数据的时候一定要配置对应的产品全局变量,才能保证在该产品使用Portal视图时直接编辑Portal数据。
5.3后续思路
通过开发配置的过程对实现方式进行了总结梳理,在进行实际项目的开发和配置时要结合业务场景,在使用过程中加深产品了解同时深化业务理解,出现问题时要及时的沟通交互,及时反馈处理问题。
在实际项目中需要更多的去参与到实际的业务,通过业务场景发现自身的不足,同时在使用产品实现场景的过程中发现产品的不足,通过项目打磨自己完善产品,同时更多的积累项目经验,为后续工作打下良好的基础。