Автор Тема: Как правильно использовать ldapmodify  (Прочитано 16722 раз)

Виктор

  • Новичок
  • *
  • Сообщений: 5
  • FIN
    • Просмотр профиля
Добрый день, коллеги!
Возникла насущная проблема с обновлением пользователей в базе LDAP.
 У меня есть база данных, которая раз в сутки выгружает пользователей в .ldif файл, далее по крону, это дело с помощью команды ldapadd (ldapadd -x -c -D cn=manager,dc=nbs,dc=nvg,dc=ru -f /home/integration/LDIF/ldif_export.ldif -w туттипапароль )грузится в LDAP.
Но т.к. команда ldapadd стопорится, если видит уже существующие записи, я добавил аргумент "-c" , дабы пропускать дубли и добавлять только новые записи. С одной стороны это хорошо, новые записи исправно добавляются, но с другой, если у старой записи поменялся к примеру номер телефона, город, фамилия и т.д., инфа не обновляется, а для ее обновления надо удалить контакт и заново все прогрузить...(на мой взгляд это не наш метод, т.к. в LDAP есть записи которые заведены только в LDAP и их нет в общей базе из которой идет выгрузка).

Возникает закономерный вопрос, как можно обновлять записи в LDAP без их удаления и нового добавления? Поможет ли в этом команда ldapmodify?

egor

  • Администратор
  • Старожил
  • *****
  • Сообщений: 486
    • Просмотр профиля
Re: Как правильно использовать ldapmodify
« Ответ #1 : 24 Март 2015, 15:01:24 »
Здравствуйте, Виктор. ldapmodify действительно предназначен именно для внесения изменений в существующие записи каталога. Формат LDIF, который он принимает на вход, несколько сложнее, чем для ldapadd, но разобраться с этим проблем не составит. Основная проблема в другом -- как Вы собираетесь отслеживать, изменилась ли запись а БД и что именно в ней изменилось? Если Вы это сможете сделать, то формируйте отдельный ldif-файл для ldapadd, отдельный -- для ldapmodify и применяйте их оба.

Егор