@Override public void engineSetCertificateEntry(String alias, Certificate cert) throws KeyStoreException { List<ModificationItem> items = new LinkedList<>(); try { BasicAttribute attribute = new BasicAttribute(certificateAttribute); attribute.add(cert.getEncoded()); items.add(new ModificationItem(DirContext.REPLACE_ATTRIBUTE, attribute)); } catch (CertificateEncodingException e) { throw log.ldapKeyStoreFailedToSerializeCertificate(alias, e); } storeAttributes(alias, items); }
private BasicAttributes createSrvRecords() { BasicAttributes records = new BasicAttributes(); BasicAttribute record = new BasicAttribute("SRV"); // the structure of the service records is: // priority weight port hostname // for more information: http://en.wikipedia.org/wiki/SRV_record record.add("20 80 389 kdc3.springsource.com."); record.add("10 70 389 kdc.springsource.com."); record.add("20 20 389 kdc4.springsource.com."); record.add("10 30 389 kdc2.springsource.com"); records.put(record); return records; } }
private void collectModifications(int modificationType, Attribute attr, Collection values, Collection c) { if (values.size() > 0) { BasicAttribute modificationAttribute = new BasicAttribute(attr .getID()); for (Iterator iter = values.iterator(); iter.hasNext();) { modificationAttribute.add(iter.next()); } c .add(new ModificationItem(modificationType, modificationAttribute)); } }
private void collectModifications(int modificationType, Attribute attr, Collection values, Collection c) { if (values.size() > 0) { BasicAttribute modificationAttribute = new BasicAttribute(attr .getID()); for (Iterator iter = values.iterator(); iter.hasNext();) { modificationAttribute.add(iter.next()); } c .add(new ModificationItem(modificationType, modificationAttribute)); } }
/** * Set the LDAP objectClasses to the attributes. */ public void setLdapObjectClasses(Attributes attributes) { if (ldapObjectclasses != null) { BasicAttribute ocAttrs = new BasicAttribute("objectclass"); for (int i = 0; i < ldapObjectclasses.length; i++) { ocAttrs.add(ldapObjectclasses[i]); } attributes.put(ocAttrs); } }
/** * Set the LDAP objectClasses to the attributes. */ public void setLdapObjectClasses(Attributes attributes) { if (ldapObjectclasses != null) { BasicAttribute ocAttrs = new BasicAttribute("objectclass"); for (int i = 0; i < ldapObjectclasses.length; i++) { ocAttrs.add(ldapObjectclasses[i]); } attributes.put(ocAttrs); } }
@Override public void engineSetCertificateEntry(String alias, Certificate cert) throws KeyStoreException { List<ModificationItem> items = new LinkedList<>(); try { BasicAttribute attribute = new BasicAttribute(certificateAttribute); attribute.add(cert.getEncoded()); items.add(new ModificationItem(DirContext.REPLACE_ATTRIBUTE, attribute)); } catch (CertificateEncodingException e) { throw log.ldapKeyStoreFailedToSerializeCertificate(alias, e); } storeAttributes(alias, items); }
@Override public void engineSetCertificateEntry(String alias, Certificate cert) throws KeyStoreException { List<ModificationItem> items = new LinkedList<>(); try { BasicAttribute attribute = new BasicAttribute(certificateAttribute); attribute.add(cert.getEncoded()); items.add(new ModificationItem(DirContext.REPLACE_ATTRIBUTE, attribute)); } catch (CertificateEncodingException e) { throw log.ldapKeyStoreFailedToSerializeCertificate(alias, e); } storeAttributes(alias, items); }
@Override public void engineSetCertificateEntry(String alias, Certificate cert) throws KeyStoreException { List<ModificationItem> items = new LinkedList<>(); try { BasicAttribute attribute = new BasicAttribute(certificateAttribute); attribute.add(cert.getEncoded()); items.add(new ModificationItem(DirContext.REPLACE_ATTRIBUTE, attribute)); } catch (CertificateEncodingException e) { throw log.ldapKeyStoreFailedToSerializeCertificate(alias, e); } storeAttributes(alias, items); }
public void insertUser(AuthUser authUser) throws Exception { //添加一个用户条目时 objectclass 和 uid两个属性时必须的 BasicAttributes attrs = new BasicAttributes(); //条目的属性列表 attrs = ldapDatatrans.BeanToAttrs(authUser); BasicAttribute objclassSet = new BasicAttribute("objectclass"); //具有多个value的属性类别 objclassSet.add("top"); objclassSet.add("authuser"); //自定义objectclass attrs.put(objclassSet); //"id=" + account.getid() +"," + this.pathbase构成了树型目录里面唯一标志(usrs时自定义的) // dc=sinosoft.com为目录根节点 ou=user为根节点下的第一层组织节点 uid为用户帐户标识 ctx.createSubcontext("uid=" + authUser.getUid() +",ou=authuser," + this.pathbase, attrs); }
private static Attributes getRootPartitionAttributes( String defaultPartitionName) { BasicAttributes attributes = new BasicAttributes(); BasicAttribute objectClassAttribute = new BasicAttribute("objectClass"); objectClassAttribute.add("top"); objectClassAttribute.add("domain"); objectClassAttribute.add("extensibleObject"); attributes.put(objectClassAttribute); attributes.put("dc", defaultPartitionName); return attributes; }
public void setAttributeValue(String name, Object value) { // new entry if (!updateMode && value != null) { attrs.put(name, value); } // updating entry if (updateMode && isChanged(name, value)) { BasicAttribute attribute = new BasicAttribute(name); if (value != null) { attribute.add(value); } updatedAttrs.put(attribute); } }
@Test public void testCollectAttributeValues() { String expectedAttributeName = "someAttribute"; BasicAttribute expectedAttribute = new BasicAttribute(expectedAttributeName); expectedAttribute.add("value1"); expectedAttribute.add("value2"); BasicAttributes attributes = new BasicAttributes(); attributes.put(expectedAttribute); LinkedList list = new LinkedList(); LdapUtils.collectAttributeValues(attributes, expectedAttributeName, list); assertThat(list).hasSize(2); assertThat(list.get(0)).isEqualTo("value1"); assertThat(list.get(1)).isEqualTo("value2"); }
@Test public void testIterateAttributeValues() { String expectedAttributeName = "someAttribute"; BasicAttribute expectedAttribute = new BasicAttribute(expectedAttributeName); expectedAttribute.add("value1"); expectedAttribute.add("value2"); LdapUtils.iterateAttributeValues(expectedAttribute, handlerMock); verify(handlerMock).handleAttributeValue(expectedAttributeName, "value1", 0); verify(handlerMock).handleAttributeValue(expectedAttributeName, "value2", 1); }
@Test public void testModifyAttributes_MultiValueAdd() { BasicAttribute attr = new BasicAttribute("description", "Some other description"); attr.add("Another description"); ModificationItem[] mods = new ModificationItem[1]; mods[0] = new ModificationItem(DirContext.ADD_ATTRIBUTE, attr); tested.modifyAttributes(PERSON4_DN, mods); DirContextAdapter result = (DirContextAdapter) tested.lookup(PERSON4_DN); List<String> attributes = Arrays.asList(result.getStringAttributes("description")); assertThat(attributes).hasSize(3); assertThat(attributes.contains("Some other description")).isTrue(); assertThat(attributes.contains("Another description")).isTrue(); assertThat(attributes.contains("Some description")).isTrue(); }
@Test public void testModifyAttributes_MultiValueReplace() { BasicAttribute attr = new BasicAttribute("description", "Some other description"); attr.add("Another description"); ModificationItem[] mods = new ModificationItem[1]; mods[0] = new ModificationItem(DirContext.REPLACE_ATTRIBUTE, attr); tested.modifyAttributes(PERSON4_DN, mods); DirContextAdapter result = (DirContextAdapter) tested.lookup(PERSON4_DN); List<String> attributes = Arrays.asList(result.getStringAttributes("description")); assertThat(attributes).hasSize(2); assertThat(attributes.contains("Some other description")).isTrue(); assertThat(attributes.contains("Another description")).isTrue(); }
private Attributes setupAttributes() { Attributes attributes = new BasicAttributes(); BasicAttribute ocattr = new BasicAttribute("objectclass"); ocattr.add("top"); ocattr.add("person"); attributes.put(ocattr); attributes.put("cn", "Some Person4"); attributes.put("sn", "Person4"); return attributes; }
private Attributes setupAttributes() { Attributes attributes = new BasicAttributes(); BasicAttribute ocattr = new BasicAttribute("objectclass"); ocattr.add("top"); ocattr.add("person"); attributes.put(ocattr); attributes.put("cn", "Some Person4"); attributes.put("sn", "Person4"); attributes.put("description", "Some other description"); return attributes; }