RSA Self Service module will not allow special characters in the username.
2 years ago
Originally Published: 2012-03-27
Article Number
000044888
Applies To
RSA Access Manager 6.1 SP3
RSA Access Manager Self Service Application
Issue
RSA Self Service module will not allow special characters in the username.
When attempting to access the RSA Self Service module using a username with an special character in it the following error message is generated:
"There are illegal characters present in the userName field. Please type-in proper userName."

Cause
The self service module restricts special characters in the username.
Resolution
You can add the character to the list of allowed characters by editing the Login-validation.xml file.   This file may be located in the location where your application server has deployed the self service application.  The location varies according to the type of application server and the way it was deployed.  For example for Apache Tomat the file would be located in the following directory.
"C:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\axm-selfservice-gui\WEB-INF\classes\sirrus\selfservice\actions\Login-validation.xml"
Edit the file and add additional characters to the "allowedCharacters" parameter as required.
<!DOCTYPE validators PUBLIC "-//OpenSymphony Group//XWork Validator 1.0.2//EN" 
"<http://www.opensymphony.com/xwork/xwork-validator-1.0.2.dtd>"> 
<validators>
<field name="userName">
<field-validator type="validuserid">
<param name="allowedCharacters">-</param>
<message key="selfservice.err.illegalcharacters"></message>
</field-validator>
</field>
<field name="password">
<field-validator type="requiredstring">
<message key="selfservice.err.password"></message>
</field-validator>
</field>
</validators>

Notes
Note:  In RSA Access Manager 6.1.3 or later the axm-Selfservice-gui.war file is signed to prevent tampering.  If you attempt to edit the war file directory the J2EE server will prevent you from deploying it.  You must edit the copy of the Login-validation.xml file after deployment.