Adapter for SAP 10.1 | webMethods Adapter for SAP Documentation | webMethods Adapter for SAP Installation and User’s Guide Documentation | Managing SAP User Store | Managing the SAP User Store
 
Managing the SAP User Store
Note:
Adapter for SAP application typically executes different RFC client calls under different SAP user accounts. If the RFC client call needs to be executed with a different SAP user than the default user, it is recommended to create one RFC connection for each connected SAP system, and to override the SAP username and password during runtime.
Adapter for SAP version 7.1 provides the $user and $pass input parameters for all RFC Adapter Services and for the public client services "pub.sap.client:*" to implement overriding the default user at runtime.
With the previous Adapter for SAP versions, you have to store the SAP user names and SAP passwords as cleartext in $user and $pass input parameters in the application services.
Adapter for SAP 10.1 extends the user overriding functionality by providing an indirect SAP User Alias mechanism for the RFC client call execution. It provides an SAP User Store user interface to maintain the SAP user aliases together with their associated SAP user names and passwords.
The indirect SAP User Alias mechanism allows you to :
*Remove the SAP passwords from the application services
*Change the SAP username and password centrally without modifying the application services.
Note:
An SAP User Alias is a unique key name for an SAP user. The SAP User Store holds a list of SAP User Alias entries. Each User Alias entry is associated to an SAP username and password.
The User Alias name is used during runtime to retrieve the SAP username and password from the SAP User Store.
The SAP User Store user interface allows to add, modify and delete the required SAP User Alias entries.
Runtime Behavior
Note:
The extended overriding functionality in Adapter for SAP 10.1 uses the existing (optional) $user and $pass input parameters so that there are no changes in the service signatures required.
If both the $user and $pass values exist in the input pipeline, the runtime behavior remains unchanged. Adapter for SAP 10.1 will interpret the values as cleartext username and password in the same way as previous versions of Adapter for SAP. Existing Adapter for SAP application will show the same runtime behavior with Adapter for SAP in this case.
However, if only $user value exists in the pipeline and $pass is undefined, the Adapter for SAP 10.1 will take the $user value as the User Alias name to retrieve the SAP username and password from the SAP User Store.
Note:
To use the extended overriding functionality for RFC client calls, the $pass value must be removed from the input pipeline, and the $user value must be changed to a valid SAP User Alias name.
Differences in the runtime behavior when executing RFC client services
Pipeline
Adapter for SAP 7.1
Adapter for SAP 10.1
Empty. No values for $user and $pass
Service will be executed with the default user of the RFC connection.
Service will be executed with the default user of the RFC connection.
$user and $pass exist in the pipeline
Service will be executed with the provided user if the SAP user name exists and the password is valid.
Service will be executed with the provided user if the SAP user name exists and the password is valid.
$user and $pass exist in the pipeline, but the logon information is incorrect.
Service execution will cause an error with the error message JCO_ERROR_LOGON_FAILURE "Name or password is incorrect" or "Incomplete logon data" if the password is missing.
Service execution will cause an error with the error message JCO_ERROR_LOGON_FAILURE, "Name or password is incorrect".
$user exists in the pipeline, but $pass does not exist.
Service execution will cause an error with the error message JCO_ERROR_LOGON_FAILURE "Incomplete logon data".
Adapter for SAP 10.1 will use $user as User Alias name to look-up the SAP user name and password in the User Store:
*If the alias does not exist, there will be an error message in the IS log "SAP user alias "XXX" does not exist!" and the service execution will fail with a JCO_ERROR_LOGON_FAILURE error.
*If the alias exists in the User Store and the associated SAP user name and password are valid, then the service will be executed with this SAP user. 3. If the alias exists but the associated user information is not valid then the service will fail with JCO_ERROR_LOGON_FAILURE error.