python: как перечислить членство в локальной группе windows - PullRequest
1 голос
/ 18 мая 2011

Мне нужно проверить членство в группах указанных учетных записей.

Для данной учетной записи 'X' является ли она членом групп 'A' и 'B'

Это локальные учетные записи Windows насервер 2003 года, а не DC, и он не подключается к DC.

Вот ответ, который я сформировал, указав в правильном направлении

import win32net
import platform
import getpass

#Get current hostname and username
sHostname = platform.uname()[1]
sUsername = getpass.getuser()

#Define account memberships to test as false
memberAdmin = False
memberORA_DBA = False

for groups in win32net.NetUserGetLocalGroups(sHostname,sUsername):
    #If membership present, set to true
    if groups == 'Administrators':
        print "member of admin"
        memberAdmin = True

    if groups == 'ORA_DBA':
        print "member of ORA_DBA"
        memberORA_DBA = True

#if all true pass, else fail
if (memberAdmin == True) and (memberORA_DBA == True):
    print "membership is good"
else:
    print "current account does not have the proper group membership"

1 Ответ

2 голосов
/ 18 мая 2011

Вам необходимо использовать Python Win32 Extensions для взаимодействия с Windows. Я думаю, что некоторые методы в модуле win32net помогут вам получить необходимую информацию.

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