节省SAP License的解决之道

背景介绍:

广州XXX公司是一家从事日用品生产的专业化公司。目前采购了我们公司的EKP系统、SAP系统和IBM的BW(数据仓库)系统,由于SAP的License比较昂贵,为了节省License,客户希望从EKP登录SAP之后,所有的用户使用同一个SAP帐号,而该用户能访问哪些报表或数据的权限信息在EKP中进行维护和管理。

节省SAP License的解决之道 图1

它们之间的逻辑关系如下:

EKP -> BW -> SAP

BW负责从SAP基础数据库中抽取数据并生成报表

EKP负责从BW中抓取客户需要的报表并展现出来

关键问题:

要解决以上问题,有两个关键技术点需要解决:

  1. EKP跟SAP之间的单点登录
  2. 由于访问BW报表是通过URL带参数的方式来传递的,所以必须保证权限参数不被泄漏出去

解决方案(一):

  1. 单点登录

对于单点登录,由于SAP支持Form认证,所以该功能很容易就实现了。实现的代码样例如下:(注意下表中的红色字体)

  1. 参数安全

A、方案一

由于我第一次去XXX公司,不认识IBM的顾问,也不知道IBM还有个项目团队在XXX公司,更不认识IBM的项目经理,在IBM项目经理缺席的情况下,我们三方初步确定了以下方案:

  1. EKP开发一套权限管理,用户能访问哪些报表由权限管理来控制。

2.用户登录EKP之后立即登录SAP,获取单点登录需要的Session。

3.当用户点击报表时,EKP将该报表需要的权限参数加密,也就是说将上表中的&VARIABLE_SCREEN=X&DUMMY=6加密成串,然后将该加密串送给BW。

  1. BW开发一个专门用来解密权限参数的接收页面,根据解密后的结果BW负责Open相关的报表。

方案确定后,我们公司方开始技术预研并通过了测试。但是,IBM方项目经理来了之后否决了该方案,原因是在XXX公司的IBM项目团队中没有懂JAVA开发的人员,他也很难申请到JAVA开发人员来支持,在他的强烈要求下,我们采取了第二种方案。

B、方案二

1.EKP开发一套权限管理,用户能访问哪些报表由权限管理来控制。

2.用户登录EKP之后立即登录SAP,获取单点登录需要的Session。

3.当用户点击报表时,EKP将该报表需要的权限参数取出来,后台提交给一个公共页面,该页面内嵌BW的报表页面,它的唯一作用就是隐藏参数,保证参数不被泄漏。

4.同时为了降低风险,将EKP用户的权限限制在一个可控的范围之内,EKP还需要开发一套帐号映射管理,它是用来控制EKP用户进入SAP时是用哪个身份登录的,多个EKP帐号映射一个SAP帐号,这样,在BW中,BW可以将不同的SAP用户限制在不同的报表上。

方案确定后,我们公司方调整了技术方案并通过了测试。

企业上SAP软件为何选择赛锐信息作为实施商?

1、致力于SAP ERP系统应用的服务商;

2、已为国内200多家SAP系统客户的ERP信息化建设提供了咨询及实施服务;

3、拥有完善的产品策划、研发、实验、测试、质量控制过程;

4、公司自主研发的AMS系列软件产品是国内首个用于SAP权限风险识别的增强系统;

5、为用户管理、风险规避和信息审计提供辅助工具;

6、帮助用户规范企业的管理行为,建立合规的管控流程,有效提高企业IT资产投资回报率;

7、技术指标上拥有完全的、独立的领先优势,可以满足市场竞争、技术许可和标准制定等方面的需要;

相关文章

联系我们

联系我们

130-0752-1773

在线咨询:点击这里给我发消息

邮件:info@sapzx.com

工作时间:周一至周五9:00-18:00,节假日正常休息

关注微信
关注微信
分享本页
返回顶部