SAP的权限实现原理是什么?SAP系统权限的原理

SAP的权限实现原理是什么?SAP系统权限的原理

不管是SAP系统,还是其他信息系统、操作软件或APP,都有一定的权限设置。

在SAP系统中,用户拥有什么权限,是根据所分配的角色(Role)控制;那么在角色中,到底是什么来控制用户的操作权限呢?

今天这篇文章就带着大家,来看看SAP的权限实现原理。

一、角色:

角色定义:可将角色理解为权限的集合,基于业务需求创建后,将角色要分配给用户。一个角色一个参数文件,是真正记录权限设定的文件。角色分类:分为根角色(通用角色)、本地角色与派生角色。(1)根角色,一般不会分配给用户,主要确定事务代码;(2)本地角色继承根角色后,分配组织结构与其他权限对象;(3)若有复合角色,就是将多个本地角色集合成一个复合角色。

不同分类根据不同项目的需求设定,比如:

项目上线只有一家规模不大的公司,那么只需创建本地角色即可,不用根角色与复合角色;但若项目上线是有多家公司角色权限设计5张表,事务代码相同角色权限设计5张表,组织架构不同,那么可用根角色与本地角色,若想根据用户岗位分配角色,可多个角色分配一个复合角色,将复合角色分配用户。

二、权限对象:

在角色中真正起作用的是权限对象像素游戏素材,程序中会校验该用户对应角色中的权限对象值地图场景,是否满足要求。

权限对象分为2类:标准事务代码对应的标准权限对象,还有自开发事务代码对应的自开发权限对象。

标准权限对象:

在角色分配完事务代码之后,权限对象会根据事务代码带出,若无,需要SU22、SU24检查事务代码对应的权限对象是否检查。

最近S4项目遇到项目负责人默认不启用检查的,需要进入SU22和SU24维护为检查,缺省状态为是(如果选择否,表示运行程序时不检查此对象):

2. 自开发权限对象:

如下图自开发程序对应新增的权限对象,需要业务顾问在FS中标明需要什么样的权限对象控制什么按钮,权限字段值对应什么:

三、权限字段:

权限对象中的权限字段值来控制是能创建、更改、显示等操作,或者赋予其他值。

如下图项目经理赋值项目经理的人员编号,在输入CJ20N时,会校验该用户对应角色对应的PS_VERNR值,是否项目PROJ或PRPS的项目负责人:

角色编制完,最重要的是要测试,特别注意交叉问题:

如有不同角色创建相同的权限对象,赋值会取并集;

比如A角色负责人编号是0001,但B角色负责人编号是*,那么则负责人编号则为*,在赋予A、B角色的用户登陆CJ20N查看责任人不是自己的项目时,还能查看到。

文章来源:https://blog.csdn.net/Mcubic/article/details/108538907