Как я могу изменить срок действия пароля в Windows, используя Python? - PullRequest
4 голосов
/ 26 февраля 2009

Как я могу изменить срок действия пароля на «никогда» в Windows XP для локального пользователя с Python? У меня есть модули PyWIN и WMI, но у меня нет решения. Мне удалось запросить текущие настройки через WMI (на основе класса Win32_UserAccount), но как его изменить?

Ответы [ 3 ]

1 голос
/ 02 марта 2009

Если вы запускаете свой скрипт на Python с ActvePython для Active Directory, вы можете использовать что-то вроде этого:

import win32com.client
ads = win32com.client.Dispatch('ADsNameSpaces')
user = ads.getObject("", "WinNT://DOMAIN/username,user")
user.Getinfo()
user.Put('userAccountControl', 65536 | user.Get('userAccountControl'))
user.Setinfo()

Но если ваш питон работает под Unix, вам нужно две вещи для общения с Active Directory: Kerberos и LDAP. Если у вас есть соединение LDAP с аутентификацией SASL (GSSAPI (KRB5)) с вашим сервером Active Directory, вы получаете доступ к атрибуту userAccountControl целевого пользователя.

userAccountControl - это целочисленный атрибут, рассматриваемый как битовое поле, в котором необходимо установить бит DONT EXPIRE PASSWORD. См. эту статью базы знаний для значений битов.

0 голосов
/ 02 марта 2009

Для этого вам могут потребоваться полномочия администратора, поэтому обратите внимание на повышение текущего процесса или запуск нового процесса с большим количеством привилегий. (Т.е. что-то вроде UAC Vista, но на XP.)

Не могу помочь с деталями, хотя. : - /

0 голосов
/ 26 февраля 2009

Для этого изменения потребуются разрешения администратора, которые могут (или не могут) вызывать проблемы внутри PyWin32. Я не вижу прямого способа сделать это изменение из скрипта Python, но я уверен, что это можно автоматизировать, используя другой метод.

Эта ветка MSFN содержит информацию, которая поможет вам, или хотя бы начало:

http://www.msfn.org/board/Password-Expires-Chang-t115757.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...