是否可以实现自定义事务执行授权检查?

2020-09-14 02:19发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我们正在尝试确定SAP NetWeaver ABAP中是否有可用的BAdI或用户出口或功能模块出口,当用户运行任何事务时会调用该出口。 我们要编写一些ABAP代码,以根据我们的代码返回的退出代码,检查用户是否被授权运行交易(使用除静态信息(例如已检查的角色/个人资料)之外的其他变化信息) 我们希望SAP NetWeaver阻止或允许交易的执行(向用户显示友好消息)。 这可能吗?

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我们正在尝试确定SAP NetWeaver ABAP中是否有可用的BAdI或用户出口或功能模块出口,当用户运行任何事务时会调用该出口。 我们要编写一些ABAP代码,以根据我们的代码返回的退出代码,检查用户是否被授权运行交易(使用除静态信息(例如已检查的角色/个人资料)之外的其他变化信息) 我们希望SAP NetWeaver阻止或允许交易的执行(向用户显示友好消息)。 这可能吗?

付费偷看设置
发送
5条回答
Aaron 3364
1楼-- · 2020-09-14 03:06

你好

这根本不可能,因为否则,聪明的安全公司本来可以这样做以提高安全性。 有一些方法可以使用策略服务器来实现所需的功能。 但是,这需要大量的实现工作,并且在升级时会中断。 尝试通过角色和授权,SU24,TSTCA等使用SAP标准。其他所有事情都将一团糟。

关于,亚历山德罗

bbpeas
2楼-- · 2020-09-14 03:01

我认为这没有帮助,但到目前为止,我感谢您在此主题上的帮助。 您分享的帖子似乎在说明如何在自己的代码中添加权限检查。 我们不想这样做-我们想让用户登录并运行任何标准交易,例如 su01,sm30,ME23N等。然后,我们想实现一些被调用的代码(例如,通过用户出口,BAdI,功能模块出口),然后该代码将检查是否允许用户运行事务。 是否存在这样的用户出口,BAdI或功能模块出口,或以其他方式对此进行编码?

compass1988
3楼-- · 2020-09-14 02:54

我看不到任何启用SAP的增强点,但是您可以 在FM" SFW_GET_SWITCHPOS"或" S_UI_CLASS_DEPENDENCIES"中插入修改?

FM" SFW_GET_SWITCHPOS"导出一个" SWITCHTAB"表,该表保存已执行的事务...或者您显然可以使用系统参数...

看看您/您的组织是否愿意调查...

nice_wp
4楼-- · 2020-09-14 02:55

您好,Nic,

我正在与Tim一起进行此增强功能,并感谢您在此方面的帮助。

当我调试任何事务时,可以看到在显示事务的主屏幕之前已调用FM" S_UI_CLASS_DEPENDENCIES"和" SFW_GET_SWITCHPOS"。 您是否建议我们需要修改这些FM代码,使其包含我们的ABAP代码,以检查是否允许用户运行交易?

我发现运行事务以检查授权时也会调用AUTH_CHECK_TCODE或AUTHORITY_CHECK_TCODE FM。 因此,您认为最好更改这些FM代码之一以包含我们的ABAP代码,以检查是否允许用户运行该交易?

如果我们更改SAP标准代码,则SAP软件升级/增强软件包的安装可能会覆盖这些更改吗? 您认为可以更改SAP标准代码吗?

我不理解您对SWITCHTAB表的引用。 您是否建议我们需要编写代码来查找表以了解正在运行的事务代码? 如果是这样的话,肯定会最好改为更改AUTH_CHECK_TCODE FM,因为此FM已经知道事务代码。 您认为哪个更好?

谢谢

Srini

SAP浪
5楼-- · 2020-09-14 03:07

谢谢。 您的观点被理解。

在类似的主题上,您是否知道每当用户访问或尝试更改某个字段类型时,如何调用某些代码?

谢谢

Tim

一周热门 更多>