权限相关代码-表

常规权限检查

复制代码
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 | 角色维护 |

相关推荐
程序员夏洛7 分钟前
MySQL 中 count(*)、count(1) 和 count(字段名) 有什么区别?
数据库·mysql
Wang's Blog38 分钟前
PostgreSQL笔记34:索引优化策略全景解析——从B-tree到HOT的核心原理与实践
数据库·笔记·postgresql
l1258651 小时前
# RAG向量数据库优化实战:HNSW索引调参与生产级性能设计
数据库·python·mysql·langchain
梦Arrebol1 小时前
Mysql内容及相关实验
数据库·mysql
OceanWaves19932 小时前
mysql 8.0.32 磁盘爆满,清理从库日志
数据库·mysql
凤山老林2 小时前
数据库读写分离与动态路由实战:Spring Boot + ShardingSphere-JDBC 生产配置
数据库·spring boot·后端·分库分表·sharding-jdbc
l1258653 小时前
# RAG噪声知识库治理:一致性与可信度的四层防线设计
数据库·人工智能·python·自然语言处理·langchain
聚美智数4 小时前
图片水印-图片剪裁-图片缩放API接口介绍
java·服务器·数据库
JavaPub-rodert4 小时前
Go 后台如何同时兼容 MySQL、PostgreSQL、SQLite 和 SQL Server?从 ShiyuAdmin 看 GORM 多数据库适配
数据库·mysql·postgresql·golang·javapub·王仕宇
瀚高PG实验室4 小时前
SQL优化案例:存储过程、复杂SQL拆成简单SQL提升整体性能
数据库·sql·postgresql·瀚高数据库