A Password Provider is an implementation of the Java interface ome.security.auth.PasswordProvider. Several implementations exist currently:
The “chainedPasswordProvider” (ome.security.auth.PasswordProviders) is configured for use by default in etc/omero.properties under omero.security.password_provider. It first checks with the LdapPasswordProvider and then falls back to the JdbcPasswordProvider.
To write your own provider, you can either subclass from ome.security.auth.ConfigurablePasswordProvider as the providers above do, or write your own implementation from scratch. You will need to define your object in a Spring XML file matching the pattern ome/services/db-*.xml. See Extending OMERO more for information.