Изменить пароль или добавить пользователя в LDAP с переполнением стека

После недавнего обновления на моем сервере LDAP (с использованием Directory Server v2.1-2428 на NAS-устройстве Synology под управлением DSM 6, последняя версия Subversion) я не могу изменить пароль (или нового пользователя, содержащего пароль) с помощью PHP.

Перед обновлением я использовал PHP ldap_add или ldap_mod с атрибутом userPassword. Однако теперь я получаю сообщение об ошибке Warning: ldap_add(): Add: Constraint violation при попытке создать новый пароль пользователя.

При создании нового пользователя через административный интерфейс администратора на NAS я могу найти запись userPassword, которая отображается в базе данных следующим образом (слегка изменена для конфиденциальности): {crypt}$6$e49q9SvU$.pSl1C8Ew6WTu24yipUI8kjx7qv2GxWhKAUOBmuAVeRmJ1JV/WvWriVYZJeDDtBxekeepatdaKl0ulQdjsmCP.

Это означает, что база данных принимает записи пароля SSHA-512, верно?

Я пытался добавить новый пароль:

  1. Добавление точно такого же хэша пароля, как показано выше, как userPassword
    -> Ошибка нарушения ограничения
  2. Попытка найти алгоритм паролей в исходном коде NAS. Это выявило следующую строку: rootpw {CRYPT}$1$CL$0fRYicA9KsmHaiV1SRj5q/,
    Простое использование этого в качестве нового пароля также не работает.
  3. Посмотрите на другую функцию PHP, похожую на команду Linux ldappasswd, но, похоже, она не существует для PHP.

Конечно, я бы предпочел использовать надлежащий механизм хеширования / шифрования, такой как SSHA-512, но я не уверен, что есть и что не поддерживается сервером каталогов.

Я действительно надеюсь, что кто-то может сделать мне шаг вперед! Если я должен уточнить вещи, пожалуйста, дайте мне знать.

0

Решение

Нарушение ограничений при попытке изменить пароль похоже на применение политики паролей сервера каталогов.
Журналы сервера каталогов должны содержать более подробную информацию об ошибке, но возможно, что политика была настроена на отклонение паролей, которые уже использовались (например, последние 3 пароля). Политика паролей сервера каталогов может навязывать множество проверок и ограничений на пароли: длина, повторное использование не допускается, изменения в наборе символов, отсутствие простых слов …
Возможно, вам придется проверить документацию сервера каталогов Synology или заметки о выпуске, чтобы узнать подробности политики паролей по умолчанию.

0

Другие решения

В конце концов, решение состояло в том, чтобы снова и снова обращаться к Synology за помощью в поиске решения. Они изменили политику паролей обратно на версию до обновления до v2.1-2428, теперь она снова работает.

Если будет доступно другое решение, совместимое с последними версиями OpenLDAP, совместное использование будет с благодарностью.

0

По вопросам рекламы [email protected]