запрет пользователю менять пароль более одного раза - openldap
Centos 7, openldap 2.4.44 (slapd)
настроил политику наложения паролей ppolicy. мне необходимо сделать так, чтобы юзер не смог изменить свой пароль более 1 раза (чтобы смог сменить пароль только один раз, после чего такой возможности у него не было бы). может кто-нибудь реализовывал подобно и сможет подсказать какими атрибутами/политиками я смогу добиться такого ограничения? в документации по ppolicy я не нашел атрибута/директивы, подходящих для такого кейса
мой кейс это что-то вроде метода подписки:
- создается учетная запись юзеру
- атрибутом политики pwdMaxAge задается время жизни пароля учетки (тем самым и ограничивается срок действия учетной записи, т.к. в таком кейсе просроченный пароль=неработающая учетка) 2.1 но ограничение жизни пароля в атрибуте pwdMaxAge можно обойти просто пересоздав пароль заново (сменить), и отсчет pwdMaxAge начнется сначала.
- после создания учетки юзеру направляется пароль, который он должен будет сменить на свой. 3.1 для смены пароля юзерами, был развернут self-service-password (https://github.com/ltb-project/self-service-password) - где юзеры могут его сменить введя присланный им пароль как «старый» и задав себе новый свой пароль - в этот момент обнуляются политики паролей pwdMaxAge, это ок.
теперь проблема: пользователь может даже через пол года войти на веб-форму и сменить себе пароль, тем самым обнулив отсчет pwdMaxAge и продлив срок действия пароля и учетной записи. поэтому и хочу ограничить количество попыток смены пароля до одной: когда юзер меняет присланный ему пароль на свой из пункта 3.1 и чтобы после этого не смог сменить пароль еще раз