Well, yes and no… First of all, configuring 3 listeners doesn’t achieve anything: the R/3 system does not care what you define on wM side. It makes loadbalancing and then it is complete coincidence, which listener will receive which RFC… So you can as well have only one listener. (In fact, starting with wM 6.5 = SAP JCo 3.0, JCo does no longer allow to have multiple listeners with the same “Program ID”.)
The option of tying certain function modules to a listener is a bit misleading, because in fact all function modules are kind of “global”. I think the only reason why this has been done that way is in order to specify, which “Repository” should be used for the function module metadata.
But what you are trying to achieve, can be achieve easily in the following way: basically you want to setup a user authorization check for your 3 function modules. But this is independent of things like “listener”, “RFC connection”, “RFC destination”, etc.
All you need to do is, define the 3 SAP users in the wM user management as well. Then, when an RFC call arrives from R/3 (no matter via which listener), wM will execute this call in a wM user session corresponding to the SAP user ID. (Only if the SAP user ID does not exist in wM user management, it uses a default user named “SAPUser”.) So by having 3 wM user IDs spelled exactly like the corresponding SAP user IDs, you can protect your 3 RFCs with a corresponding ACL in the wM authorization management and enforce that only the correct SAP user can execute these RFCs.
Well, it’s a bit confusing at first, but I hope you understand what I’m trying to say…
#Adapters-and-E-Standards#Integration-Server-and-ESB#webMethods