Попытка включить учетную запись пользователя и получение ошибки ниже.Если я сразу перехожу к этой машине с Windows после создания пользователя (с помощью Java API) и обновляю пароль (вручную с помощью интерфейса на машине с Windows), например «password1», а затем пытаюсь включить пароль с помощью Java, он работает нормально.
Вот как я устанавливаю пароль при создании пользователя
BasicAttribute basicAttribute1=new BasicAttribute("userPassword","password1".getBytes(StandardCharsets.US_ASCII));
context.setAttribute(basicAttribute1);
Затем пытаюсь изменить управление useraccount на 512 и получаю
"errorMessage": "[LDAP: error code 53 - 0000052D: SvcErr: DSID-031A12D2, problem 5003 (WILL_NOT_PERFORM), data 0\n\u0000]; nested exception is javax.naming.OperationNotSupportedException: [LDAP: error code 53 - 0000052D: SvcErr: DSID-031A12D2, problem 5003 (WILL_NOT_PERFORM), data 0\n\u0000]; remaining name 'CN=SachinVTendulkar,OU=SDCWASD001,OU=Users,OU=Mycity,OU=Enterprise Support'"
Кажется, я не правильно устанавливаю пароль при создании пользователя с Java- Я создаю пользователя с userAccountControl-514 и паролем вместе с другими атрибутами, такими как имена и т. Д. (Сначала я хочу создать в отключенном режиме)
Затем, когда я просто пытаюсь включить пользователя, возникает эта проблема.И для того же пользователя, если я иду на машину Windows и обновляю пароль, а затем пытаюсь включить его с помощью Java, он работает нормально - так что исключаю другие проблемы, такие как ldaps и т. Д.
Журналы, когда я создаю пользователя для справки:
журнал создания пользователя: создание нового пользователя: JohnSmith, в DN: CN = JohnSmith, OU = SDCWASD001, OU = Users, OU = MyCity, OU = Enterprise Support, с контекстом: org.springf.ldap.core.DirContextAdapter: dn = CN = JohnSmith, OU = SDCWASD001, OU = Пользователи, OU = MyCity, OU = Поддержка предприятия {mail=adsadsa51@test.com, Описание = Тестовая учетная запись, CN = JohnSmith, objectclass [0] = top, objectclass[1] = Person, objectclass [2] = organizPerson, objectclass [3] = пользователь, userPassword = summer01, sAMAccountName = adsadsa51, userPrincipalName=adsadsa51@test.com, данное имя = Джон, displayName = JohnSmith, имя = JOHNSMITH, имя_Датчика_Индикации0, sn = Smith, userAccountControl = 514}
Затем, чтобы включить пользователя, я делаю следующее и получаю эту ошибку (я делаю это в отдельном вызове)
ModificationItem[] mods=new ModificationItem[1];
mods[0]=new ModificationItem(DirContext.REPLACE_ATTRIBUTE,new BasicAttribute("userAccountControl",Integer.toString(512)));
ldapTemplate.modifyAttributes(dn, mods);