Fork me on GitHub

创建两个SAP系统之间的RFC信任关系

一种常见的场景是企业运行着多个SAP系统(ERP/SRM/CRM),用户希望在AA1系统中使用BB1系统的事务。如果直接使用RFC调用另一系统的事务的话,则会弹出登陆框,让用户再次输入帐号密码...

可信RFC(trusted RFC)是解决该问题的方法之一,通过可信RFC,用户可以在不输入帐号密码的情况下,从一个SAP系统登录另一个SAP系统。

 

本文链接:http://www.cnblogs.com/hhelibeb/p/8589284.html

英文原文:Setup a trusted RFC connection

 

作为SAP管理员,我经常会遇到有关可信RFC连接的问题。我还注意到SCN论坛上经常会有关于设置的问题。

总而言之,这并不难,像很多配置和设置一样,只要知道如何正确地做,就不会有什么麻烦

你需要在事务SM59中,定义一个到目标系统的RFC连接,以便在源系统中将其启用为可信任的目标系统。

在你的源SAP系统AA1上,设置一个可信的RFC指向目标系统BB1。 完成后,这意味着当你登录到AA1、并且同名的用户在BB1中拥有足够的权限时,可以使用RFC连接并登录到BB1,而无需重新输入用户名和密码。

 

配置步骤如下:

在事务SM59中定义一个指向BB1系统的R3类型的RFC连接(连接类型3)。

维护技术设置标签页。

接着是登录&安全标签页。

 

登录细节:

在MDMP & Unicode选项中选择合适的选项(你的系统是否为Unicode)。

我们假设BB1是Unicode系统,因为除了版本很久的SAP系统之外,绝大部分SAP系统都是Unicode系统。

 

现在你可以测试RFC连接是否可以工作。如果你发现任何问题,需要将它解决掉,才能进行下一步。

可以通过实用程序->连接测试,权限测试和Unicode测试来进行。

 

现在R3 RFC连接就配置好了,我们需要进行下一步,前往事务SMT1并且选择创建按钮。

 

选择先前创建的RFC连接,点击确定。

 

然后点击Maintain Destination按钮。

这个会把你带回SM59里的destination BB1CLNT100。

在登录&安全标签页,修改信任系统选项为 是。

 

点击“是”,再选择“当前用户”,以移除登录用户。

 

设置后的效果如图。

 

在SM59中创建RFC连接时,也可以直接将受信任系统设置为“是”,并选择“当前用户”等。不过,在SMT1中创建受信系统时再维护这些东西,可以避免很多问题。因此这是我推荐的流程。(因为这样做的话,你在SMT1中配置时可以确定destination是可工作的)。

现在你有一个可信RFC了,“当前用户”选项的意思是,RFC连接会使用当前登录用户的用户名登录远程系统。出于安全原因,你不可以在可信RFC中填入用户名和密码,因为这会导致该帐号被其他人滥用。

要使用这个RFC连接,目标系统和client中需要有相应的权限。在本例中,从AA1系统防伪BB1系统的client 100的话,BB1系统client 100的相应帐号需要维护权限对象S_RFCACL。

S_RFCACL的细节问题和SAP版本有关,有一个SAP Note包含相关细节:

Note 128447 – Trusted/trusting systems

当你成功创建可信RFC后,你会可以在AA系统的事务SMT1中看到BB1统,也可以在BB1系统中的SMT1看到AA1(当然一个是作为调用受信的系统,一个是作为信任当前系统的系统)。如果有需要的话,你也可以按此步骤配置一个从BB1到AA1的可信RFC。

 

posted @ 2018-03-17 14:05  氢氦  阅读(4300)  评论(0编辑  收藏  举报