头图

本文回答笔者知识星球一个朋友的提问:

汪老师您好,请教一个问题。ABAP 里的程序能够动态生成吗?我的意思是,ABAP 程序的源代码是从第三方传入的,然后在 ABAP 系统生成,并执行?有没有类似的例子可以参考?谢谢汪老师!

首先笔者要提醒的是,这种根据第三方输入,动态生成 ABAP 程序并且执行的方式,有非常严重的安全隐患

如果第三方传入的 ABAP 源代码,我们在凭借这些源代码动态生成 ABAP 程序时,没有对其使用的关键字进行安全检查,那么理论上有可能生成的 ABAP 程序,会执行一些会破坏 ABAP 系统,或者导致系统业务数据丢失的情况。比如传入的 ABAP 源代码,包含一行 DEELTE FROM XXX 的代码,那么生成的 ABAP 程序执行之后,会将当前系统名叫 XXX 的数据库表的全部内容进行删除。

所以本文介绍的这种理论上的技术办法,需要非常谨慎的使用。

下面是详细介绍。


注销
1k 声望1.6k 粉丝

invalid