Product SiteDocumentation Site

4.4.2. DIGEST-based Credential Handler

This credential handlers supports a DIGEST based authentication.
Credentials can be updated as follows:
User user = BasicModel.getUser(identityManager, "jsmith");
Digest digest = new Digest();

digest.setRealm("PicketLink Realm");
digest.setUsername(user.getLoginName());
digest.setPassword("abcd1234");

identityManager.updateCredential(user, digest);
In order to validate a credential you need to the following code:
User user = BasicModel.getUser(identityManager, "jsmith");

Digest digest = new Digest();

digest.setRealm("PicketLink Realm");
digest.setUsername(user.getLoginName());
digest.setPassword("abcd1234");

digest.setDigest(DigestUtil.calculateA1(user.getLoginName(), digest.getRealm(), digest.getPassword().toCharArray()));

DigestCredentials credential = new DigestCredentials(digest);

identityManager.validateCredentials(credential);

if (Status.VALID.equals(credential.getStatus()) {
// successful validation
} else {
// invalid credential
}