Class GSSCredentialSecurityFactory.Builder
java.lang.Object
org.wildfly.security.mechanism.gssapi.GSSCredentialSecurityFactory.Builder
- Enclosing class:
- GSSCredentialSecurityFactory
A builder for GSS credential security factories.
-
Method Summary
Modifier and TypeMethodDescriptionaddMechanismOid(Oid oid) Add anOidfor a mechanism theGSSCredentialshould be usable with.build()Construct a newGSSKerberosCredentialsecurity factory instance.setCheckKeyTab(boolean value) Set if keytab file existence and principal presence in it should be checked on factory build.setDebug(boolean debug) Set if debug logging should be enabled for the JAAS authentication portion of obtaining theGSSCredential.setFailCache(long seconds) Set amount of seconds before new try to obtainGSSCredentialshould be done if it has failed last time.setIsServer(boolean isServer) Set if the credential returned from the factory is representing the server side of the connection.Set the keytab file to obtain the identity.setMinimumRemainingLifetime(int minimumRemainingLifetime) Once the factory has been called once it will cache the resultingGSSCredential, this setting defines how much life it must have left in seconds for it to be re-used.setObtainKerberosTicket(boolean obtainKerberosTicket) Set if the KerberosTicket should also be obtained and associated with the Credential.setOptions(Map<String, Object> options) Set other configuration options forKrb5LoginModule.setPrincipal(String principal) Set the principal name for the initial authentication from the KeyTab.setRequestLifetime(int requestLifetime) Set the lifetime to request newly created credentials are valid for.setWrapGssCredential(boolean value) Set if the constructedGSSCredentialshould be wrapped to prevent improper credential disposal or not.
-
Method Details
-
setKeyTab
Set the keytab file to obtain the identity.- Parameters:
keyTab- the keytab file to obtain the identity.- Returns:
thisto allow chaining.
-
setIsServer
Set if the credential returned from the factory is representing the server side of the connection.- Parameters:
isServer- is the credential returned from the factory is representing the server side of the connection.- Returns:
thisto allow chaining.
-
setObtainKerberosTicket
Set if the KerberosTicket should also be obtained and associated with the Credential.- Parameters:
obtainKerberosTicket- if the KerberosTicket should also be obtained and associated with the Credential.- Returns:
thisto allow chaining.
-
setMinimumRemainingLifetime
public GSSCredentialSecurityFactory.Builder setMinimumRemainingLifetime(int minimumRemainingLifetime) Once the factory has been called once it will cache the resultingGSSCredential, this setting defines how much life it must have left in seconds for it to be re-used.- Parameters:
minimumRemainingLifetime- the time in seconds of life aGSSCredentialmust have to be re-used.- Returns:
thisto allow chaining.
-
setRequestLifetime
Set the lifetime to request newly created credentials are valid for.- Parameters:
requestLifetime- the lifetime to request newly created credentials are valid for.- Returns:
thisto allow chaining.
-
addMechanismOid
Add anOidfor a mechanism theGSSCredentialshould be usable with.- Parameters:
oid- theOidfor the mechanism theGSSCredentialshould be usable with.- Returns:
thisto allow chaining.
-
setPrincipal
Set the principal name for the initial authentication from the KeyTab.- Parameters:
principal- the principal name for the initial authentication from the KeyTab.- Returns:
thisto allow chaining.
-
setDebug
Set if debug logging should be enabled for the JAAS authentication portion of obtaining theGSSCredential.- Parameters:
debug- if debug logging should be enabled for the JAAS authentication portion of obtaining theGSSCredential- Returns:
thisto allow chaining.
-
setWrapGssCredential
Set if the constructedGSSCredentialshould be wrapped to prevent improper credential disposal or not.- Parameters:
value-trueif the constructedGSSCredentialshould be wrapped;falseotherwise.- Returns:
thisto allow chaining.
-
setCheckKeyTab
Set if keytab file existence and principal presence in it should be checked on factory build.- Parameters:
value-trueif keytab file should be checked;falseotherwise.- Returns:
thisto allow chaining.
-
setOptions
Set other configuration options forKrb5LoginModule.- Parameters:
options- the configuration options which will be appended to options passed intoKrb5LoginModule- Returns:
thisto allow chaining.
-
setFailCache
Set amount of seconds before new try to obtainGSSCredentialshould be done if it has failed last time. Allows to prevent long waiting to unavailable KDC on every authentication.- Parameters:
seconds- amount of seconds to cache fail state of the credential factory; 0 if the cache should not be used.- Returns:
thisto allow chaining.
-
build
Construct a newGSSKerberosCredentialsecurity factory instance.- Returns:
- the built factory instance
- Throws:
IOException- when unable to use given KeyTab
-