Package org.apache.wss4j.dom.validate
Class KerberosTokenValidator
java.lang.Object
org.apache.wss4j.dom.validate.KerberosTokenValidator
- All Implemented Interfaces:
Validator
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionGet the CallbackHandler to use with the LoginContextGet the JAAS Login context name to use.Get the KerberosTokenDecoder instance used to extract a session key from the received Kerberos token.Get the name of the service to use when contacting the KDC.booleanisSpnego()booleanSPN can be configured to be in either "hostbased" or "username" form.
- "hostbased" - specifies that the service principal name should be interpreted as a "host-based" name as specified in GSS API Rfc, section "4.1: Host-Based Service Name Form" - The service name, as it is specified in LDAP/AD, as it is listed in the KDC.
- "username" - specifies that the service principal name should be interpreted as a "username" name as specified in GSS API Rfc, section "4.2: User Name Form" � This is usually the client username in LDAP/AD used for authentication to the KDC.voidsetCallbackHandler(CallbackHandler callbackHandler) Set the CallbackHandler to use with the LoginContext.voidsetContextName(String contextName) Set the JAAS Login context name to use.voidsetKerberosTokenDecoder(KerberosTokenDecoder kerberosTokenDecoder) Set the KerberosTokenDecoder instance used to extract a session key from the received Kerberos token.voidsetServiceName(String serviceName) The name of the service to use when contacting the KDC.voidsetSpnego(boolean spnego) voidsetUsernameServiceNameForm(boolean isUsernameServiceNameForm) If true - sets the SPN form to "username"
If false(default) - the SPN form is "hostbased"validate(Credential credential, RequestData data) Validate the credential argument.
-
Constructor Details
-
KerberosTokenValidator
public KerberosTokenValidator()
-
-
Method Details
-
getContextName
Get the JAAS Login context name to use.- Returns:
- the JAAS Login context name to use
-
setContextName
Set the JAAS Login context name to use.- Parameters:
contextName- the JAAS Login context name to use
-
getCallbackHandler
Get the CallbackHandler to use with the LoginContext- Returns:
- the CallbackHandler to use with the LoginContext
-
setCallbackHandler
Set the CallbackHandler to use with the LoginContext. It can be null.- Parameters:
callbackHandler- the CallbackHandler to use with the LoginContext
-
setServiceName
The name of the service to use when contacting the KDC. This value can be null, in which case it defaults to the current principal name.- Parameters:
serviceName- the name of the service to use when contacting the KDC
-
getServiceName
Get the name of the service to use when contacting the KDC. This value can be null, in which case it defaults to the current principal name.- Returns:
- the name of the service to use when contacting the KDC
-
getKerberosTokenDecoder
Get the KerberosTokenDecoder instance used to extract a session key from the received Kerberos token.- Returns:
- the KerberosTokenDecoder instance used to extract a session key
-
setKerberosTokenDecoder
Set the KerberosTokenDecoder instance used to extract a session key from the received Kerberos token.- Parameters:
kerberosTokenDecoder- the KerberosTokenDecoder instance used to extract a session key
-
validate
Validate the credential argument. It must contain a non-null BinarySecurityToken.- Specified by:
validatein interfaceValidator- Parameters:
credential- the Credential to be validateddata- the RequestData associated with the request- Returns:
- a validated Credential
- Throws:
WSSecurityException- on a failed validation
-
isUsernameServiceNameForm
public boolean isUsernameServiceNameForm()SPN can be configured to be in either "hostbased" or "username" form.
- "hostbased" - specifies that the service principal name should be interpreted as a "host-based" name as specified in GSS API Rfc, section "4.1: Host-Based Service Name Form" - The service name, as it is specified in LDAP/AD, as it is listed in the KDC.
- "username" - specifies that the service principal name should be interpreted as a "username" name as specified in GSS API Rfc, section "4.2: User Name Form" � This is usually the client username in LDAP/AD used for authentication to the KDC.
Default is "hostbased".- Returns:
- the isUsernameServiceNameForm
-
setUsernameServiceNameForm
public void setUsernameServiceNameForm(boolean isUsernameServiceNameForm) If true - sets the SPN form to "username"
If false(default) - the SPN form is "hostbased"- Parameters:
isUsernameServiceNameForm- the isUsernameServiceNameForm to set- See Also:
-
isSpnego
public boolean isSpnego() -
setSpnego
public void setSpnego(boolean spnego)
-