Configuring and Customizing My MATRIXX Security

My MATRIXX leverages the Spring Security Framework. This section describes a sample Spring Security implementation that authenticates with the default My MATRIXX web app or with an LDAP directory.

Note: For information about enabling TLS, see the discussion about enabling Transport Layer Security (TLS).

My MATRIXX administrators can enable and customize a security warning message that displays when logging into My MATRIXX. For more information, see the discussion about configuring the My MATRIXX security warning message.

Default Authentication

The Spring Security Framework can be used to enable different types of authentication, including X509 public key certificates and LDAP authentication.
Note: For more information about X509 support, see the discussion about authentication with X509 certificates in MATRIXX Security.

By default, MATRIXX web apps use passwords encrypted with a MATRIXX encoding algorithm to authenticate users and establish web sessions. The default encoding algorithm can be adapted using a custom encoder to allow the continued use of existing passwords in the LDAP implementation. Authentication for My MATRIXX uses the default configuration, and if that authentication attempt fails, the authentication process tries to authenticate using an LDAP server, if one is configured and running, before returning authentication success or failure.

Default authentication is controlled by user definitions that are configured in the My MATRIXX UI.

LDAP Authentication

For information about implementing a simple LDAP authentication for My MATRIXX using the Apache Directory Server™ Software, see the discussion about how to configure My MATRIXX for LDAP authentication.

Filters

The matrixxLoginFilter custom filter handles login requests. It calls a the default Spring Security Framework AuthenticationManager class method, which references the customerManagerLdapProvider method to authenticate users, and then calls the matrixxAuthenticationSuccessHandler, matrixxAuthenticationFailureHandler, and matrixxSessionAuthenticationStrategy methods to handle validation of the authentication. The LDAP implementation for this service binds to the LDAP server using the username and password provided in the URL. If the bind is successful, all the groups where the user is a member are identified and the role name is obtained.