public String decodeEntryUUID(final Object entryUUID) { String id; if (this.config.isActiveDirectory()) { id = LDAPUtil.decodeObjectGUID((byte[]) entryUUID); } else { id = entryUUID.toString(); } return id; }
public String decodeEntryUUID(final Object entryUUID) { String id; if (this.config.isActiveDirectory()) { id = LDAPUtil.decodeObjectGUID((byte[]) entryUUID); } else { id = entryUUID.toString(); } return id; }
public String getFilterById(String baseDN, String id) { String filter = null; if (this.config.isActiveDirectory()) { final String strObjectGUID = "<GUID=" + id + ">"; try { Attributes attributes = execute(new LdapOperation<Attributes>() { @Override public Attributes execute(LdapContext context) throws NamingException { return context.getAttributes(strObjectGUID); } }); byte[] objectGUID = (byte[]) attributes.get(LDAPConstants.OBJECT_GUID).get(); filter = "(&(objectClass=*)(" + getUniqueIdentifierAttributeName() + EQUAL + convertObjectGUIToByteString(objectGUID) + "))"; } catch (NamingException ne) { return filter; } } if (filter == null) { filter = "(&(objectClass=*)(" + getUniqueIdentifierAttributeName() + EQUAL + id + "))"; } return filter; }
public String getFilterById(String baseDN, String id) { String filter = null; if (this.config.isActiveDirectory()) { final String strObjectGUID = "<GUID=" + id + ">"; try { Attributes attributes = execute(new LdapOperation<Attributes>() { @Override public Attributes execute(LdapContext context) throws NamingException { return context.getAttributes(strObjectGUID); } }); byte[] objectGUID = (byte[]) attributes.get(LDAPConstants.OBJECT_GUID).get(); filter = "(&(objectClass=*)(" + getUniqueIdentifierAttributeName() + EQUAL + convertObjectGUIToByteString(objectGUID) + "))"; } catch (NamingException ne) { return filter; } } if (filter == null) { filter = "(&(objectClass=*)(" + getUniqueIdentifierAttributeName() + EQUAL + id + "))"; } return filter; }
if (config.isActiveDirectory()) { env.put("java.naming.ldap.attributes.binary", LDAPConstants.OBJECT_GUID);
if (config.isActiveDirectory()) { env.put("java.naming.ldap.attributes.binary", LDAPConstants.OBJECT_GUID);
@Override public void setup(LDAPIdentityStoreConfiguration config) { super.setup(config); if (config.isActiveDirectory()) { LDAP_STORE_LOGGER.ldapActiveDirectoryConfiguration(); } try { this.operationManager = new LDAPOperationManager(getConfig()); } catch (NamingException e) { throw MESSAGES.storeLdapCouldNotCreateContext(e); } }
@Override public void setup(LDAPIdentityStoreConfiguration config) { super.setup(config); if (config.isActiveDirectory()) { LDAP_STORE_LOGGER.ldapActiveDirectoryConfiguration(); } try { this.operationManager = new LDAPOperationManager(getConfig()); } catch (NamingException e) { throw MESSAGES.storeLdapCouldNotCreateContext(e); } }
@Override public void update(IdentityContext context, Account account, Password password, LDAPIdentityStore store, Date effectiveDate, Date expiryDate) { if (store.getConfig().isActiveDirectory()) { updateADPassword(account, new String(password.getValue()), store); } else { ModificationItem[] mods = new ModificationItem[1]; try { BasicAttribute mod0 = new BasicAttribute(USER_PASSWORD_ATTRIBUTE, new String(password.getValue())); mods[0] = new ModificationItem(DirContext.REPLACE_ATTRIBUTE, mod0); store.getOperationManager().modifyAttribute(store.getBindingDN(account, true), mod0); } catch (Exception e) { throw new IdentityManagementException("Error updating password.", e); } } }
@Override public void update(IdentityContext context, Account account, Password password, LDAPIdentityStore store, Date effectiveDate, Date expiryDate) { if (store.getConfig().isActiveDirectory()) { updateADPassword(account, new String(password.getValue()), store); } else { ModificationItem[] mods = new ModificationItem[1]; try { BasicAttribute mod0 = new BasicAttribute(USER_PASSWORD_ATTRIBUTE, new String(password.getValue())); mods[0] = new ModificationItem(DirContext.REPLACE_ATTRIBUTE, mod0); store.getOperationManager().modifyAttribute(store.getBindingDN(account, true), mod0); } catch (Exception e) { throw new IdentityManagementException("Error updating password.", e); } } }
@Override protected LDAPStoreConfigurationBuilder readFrom(LDAPIdentityStoreConfiguration configuration) { super.readFrom(configuration); this.baseDN = configuration.getBaseDN(); this.bindCredential = configuration.getBindCredential(); this.bindDN = configuration.getBindDN(); this.url = configuration.getLdapURL(); this.activeDirectory = configuration.isActiveDirectory(); this.connectionProperties = configuration.getConnectionProperties(); this.pagination = configuration.isPagination(); this.uniqueIdentifierAttributeName = configuration.getUniqueIdentifierAttributeName(); for (Class<? extends AttributedType> attributedType: configuration.getMappingConfig().keySet()) { LDAPMappingConfiguration mappingConfiguration = configuration.getMappingConfig().get(attributedType); mapping(attributedType).readFrom(mappingConfiguration); } return this; } }
@Override protected LDAPStoreConfigurationBuilder readFrom(LDAPIdentityStoreConfiguration configuration) { super.readFrom(configuration); this.baseDN = configuration.getBaseDN(); this.bindCredential = configuration.getBindCredential(); this.bindDN = configuration.getBindDN(); this.url = configuration.getLdapURL(); this.activeDirectory = configuration.isActiveDirectory(); this.connectionProperties = configuration.getConnectionProperties(); this.pagination = configuration.isPagination(); this.uniqueIdentifierAttributeName = configuration.getUniqueIdentifierAttributeName(); for (Class<? extends AttributedType> attributedType: configuration.getMappingConfig().keySet()) { LDAPMappingConfiguration mappingConfiguration = configuration.getMappingConfig().get(attributedType); mapping(attributedType).readFrom(mappingConfiguration); } return this; } }