Access Manager error: 'User must be specified in the map'
3 years ago
Originally Published: 2013-05-06
Article Number
000050184
Applies To
RSA Access Manager 6.1  SP4
RSA Access Manager Server SPI (Server Hook)
Issue
Access Manager error: "User must be specified in the map"
The following error shows in the eserver debug level standard output log
15:59:01:555 [*] [MuxWorker-6] - AuthorizationAPI.createToken( {SC_USER_ID=test_raj4_02, AUTHENTICATION_TYPE=SC_BASIC, SC_IS_VALID=true, SC_BASIC=true}, {CLIENT_IP=10.10.10.10, CLIENT_PORT=42625, CLIENT_VERSION=13, USER_GROUPS_ENABLED=false, TOKENS_ENABLED=false, USER_PROPERTIES_ENABLED=false} ) returning {EXCEPTION_TYPE=TokenException, EXCEPTION_MESSAGE=User must be specified in the map}
15:59:01:555 [*] [MuxWorker-6] - TCPServerAPIAdaptor.createToken( {SC_USER_ID=test_raj4_02, AUTHENTICATION_TYPE=SC_BASIC, SC_IS_VALID=true, SC_BASIC=true}, {CLIENT_IP=10.10.10.10, CLIENT_PORT=42625, CLIENT_VERSION=13, tokens=false, groups=false, props=false} ) returning {EXCEPTION_TYPE=TokenException, EXCEPTION_MESSAGE=User must be specified in the map}
15:59:01:556 [*] [MuxWorker-6] -        result: {EXCEPTION_TYPE=TokenException, EXCEPTION_MESSAGE=User must be specified in the map}

Cause
This error indicates that the user does not exist in the RSA Access Manager database.  The error message should be more correctly stated as:
"A valid user must be specified in the map"
It is possible to create a call to create a user token by passing an invalid username, but the token creation will fail in this manner.   This error typically only occurs when a custom server hook is in use because in the normal RSA Access Manager program flow the RSA code would not attempt to create a token for a user that does not exist.  

Resolution
Ensure that the username is a valid RSA Access Manager user.