NO LONGER MAINTAINED

DUE TO TIME CONSTRAINTS OF THE ORIGINAL OSS DEVELOPER THE NIMBLE PLUGIN IS NO LONGER BEING MAINTAINED.

Local Account Realm

The local accounts realm takes responsibility for authenticating users whom have usernames and passwords that are stored in the local Nimble database.

The logic for this realm is located at grails.plugins.nimble.core.LocalizedRealm for authentication purposes the important method is authenticate.

This realm operates on the token type org.apache.shiro.authc.UsernamePasswordToken which is generated by the AuthController during login form submission.

For LocalizedRealm the authentication process is:
  1. Ensure the config option nimble.internal.authentication.enabled is true
  2. Ensure a valid username has been submitted with the login form
  3. Ensure there is an account in the Nimble system that has a matching username
  4. Ensure the account is currently enabled
  5. Ensure the supplied password when hashed matches the internally stored password hash
If all the above is valid a session is established for the user and they are allowed to continue. Failure at any stage results in an appropriate exception being thrown.