NW RFC SDK:使用用户名从非SAP到ABAP(信任关系)

2020-08-18 16:37发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)你好 我有一个具有挑战性的具有信...

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

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


你好

我有一个具有挑战性的具有信任关系的非SAP到ABAP RFC场景

Hereu2019的场景是:/p>

Oracle数据库服务器充当RFC客户端,并在ABAP服务器中调用RFC功能模块。 (我假设Oracle程序员将在Oracle服务器上使用NW RFC SDK 7.1或JCo 3.0,并从基于PL/SQL的数据库应用程序中调用它。)

挑战是我不想使用 ABAP端只有一个u201C技术用户u201D,因为这意味着Oracle端的所有用户都将映射到一个ABAP用户。 另外,我不想在Oracle端存储单个ABAP密码。

相反,我希望 ABAP服务器信任RFC客户端,其方式与

a)安装Java后信任NetWeaver AS Java服务器的方式相同 事务STRUSTSSO2或

b中的serveru2019的证书b)配置信任关系后(交易SMT1?)它可能信任另一个ABAP服务器的方式

ABAP服务器应接受传入的RFC 从Oracle RFC客户端连接,仅提供用户名而未给出密码,并在RFC调用中提供的用户ID下在ABAP系统中运行生成的进程。

< p>我以某种方式想象出理想的解决方案(基于PC的原型的简化方案):

-我下载运行一个程序,该程序创建一个证书文件(公钥?),然后导入该文件 ABAP系统。

-同一程序为RFC客户端创建一个匹配文件(私钥?)。

-为简单起见,让我们将RFC客户端想象为在PC上运行的独立Java SE应用程序。

-Java SE应用程序使用JCo库进行连接 到ABAP系统。

-打开连接时,它传递的是用户名,但没有密码。 相反,它传递由我们的密钥/证书生成器程序生成的Base64编码的字符串。

-在ABAP端,功能模块在建立Java SE应用程序所使用的用户名下运行。 RFC连接。

这完全可能吗? 您将如何解决这个问题?

非常感谢您,并谨向您致以诚挚的问候,

敬请谅解

6条回答
愤怒的猪头君
2020-08-18 17:17

好吧,我想您已经明白了-我相信您很快就会意识到,您需要投入很多精力来实现声音

会话(和资源)管理非常重要-在安全性(即确保不"混合"会话,分配错误的后端连接)和鲁棒性(即确保 未使用的会话将关闭,释放服务器资源-否则将发生"资源泄漏",从而导致系统停止。)

结论:涉及的组件越多,需要花费更多的精力才能实现 健全而健壮的系统化合物。

->端到端通信比中介通信(通过大量中间件组件)更受重视

别误会:我不是 促进单片(ABAP)系统。

我只想让人们意识到,(不均匀的)系统组件(分布式系统)的化合物带来了新的挑战。

-> 哟 您已经成功实现了SSO,您只需要走一半(甚至更少)

->,还必须跟踪使用SSO技术创建的会话

-> 您还必须提供SLO(单一注销)功能

干杯,沃尔夫冈

一周热门 更多>