Я использую Spring LDAP для создания новых учетных записей пользователей в Active Directory. Это отлично работает, однако, когда я добавляю атрибут EmployeeId, я получаю исключение javax.naming.directory.InvalidAttributeValueException (атрибут не найден). Этот атрибут не отображается по умолчанию, и он был включен в нашей Active Directory — я могу увидеть его в списке атрибутов, если я выполняю поиск с помощью Spring LdapQuery. Какие-нибудь хитрости для установки EmployeeId через LDAP? Код прост, и я подозреваю, что это будет какой-то параметр конфигурации AD.
DirContextAdapter context = new DirContextAdapter(dn);
context.setAttributeValues("objectclass", new String[] { "person", "user" });
context.setAttributeValue("displayName", employee.getFullName());
context.setAttributeValue("givenName", employee.getFirstName());
context.setAttributeValue("sn", employee.getLastName());
context.setAttributeValue("cn", employee.getCn());
**context.setAttributeValue("employeeID", employee.getEmployeeID());**
context.setAttributeValue("sAMAccountName", employee.getAccountName());
...
ldapTemplate.bind(context);
employee.getEmployeeID()
? были ли у вас права на обновление (только администратор домена) для добавления/изменения этого значения? msdn.microsoft.com/ en-us/library/windows/desktop/ - person barthel   schedule 09.07.2015organizationalPerson
как дополнительныйobjectClass
. АтрибутemployeeID
является атрибутом Организации-Лица. - person barthel   schedule 09.07.2015'context.setAttributeValues("objectclass", new String[] { "person", "user", "organizationalPerson" });
javax.naming.directory.InvalidAttributeValueException: неправильное значение атрибута "employeeId" - person user416316   schedule 09.07.2015employee.getEmployeeID()
String
или, может быть,null
? - person barthel   schedule 09.07.2015