OpenLdap 2.4. * Используется с плагином ppolicy
Я заметил, что многозначный атрибут pwdFailureTime добавляется в базу данных LDAP, но похоже, что он никогда не удаляется.
Есть ли простой способ сделать так, чтобы старые значения этого атрибута автоматически удалялись? Я не рад видеть, что база данных хранит все больше и больше этих записей.
Я могу отфильтровать резервные копии LDAP от ложных значений и повторно добавить всю БД с помощью slapadd, но было бы очень полезно более простое решение.
В pwdFailureTime
Атрибут удаляется, когда пользователь успешно выполняет привязку.
Он добавляется к каждому пользовательскому объекту, чтобы отслеживать, сколько неудачных привязок произошло с момента последней успешной привязки, что является частью общей точки использования ppolicy
overlay, поэтому выгружать и перезагружать базу данных, чтобы избавиться от них, на самом деле не имеет никакого смысла.
В pwdMaxFailure
Атрибут объекта политики устанавливает, сколько неудачных привязок отслеживается до действия, определенного параметром pwdLockout
атрибут срабатывает. По умолчанию он равен 0, что означает, что отслеживается неограниченное количество сбоев (что может объяснить наблюдаемое вами поведение), но если вы затем установите его на ненулевое число, вы затем активируете pwdLockout
который по умолчанию принимает значение true после такого количества сбоев. Это будет означать, что пользователи будут заблокированы в своей учетной записи, однако если пользовательские объекты накапливаются pwdFailureTime
Значения атрибутов до такой степени, что вам неудобно их видеть, это означает, что они все равно не связываются успешно.
Вы также можете попробовать установить pwdFailureCountInterval
атрибут вашего объекта политики, который, согласно документации, сбросит счетчик неудачных паролей после value
секунды, которые, как я полагаю, очищают любые pwdFailureTime
атрибуты для достижения этого, но затем вы меняете эвристику для отслеживания неудачных привязок.