【学习系列】SAP RAP 8:行为定义-Authorization Control

前言

前一篇中介绍了关于行为定义中草稿的概念,本篇将介绍授权控制的概念和实现方式,授权控制主要控制用户对数据或者功能的操作权限,确保用户只能对自己有权限的数据进行访问或者操作。


正文

权限检查一般用于两种场景:读取操作和修改操作。

  • 读取操作(Authorization Checks for Read Operations):通过ABAP CDS的数据控制语言(DCL)实现,利用CDS访问控制对象(Access Control Objects)限制用户对数据的可见范围。
  • 修改操作(Authorization Checks for Modify Operations):通过在行为定义中调用权限对象检查,用来控制标准操作或者自定义操作是否有权限,其中又分为 Global Authorization全局授权 和 Instance Authorization实例授权 以及 
一文吃透 ABAP RESTful Application Programming Model(RAP):从数据建模与行为,到业务服务暴露,再到服务消费 本文介绍了SAP ABAP统一编程模型RAP的核心架构与实践方法,通过构建完整的ZTRAVEL和ZBOOKING业务对象,演示了从数据建模、行为定义到服务暴露的全流程。文章详细说明了RAP三层架构(数据与行为层、服务提供层、服务消费层)的实现方式,包括CDS视图实体定义、行为定义(BDEF)中的事务能力声明、投影与服务绑定等关键步骤。特别强调了ABAP Cloud环境下的开发限制和最佳实践,如使用GUID和late numbering机制,以及如何通过EML语言操作业务对象。最后提供了完整的代码示例,展示了 阅读详情

相关推荐

从 SU21 到 AUTHORITY-CHECK,Authorization Object 和 Authorization Field 的 ABAP 权限建模思路

SAP授权体系的核心是授权对象(Authorization Object)和授权字段(Authorization Field)。授权对象作为权限模板,将多个业务维度的授权字段组合在一起(最多10个),形成可维护和检查的权限边界。真正的权限是授权对象的实例化,通过PFCG角色维护具体字段值来实现。设计时应优先复用标准授权字段(如BUKRS、WERKS等),控制字段数量仅保留必要的业务边界,并将授权对象归类到适当的对象类(Object Class)中。命名需简洁且体现业务语义,注意使用客户命名空间。这种设计既确

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 1645

SAP Authorization Profile 手工维护实战,为什么能做但不该滥用

SAP系统中手工维护Authorization Profile是一项虽老但仍有使用场景的功能,主要用于历史遗留系统和特殊排障。该功能允许直接编辑底层授权集合,绕过了现代PFCG角色管理机制,导致权限可解释性和可追溯性变弱。SAP官方建议优先使用PFCG工具维护角色,手工维护需谨慎处理标准Profile,应复制到客户命名空间后再修改以避免升级冲突。关键注意事项包括:区分Simple和Composite Profile类型、遵循自定义命名规范、理解授权对象检查机制,并确保修改内容可审计。手工维护虽可作为应急手段

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 3948

把宠辱若惊写进 SAP RAP 行为模型,得失之间仍守住业务对象的分寸

我在看 SAP ABAP RESTful Application Programming Model 的时候,经常会想到《道德经》这一句,「宠为下,得之若惊,失之若惊,是谓宠辱若惊」。这句话不是劝人麻木,也不是劝人什么都不争,而是在提醒人,凡是把外来的宠爱、评价、授权、便利当成安身立命之处,心就会被得失牵着走。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 1072

用 RAP 让 UI 自己长出来:Back End-Driven UI Features 的落地指南

摘要: SAP Fiori应用开发中,业务逻辑常被UI规则细节拖累,如字段状态、刷新逻辑等。RAP(ABAP RESTful编程模型)通过后端元数据驱动UI行为,减少前端代码量,提升一致性。核心优势包括: 标准化UI:Fiori Elements自动生成统一界面,减少手写代码 全栈闭环:CDS注解+行为定义同时控制服务和UI逻辑 高效验证:FEAP预览功能可早期验证模型和交互设计 关键实现方式: 注解驱动布局(列表/对象页结构) 动态特性控制(字段必填/只读逻辑) 行为实现类管理交互规则(如状态相关禁用)

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 2167

当美与善变成执念,RAP 开发就开始偏离业务之道

