Class SCRAMPropertiesLoginModule
- java.lang.Object
-
- org.apache.activemq.artemis.spi.core.security.jaas.PropertiesLoader
-
- org.apache.activemq.artemis.spi.core.security.jaas.SCRAMPropertiesLoginModule
-
- All Implemented Interfaces:
javax.security.auth.spi.LoginModule
,AuditLoginModule
public class SCRAMPropertiesLoginModule extends PropertiesLoader implements AuditLoginModule
Login modules that uses properties files similar to thePropertiesLoginModule
. It can either store the username-password in plain text or in an encrypted/hashed form. themain(String[])
method provides a way to prepare unencrypted data to be encrypted/hashed.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.activemq.artemis.spi.core.security.jaas.PropertiesLoader
PropertiesLoader.FileNameKey
-
-
Field Summary
-
Fields inherited from class org.apache.activemq.artemis.spi.core.security.jaas.PropertiesLoader
debug
-
-
Constructor Summary
Constructors Constructor Description SCRAMPropertiesLoginModule()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
abort()
boolean
commit()
void
initialize(javax.security.auth.Subject subject, javax.security.auth.callback.CallbackHandler callbackHandler, java.util.Map<java.lang.String,?> sharedState, java.util.Map<java.lang.String,?> options)
boolean
login()
boolean
logout()
static void
main(java.lang.String[] args)
Main method that could be used to encrypt given credentials for use in properties files-
Methods inherited from class org.apache.activemq.artemis.spi.core.security.jaas.PropertiesLoader
init, load, resetUsersAndGroupsCache
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.activemq.artemis.spi.core.security.jaas.AuditLoginModule
registerFailureForAudit
-
-
-
-
Method Detail
-
initialize
public void initialize(javax.security.auth.Subject subject, javax.security.auth.callback.CallbackHandler callbackHandler, java.util.Map<java.lang.String,?> sharedState, java.util.Map<java.lang.String,?> options)
- Specified by:
initialize
in interfacejavax.security.auth.spi.LoginModule
-
login
public boolean login() throws javax.security.auth.login.LoginException
- Specified by:
login
in interfacejavax.security.auth.spi.LoginModule
- Throws:
javax.security.auth.login.LoginException
-
commit
public boolean commit() throws javax.security.auth.login.LoginException
- Specified by:
commit
in interfacejavax.security.auth.spi.LoginModule
- Throws:
javax.security.auth.login.LoginException
-
abort
public boolean abort() throws javax.security.auth.login.LoginException
- Specified by:
abort
in interfacejavax.security.auth.spi.LoginModule
- Throws:
javax.security.auth.login.LoginException
-
logout
public boolean logout() throws javax.security.auth.login.LoginException
- Specified by:
logout
in interfacejavax.security.auth.spi.LoginModule
- Throws:
javax.security.auth.login.LoginException
-
main
public static void main(java.lang.String[] args) throws java.security.GeneralSecurityException, ScramException, StringPrep.StringPrepError, java.io.IOException
Main method that could be used to encrypt given credentials for use in properties files- Parameters:
args
- username password type [iterations]- Throws:
java.security.GeneralSecurityException
- if any security mechanism is not available on this JVMScramException
- if invalid data is suppliedStringPrep.StringPrepError
- if username can't be encoded according to SASL StringPrepjava.io.IOException
- if writing as properties failed
-
-