如何检查某个用户是否具有某个权限对象上定义的某种权限

比如下图这个ABAP development studi里创建的角色是为了实现CDS view DEMO_CDS_AUTH_LIT_PFCG的权限控制,里面使用到了权限对象S_CARRID.

在临夏等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供做网站、成都网站设计 网站设计制作定制开发,公司网站建设,企业网站建设,高端网站设计,营销型网站建设,外贸网站制作,临夏网站建设费用合理。

假设现在我有一个需求:我想知道用户名WANGJER是否具有该权限对象的字段s_carrid的显示(03)权限?

如何检查某个用户是否具有某个权限对象上定义的某种权限
如何检查某个用户是否具有某个权限对象上定义的某种权限

在事务码SU01里,我只能查看WANGJER这个用户到底被赋予了哪些PFCG角色。权限对象不是直接分配给用户的,而是通过PFCG角色作为一个中间层。

如何检查某个用户是否具有某个权限对象上定义的某种权限

可以通过查表AGR_USERS得到一个指定的用户分配了哪些PFCG角色。

如何检查某个用户是否具有某个权限对象上定义的某种权限

所以题目开头的需求就转化为这个问题:哪个PFCG角色分配了权限对象S_CARRID?

使用事务码SUIM根据权限对象查询PFCG角色:

如何检查某个用户是否具有某个权限对象上定义的某种权限

下列14个PFCG角色都分配了权限对象S_CARRID:

如何检查某个用户是否具有某个权限对象上定义的某种权限

选择其中一个双击,比如SAP_QAP_DEVELOPER:

如何检查某个用户是否具有某个权限对象上定义的某种权限
如何检查某个用户是否具有某个权限对象上定义的某种权限

上图意味着如果一个用户被分配了PFCG角色SAP_QAP_DEVELOPER,这个用户就拥有了权限对象S_CARRID上定义的Create,Change和Display的权限:

如何检查某个用户是否具有某个权限对象上定义的某种权限

要获取更多Jerry的原创技术文章,请关注公众号"汪子熙"或者扫描下面二维码:

如何检查某个用户是否具有某个权限对象上定义的某种权限
如何检查某个用户是否具有某个权限对象上定义的某种权限

名称栏目:如何检查某个用户是否具有某个权限对象上定义的某种权限
文章出自:http://ybzwz.com/article/gesjjh.html