文章摘要: 老子"美之为美"的智慧在SAP RAP开发中尤为深刻。RAP框架虽结构清晰,但过度追求形式化反而会遮蔽业务本质。开发中常见三个误区:1)将managed模式绝对化,忽视unmanaged对既有业务逻辑的兼容价值;2)滥用validation进行过度控制,而非合理分配校验规则;3)用权限管控替代业务状态管理。真正优秀的RAP实现应保持技术框架与业务需求的动态平衡,避免将任何单一模式神圣化。老子的智慧提醒我们:当某种开发方式被奉为唯一"最佳实践"时,其局限性就

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 1万+

渊兮而不满,RAP 业务对象如何在深处安顿复杂性

SAP RAP应用开发的真正挑战在于业务对象建模与工程规范。老子"挫其锐,解其纷"的哲学思想恰能指导RAP开发:通过行为定义(BDEF)将业务逻辑结构化,以根对象为核心建立稳定秩序,将复杂功能分解为validation、determination等独立模块。RAP强调声明式设计,通过composition树状层级管理对象关系,利用strict语法和projection机制控制功能暴露范围,使系统既保持灵活性又避免过度自由带来的维护问题。这种"渊兮"的设计理念让业务对象

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 4159

用 Projection Behavior Definition 把 RAP 业务对象变成真正可交付的服务契约

摘要: SAP RAP中的Projection Behavior Definition(投影行为定义)是关键的服务暴露层,负责将底层业务对象(BO)的能力按需开放给不同服务消费者。它通过use语法复用底层BO的标准操作(CRUD)、actions、functions等,并可重命名对外接口。核心功能包括:控制ETag并发检查、筛选可用的操作(如只读/可编辑服务)、暴露特定业务动作(如审批/计算)及组合创建权限(create_by_association)。不同于基础行为定义,投影层不实现逻辑,而是作为API契

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 1957

RAP 业务对象权限控制深入解析,从 Global Authorization 到 Instance Authorization

在SAP RAP中,权限控制嵌入业务对象行为层,通过Global与Instance Authorization实现细粒度安全。Global Authorization基于用户角色判断操作资格(如创建),不依赖实例数据;Instance Authorization则结合实例字段(如CompanyCode)进行动态校验(如审批)。authorization master定义权限入口,支持继承机制,使Header/Item等实体共享授权逻辑,避免重复。权限决策由Behavior Pool中的方法执行,确保前后端一

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 18

太上不知有之,RAP 开发里让框架安静成事的治理之道

摘要:老子"太上,不知有之"的治理思想与SAP RAP开发理念高度契合。优秀的RAP应用应如水般自然融入业务流程,让用户感受不到框架存在,却能顺畅完成采购申请、差旅报销等业务操作。RAP通过分层设计(CDS视图、行为定义、服务暴露)将复杂性下沉,使业务规则通过注解、权限控制等机制自然生效,而非依赖前端硬编码。开发团队应避免将逻辑过度集中在行为池中,而应善用校验、特征控制等原生功能,让系统在不同业务阶段(草稿、正式保存、审批)自动适配相应规则。这种"无为而治"的架构设计

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 1786

从角色到授权对象,ABAP Authorization Concept 在项目里的真实落点

SAP ABAP 权限体系是一套基于正向授权的安全框架,核心包括用户、角色、授权对象和运行时检查。权限通过角色分配给用户,授权对象定义检查颗粒度,开发者需主动在代码中实现权限控制。权限设计应以业务岗位为导向,避免直接为用户配置零散授权。关键点包括:角色应反映业务能力而非事务码集合;授权对象是权限检查的核心单元;ABAP代码需显式处理权限逻辑;自定义SQL不会自动进行权限过滤。不当的权限设计可能导致用户操作受限或数据越权访问,需遵循最小授权原则,通过封装检查逻辑提高可维护性。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 3532

上善若水,写 SAP RAP 也要写出一套不争而成的业务对象

摘要: 《道德经》中「上善若水」的哲学思想与 SAP RAP 开发理念高度契合。RAP 框架倡导代码应如水般顺应业务需求流动,而非对抗系统架构。其核心在于:1) 业务对象建模需贴近实体本质,通过 CDS 模型和行为定义构建统一水系;2) Behavior Definition 如水利工程般划定业务边界,通过声明式语法规范事务流;3) 逻辑实现需各司其职,验证、决策与动作应如支流般分工明确。RAP 的价值正在于将传统 ABAP 开发中分散的事务逻辑,转化为符合云原生标准的标准化流程,实现「利万物而不争」的技术

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 856

