Validates the given credential.
As a convenience, a default implementation is provided that looks up an overload of this method
that has, as its one and only parameter, a subclass of
Credential. Here is an example of what
an implementation of this interface looks like with such an overloaded method:
public class ExampleIdentityStore implements IdentityStore }
}
Note that the overloaded method is only called when the actual type passed into this method will exactly match
the parameter type of the overloaded method. There's no attempt being done to find the most specific overloaded method
such as specified in JLS 15.2.
This method returns a
CredentialValidationResult representing the result of the validation attempt:
whether it succeeded or failed, and, for a successful validation, the
CallerPrincipal, and possibly
groups or other attributes, of the caller.