3

Я использую OSX 10.11.2, и у меня есть скрипт, который уже создает новых пользователей, используя dscl . Я хотел бы назначить новым пользователям программно временный пароль, действительный, например, на 24 часа, который я могу распространять по электронной почте. Затем пользователь должен войти в систему (например, SSH) в течение этого льготного времени и быть вынужден изменить свой пароль (passwd). Вновь выбранный пароль не должен иметь срока действия. Если вместо этого временный пароль истекает, учетная запись пользователя должна быть автоматически отключена.

Я не хочу использовать какой-либо сервер аутентификации. Все пользователи являются локальными.

Я думаю, что это можно взломать с помощью crontab и чтения passwordLastSetTime из dscl . -read /Users/<username> accountPolicyData . Но не проще ли?

Читая https://www.jamf.com/jamf-nation/discussions/18574/user-password-policies-on-non-ad-machines, я попытался использовать pwpolicy , но почему-то более простые DEPRECATED опции, похоже, не применяются по OSX. Кроме того, из-за того, что я играю с pwpolicy , локальные пользователи больше не могут менять свои собственные пароли, они получают passwd: general failure .

Чтение https://www.jamf.com/jamf-nation/discussions/9559/password-expiration-warning-without-active-directory, PasswordPolicyOptions представляется полезным. К сожалению dscl . read /Users/<username> PasswordPolicyOption возвращает No such key: PasswordPolicyOptions , возможно, из-за моих предыдущих (разрушительных) экспериментов с pwpolicy .

У кого-нибудь есть предложения, как лучше всего этого добиться? Спасибо!

0