RAP 授权控制全景指南:把谁能做什么,做到可追溯、可维护、可扩展

本文深入解析 SAP RAP 框架中的授权控制机制,重点阐述如何实现企业级应用的安全访问控制。文章从授权与特性控制的边界划分切入,系统介绍 RAP 的分层授权设计:读操作优先采用 ABAP CDS 的 DCL 实现行级过滤,写操作则通过 Behavior Implementation 的授权方法进行拦截。特别分析了 global 与 instance 两类授权的适用场景,指出授权方法只能基于 before image 的限制,并介绍 precheck 机制如何检查传入值。文章还涵盖 projection 层

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 2895

把 Feature Control 用到极致:RAP 场景下让 Fiori UI 该亮就亮、该灰就灰

文章摘要: ABAP RAP模型中的Feature Control是提升用户体验的关键能力,它通过后端业务规则动态控制UI元素(如按钮状态、字段属性)。分为静态(固定声明)和动态(基于实例状态计算)两种方式,支持字段级别(必填/只读)和操作级别(启用/禁用)控制。通过consumer hints机制,Fiori Elements自动呈现操作可行性,避免无效交互。示例展示了如何为状态为"BOOKED"的实例禁用特定action,体现状态驱动设计思想。该机制与授权结合,确保用户只能执行有效操

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 1019

贵其师,爱其资,老子这句话在 SAP RAP 开发里的真正落点

本文探讨了SAP ABAP RAP开发中的核心思想与实践经验。作者指出RAP框架通过CDS、Behavior Definition等对象建立了一套严密秩序,要求开发者从业务对象出发而非数据库表出发进行建模。文章以《道德经》"贵其师,爱其资"为喻,强调应尊重RAP框架的设计理念,同时重视开发过程中出现的各种问题案例。通过采购审批场景的实例分析,展示了如何将业务逻辑合理分配到Determination、Validation等不同语义容器中。最后指出旧系统中的"不完美"数据模型往往是业务真实需求的体现,值得在新系

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 643

RAP 里的 Action Definition:把非标准业务操作设计得又稳又快的工程化方法

SAP RAP模型中的Action功能是业务对象的核心扩展能力,它允许在标准CRUD操作之外定义特定业务语义(如审批、计算折扣等)。Action通过Behavior Definition声明契约,在Behavior Pool中实现逻辑,支持输入/输出参数建模,并能灵活控制对外暴露范围。关键特性包括参数默认值设置、结果多重性定义、选择性返回优化等,同时支持internal/static/repeatable等多种类型,满足不同业务场景需求。正确使用Action能有效提升业务流程的灵活性和系统性能,但需注意参数

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 4202

SAP 授权值维护实战,Authorization Object、字段取值、激活与 PFCG 治理

SAP权限排查的关键在于授权对象字段值的精确匹配,而非简单的角色分配。常见误区包括:忽视字段值集合对业务边界的决定性作用;混淆菜单授权与程序级权限控制;手工维护生成授权导致后续覆盖风险。正确做法应通过PFCG维护角色,确保授权字段值(单值/区间/通配符)与ABAP代码中的检查逻辑严格对应,特别注意ACTVT等关键字段的业务语义匹配。权限设计本质是定义精确的数据访问边界,需避免过度使用通配符导致的过授权风险。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 1324

从 Authorization Object 到 CDS 行级过滤,彻底理解 SAP BTP ABAP environment 的权限控制链路

在我们的 Sales App 里,最容易产生错觉的一件事,是应用能够正常运行、OData 服务能够访问、Fiori Elements 页面也能打开,于是便自然地认为权限控制已经差不多完成了。真正开始处理业务数据之后,这种想法很快就会遇到问题。销售应用中的订单通常会关联 Partner、Sales Organization、Company Code、Plant 一类组织或业务维度。两个员工即便都能打开同一个应用,也未必应该看到相同的数据。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 29

金玉满堂不可守,RAP 开发里的富贵病与持久之道

摘要:SAP RAP开发中常见误区是过度堆砌功能而非保持架构边界。文章指出,RAP的核心价值在于构建可治理的企业应用,而非将所有业务逻辑塞入单个业务对象。通过分析CDS视图分层、行为定义扩展和服务暴露等场景,强调应遵循"金玉满堂,莫之能守"原则,保持业务对象职责单一性。特别提醒要合理选择managed/unmanaged实现方式,避免将复杂逻辑过度集中在根实体,确保系统长期可维护性。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 1163

