@Override public void update(Agent agent, Object credential, IdentityStore<?> identityStore, Date effectiveDate, Date expiryDate) { if (!CredentialStore.class.isInstance(identityStore)) { throw new IdentityManagementException("Provided IdentityStore [" + identityStore + "] is not an instance of CredentialStore."); } if (!X509Cert.class.isInstance(credential)) { throw new IllegalArgumentException("Credential class [" + credential.getClass().getName() + "] not supported by this handler."); } X509Cert certificate = (X509Cert) credential; X509CertificateStorage storage = new X509CertificateStorage((X509Cert) certificate); CredentialStore store = (CredentialStore) identityStore; store.storeCredential(agent, storage); }
@Override public void update(IdentityContext context, Account account, U password, S store, Date effectiveDate, Date expiryDate) { CredentialStorage storage = createCredentialStorage(context, account, password, store, effectiveDate, expiryDate); if (storage == null) { throw new IdentityManagementException("CredentialStorage returned by handler [" + this + "is null."); } store.removeCredential(context, account, storage.getClass()); store.storeCredential(context, account, storage); }
@Override public void update(IdentityContext context, Account account, U password, S store, Date effectiveDate, Date expiryDate) { CredentialStorage storage = createCredentialStorage(context, account, password, store, effectiveDate, expiryDate); if (storage == null) { throw new IdentityManagementException("CredentialStorage returned by handler [" + this + "is null."); } store.removeCredential(context, account, storage.getClass()); store.storeCredential(context, account, storage); }
@Override public void update(Agent agent, Object credential, IdentityStore<?> identityStore, Date effectiveDate, Date expiryDate) { CredentialStore store = validateCredentialStore(identityStore); if (!Password.class.isInstance(credential)) { throw new IllegalArgumentException("Credential class [" + credential.getClass().getName() + "] not supported by this handler."); } Password password = (Password) credential; SHASaltedPasswordEncoder encoder = new SHASaltedPasswordEncoder(512); SHASaltedPasswordStorage hash = new SHASaltedPasswordStorage(); hash.setSalt(generateSalt()); hash.setEncodedHash(encoder.encodePassword(hash.getSalt(), new String(password.getValue()))); hash.setEffectiveDate(effectiveDate); if(expiryDate != null){ hash.setExpiryDate(expiryDate); } store.storeCredential(agent, hash); }
@Override public void update(IdentityContext context, Account account, TOTPCredential credential, CredentialStore<?> store, Date effectiveDate, Date expiryDate) { // if a credential was not provided, updates only the secret. if (credential.getValue() != null && credential.getValue().length > 0) { super.update(context, account, credential, store, effectiveDate, expiryDate); } OTPCredentialStorage storage = new OTPCredentialStorage(); if (effectiveDate != null) { storage.setEffectiveDate(effectiveDate); } storage.setExpiryDate(expiryDate); storage.setSecretKey(credential.getSecret()); storage.setDevice(getDevice(credential.getDevice())); store.storeCredential(context, account, storage); }
@Override public void update(IdentityContext context, Account account, TOTPCredential credential, CredentialStore<?> store, Date effectiveDate, Date expiryDate) { // if a credential was not provided, updates only the secret. if (credential.getValue() != null && credential.getValue().length > 0) { super.update(context, account, credential, store, effectiveDate, expiryDate); } OTPCredentialStorage storage = new OTPCredentialStorage(); if (effectiveDate != null) { storage.setEffectiveDate(effectiveDate); } storage.setExpiryDate(expiryDate); storage.setSecretKey(credential.getSecret()); storage.setDevice(getDevice(credential.getDevice())); store.storeCredential(context, account, storage); }