Use the default single sign-on token with default or custom token factory to propagate security attributes
Do not use the default single sign-on token in service provider code. This default token is used by the WebSphere Application Server run-time code only.
Size limitations exist for this token when it is added as an HTTP cookie. If create an HTTP cookie using this token framework, we can implement a custom single sign-on token. To implement a custom single sign-on token see Implement a custom single sign-on token for security attribute propagation for more information.
Tasks
- Modify the single sign-on token factory configuration to use a token factory other than the default token factory.
When the default single sign-on token is generated, the application server utilizes the TokenFactory class specified using the com.ibm.wsspi.security.token.singleSignonTokenFactory property. Use the administrative console to modify the property.
The com.ibm.ws.security.ltpa.LTPAToken2Factory token factory is the default specified for this property. This token factory creates a single sign-on (SSO) token called LtpaToken2, which WAS uses for propagation. This token factory uses the AES/CBC/PKCS5Padding cipher.
- Open the administrative console.
- Click Security > Global security.
- Under Authentication, click Custom properties.
- Perform our own signing and encryption of the default single sign-on token.
If we need to perform our own signing and encryption of the default single sign-on token, implement the following classes:
- com.ibm.wsspi.security.ltpa.Token
- com.ibm.wsspi.security.ltpa.TokenFactory
Your token factory implementation instantiates (createToken) and validates (validateTokenBytes) your token implementation. Use the LTPA keys passed into the initialize method of the token factory or we can use our own keys. If we use our own keys, they must be the same everywhere to validate the tokens generated using those keys. See the API reference information for more information on implementing our own custom token factory.
- Associate our own token factory with the default single sign-on token.
- Open the administrative console.
- Click Security > Global security.
- Under Authentication, click Custom properties.
- Locate the com.ibm.wsspi.security.token.singleSignonTokenFactory property and verify that the value of this property matches our custom TokenFactory implementation.
- Verify that your implementation classes are put into the app_server_root/classes directory so that the WAS class loader can load the classes.
- Verify that your implementation classes are located in the ${USER_INSTALL_ROOT}/classes directory so that the WAS class loader can load the classes.
- (iSeries) Verify that the QEJBSVR user profile has read, write, and execute (*RWX) authority to the classes directory. Use the Work with Authority (WRKAUT) command to view the authority permissions for the directory.
Propagating security attributes among application servers Implement a custom single sign-on token for security attribute propagation