绕开华为通道,获取解锁码解锁BootLoader

刷机有风险,操作需谨慎,如果因为各种因素导致手机变砖无法开机,本教程概不负责,望悉知 前言 这篇文章的大多内容是根据我自己找的一篇文章《绕开华为通道,获取解锁码解锁BootLoader》来编写的,里面的大部分内容是文章的原内容。下面的都是我参考文章中做了一些小部分的修改,增加了我华为P8手机的一些操作,下面开始讲述我的解锁过程。 因为华为官方在2018年的七八月份吧,关闭了解锁码的申请通道,这...

Martin.Mu `s Special Column 5万+

红帽RHCE考试下午-RHCE (RH294)任务概览[2021最新版]

RH294任务概览 考试时间4个小时,6台虚拟机,15道题 原来通过脚本或者集群做的题现在都需要使用playbook实现 考试时大概有6台虚拟服务器,都已经做好了互相的免密 做题在ansible控制节点workstation做,但是需要去其他虚拟服务器进行验证 考试时需要将6台虚拟服务器在考试环境全部开启,物理机界面点击左侧按钮启动 考试时Ansible所有playbook都放在普通用户目录中且都以普通用户执行 注意:考试时一定注意要求将playbook放在哪个用户的家目录中,就需要用指定的户登录做题!

SunMy的博客 5604

树莓派5搭建ROS1开发环境:从系统安装到环境变量配置

本文详细指导如何在树莓派5上搭建ROS1开发环境。针对树莓派OS非标准安装路径导致的常见CMake报错问题,提供了从系统烧录、一键安装ROS到关键环境变量配置的完整解决方案,确保工作空间能成功编译,助力机器人项目开发。

weixin_29159127的博客 378

深度解析中国支付清算体系

说起国之重器,不仅仅有 东风快递、渔16、渔17、渔18,还有另外一个国之重器-CNAPS2(中国支付清算体系)。 中国国内支付行业的发达水平、繁荣程度,不客气的讲,在全世界都是数一数二的,世界上最大的银行卡组织银联在中国,世界上交易量最大的网络零售支付清算体网联在中国。可以说现在我国经济的高速发展,离不开CNAPS2。

银行信息系统应用架构详解 2485

AUTOSAR FEE 换页机制深度解析:从原理到实现逻辑

​​没有磨损均衡的EEPROM模拟,如同在沙地上建造城堡​​ ——AUTOSAR存储系统设计箴言

汽车电子软件领域知识分享 1327

Calibre提参实战:如何用hcell和xcell文件精准屏蔽模块(附避坑指南)

本文详细解析了Calibre提参过程中hcell和xcell文件的应用技巧,帮助工程师精准屏蔽模块以优化寄生参数提取。通过对比hcell与xcell的核心差异、图形界面与命令行操作指南,以及常见问题排查方法,提升芯片后端设计效率。附避坑指南,解决EETOP论坛热议的模块丢失问题。

weixin_26795617的博客 433

2025年7月5日全国青少年信息素养大赛图形化(Scratch)编程小学低年级组复赛真题+答案

2025年7月5日全国青少年信息素养大赛图形化(Scratch)编程小学低年级组复赛真题+答案

伶俐角少儿编程 896

ADS基础教程20 - 电磁仿真(EM)参数化仿真

一、引言二、参数化设置1.参数定义2.参数赋值3.创建EM模型和符号四、总结1)在Layout视图,菜单栏中选中EMComponent2)在弹出的参数编辑框中,采用标称/扰动()设计。使用子网(Subnetwork)参数。这些方法是互斥的,在为单个组件定义参数时不能将它们组合起来。标称/扰动(Nominal/Perturbed)参数使用平面化布局场景,并且只包含端口和原始图形形状(如多边形、矩形和圆形)时定义。

XZ_ZC的博客 4022

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

上一篇: 【学习系列】SAP RAP 7:行为定义-Draft
下一篇: 【学习系列】SAP RAP 9:行为定义-Operations
DeveloperMrMeng
博客等级 码龄5年 1765粉丝 113原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

DeveloperMrMeng

觉得有用的佛系投币哦

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值