PFCG 里那个容易被忽略的 Profile,Authorization Profiles 的设计逻辑和项目落地细节
在 SAP 项目里做权限排查时,经常会遇到一个很有意思的现象。业务顾问在 PFCG 里改了 Role 的授权值,开发同事也确认了 AUTHORITY-CHECK 逻辑没有问题,可是用户重新登录之后,权限表现还是老样子。有人开始怀疑缓存,有人开始怀疑 SU53,有人开始怀疑程序里是不是写死了检查逻辑。绕了一圈才发现,Role 里的 Authorization 改了,但对应的 Authorization Profile 还没有重新生成,User Master Record 也没有完成比较。这就是 Authorization Profiles 这个主题最容易被忽略的地方。很多人以为 Role 就等于用户实际拥有的权限,其实在经典 ABAP 权限体系里,Role 更像设计阶段的权限配置容器,而 Profile 才是被写入 User Master Record、最终参与运行时授权判定的重要载体。SAP 官方文档也把 Authorization Profile 定义为授权概念中的元素,Profile 包含授权信息,如果某个 Profile 被指定到用户主记录中,用户就获得该 Profile 定义的授权。(SAP Help Portal)Role 是设计蓝图,Profile 是真正