如何实现内部产品权限集成

2023-12-29 09:33:20

当前我国各领域正在加速向数字化、移动化、智能化发展,大力投入信息化建设与数字化转型已成为企业的共识,而企业门户系统是企业信息化系统建设是一个重要支撑,以企业业务系统为基础,搭建门户系统作为统一入口和应用中心可以有效支撑系统整合,打造一体化信息整合平台。

本篇文档是对于内部产品权限集成的整体实现介绍,其中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后续思路

通过开发配置的过程对实现方式进行了总结梳理,在进行实际项目的开发和配置时要结合业务场景,在使用过程中加深产品了解同时深化业务理解,出现问题时要及时的沟通交互,及时反馈处理问题。
在实际项目中需要更多的去参与到实际的业务,通过业务场景发现自身的不足,同时在使用产品实现场景的过程中发现产品的不足,通过项目打磨自己完善产品,同时更多的积累项目经验,为后续工作打下良好的基础。

文章来源:https://blog.csdn.net/aeaiesb/article/details/135267779
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。