权限相关代码-表

常规权限检查

复制代码
PARAMETERS carr TYPE spfli-carrid. 

AT SELECTION-SCREEN. 
  AUTHORITY-CHECK OBJECT 'S_CARRID' 
    ID 'CARRID' FIELD carr 
    ID 'ACTVT'  FIELD '03'. 

  IF sy-subrc <> 0. 
    MESSAGE 'No authorization' TYPE 'E'. 
  ENDIF. 

|----------|--------------------------------------------------------------------------|
| sy-subrc | Meaning |
| 0 | 授权成功或未进行检查。在用户主数据记录中找到了该授权对象的授权。其值集包含指定的值。 |
| 4 | 授权检查未成功。在用户主数据记录中找到了该授权对象的一个或多个授权,且这些授权包含值集,但未包含指定的值,或者指定了不正确的授权字段或字段过多。 |
| 12 | 在用户主数据记录中未找到该授权对象的授权。 |
| 24 | 此返回码已不再使用。 |
| 40 | 在用户中指定了无效的用户 ID。 |

FOR USER user

复制代码
AUTHORITY-CHECK OBJECT 'S_CARRID' FOR USER  SY-UNAME
         ID 'CARRID' FIELD '__________'
         ID 'ACTVT' FIELD '__________'.
IF sy-subrc <> 0.
* Implement a suitable exception handling here
ENDIF.

指定的授权对象列出至少一个且最多 10 个不同的授权字段

如果用户主数据记录中为该授权对象创建了一个或多个授权,并且对于其中至少一个授权,其使用 ID 指定的授权字段所定义的每个值集都包含待检查的值 val1 ... val10,则授权检查成功。未包含在语句中或其值被指定为 DUMMY 的授权字段将不进行检查。如果检查成功,sy-subrc 将被设置为 0。否则,它将被设置为一个不等于 0 的值

复制代码
AUTHORITY-CHECK OBJECT 'S_CARRID'
         ID 'CARRID' FIELD '__________'
         ID 'ACTVT' DUMMY.
IF sy-subrc <> 0.
* Implement a suitable exception handling here
ENDIF.

相关后台表

|-----------|-------------------|
| 表 | 表描述 |
| USER_ADDR | 依据地址数据的用户 |
| TOBJ | 权限对象表 |
| TACT | 可保护的活动(活动字段ACTVT) |
| TACTT | TACT的文本表 |
| TACTZ | 每个授权对象的有效作业 |
| AGR_1251 | 活动组的权限数据 |
| AGR_USERS | 分配角色到用户 |
| AGR_TEXTS | 用于层次菜单的文件结构-客户 |

相关事务码

|----------------|-----------------------------|
| 事务码 | 描述 |
| S_BCE_68001432 | 比较权限(可以比较用户,角色,参数文件,权限对象) |
| STAUTHTRACE | 权限跟踪(跟踪时间段、指定的用户) |
| SU02 | 维护权限参数文件(可以传输) |
| SU20 | 维护权限字段 |
| SU20_BTCH | 维护权限字段 |
| SU21 | 维护权限对象 |
| SU22/SU24 | 维护权限缺省值(非代码方式给函数,事务码关联权限对象) |
| SU22_OLD | 事务中权限对象的用法 |
| SU53 | 评估权限检查(可以捕获缺失的权限) |
| PFCG | 角色维护 |

相关推荐
天桥下的卖艺者3 小时前
使用scitable包,两步生成逆概率删失权重(IPCW)
数据库·r语言
隔窗听雨眠3 小时前
AI原生数据库浪潮:国产数据库的架构重构与路径之争
数据库
数据库小学妹3 小时前
数据库选型实战:从数据类型到TCO成本,五维决策框架+九款产品横评
数据库·信创·国产数据库·数据库选型·oracle迁移
神龙天舞20014 小时前
MySQL 备库为什么会延迟好几个小时
android·数据库·mysql
丙氨酸長鏈6 小时前
Web前端入门第 问:JavaScript 一个简单的 IndexedDB 数据库入门示例
前端·javascript·数据库
独行侠影a6 小时前
APScheduler+Redis 分布式定时任务:解决多实例任务重复执行
数据库·redis·分布式
传说故事7 小时前
数据库中一些常用英文单词含义
数据库·oracle
夏贰四7 小时前
中小企业搭建业务中台如何控成本?业务中台轻量化落地分几步实施?
数据库·业务中台
林焱RPA8 小时前
影刀RPA200篇纪念版:最实用的20个自动化场景大盘点
数据库
名字还没想好☜8 小时前
Go 的 time.After 在 select 循环里内存泄漏:定时器堆积原理与 timer.Reset 正确姿势
java·数据库·golang·go·goroutine