Class JassPasswordProvider

java.lang.Object
org.apache.storm.security.auth.digest.JassPasswordProvider
All Implemented Interfaces:
PasswordProvider

public class JassPasswordProvider extends Object implements PasswordProvider
Provides passwords out of a jaas conf for typical MD5-DIGEST authentication support.
  • Field Details

    • SYSPROP_SUPER_PASSWORD

      public static final String SYSPROP_SUPER_PASSWORD
      The system property that sets a super user password. This can be used in addition to the jaas conf, and takes precedent over a "super" user in the jaas conf if this is set.
      See Also:
  • Constructor Details

    • JassPasswordProvider

      public JassPasswordProvider(Map<String,Object> topoConf) throws IOException
      Constructor.
      Parameters:
      topoConf - the configuration containing the jaas conf to use.
      Throws:
      IOException - if we could not read the Server section in the jaas conf.
  • Method Details

    • getPasswordFor

      public Optional<char[]> getPasswordFor(String user)
      Description copied from interface: PasswordProvider
      Get an optional password for a user. If no password for the user is found the option will be empty and another PasswordProvider would be tried.
      Specified by:
      getPasswordFor in interface PasswordProvider
      Parameters:
      user - the user this is for.
      Returns:
      the password if it is found.
    • isImpersonationAllowed

      public boolean isImpersonationAllowed()
      Description copied from interface: PasswordProvider
      Should impersonation be allowed by this password provider. The default is false.
      Specified by:
      isImpersonationAllowed in interface PasswordProvider
      Returns:
      true if it should else false.