|
|
|
@ -405,16 +405,18 @@ conjunction with the 'login' or 'logout'")
|
|
|
|
|
# Базовый DN LDAP сервера
|
|
|
|
|
self.baseDN = False
|
|
|
|
|
# DN сервисов относительно базового
|
|
|
|
|
self.ServicesDN = "ou=Services"
|
|
|
|
|
|
|
|
|
|
self.relGrDN = 'ou=Groups'
|
|
|
|
|
self.relUsDN = 'ou=Users'
|
|
|
|
|
self.relServDN = 'ou=Unix'
|
|
|
|
|
self.relDN = self.addDN(self.relServDN,self.ServicesDN)
|
|
|
|
|
ServicesDN = "ou=Services"
|
|
|
|
|
relGrDN = 'ou=Groups'
|
|
|
|
|
relUsDN = 'ou=Users'
|
|
|
|
|
relServDN = 'ou=Unix'
|
|
|
|
|
relDN = self.addDN(relServDN,ServicesDN)
|
|
|
|
|
# DN пользователей, относительно базового DN
|
|
|
|
|
self.relUsersDN = self.addDN(self.relUsDN, self.relDN)
|
|
|
|
|
self.relUsersDN = self.addDN(relUsDN, relDN)
|
|
|
|
|
# DN групп, относительно базового DN
|
|
|
|
|
self.relGroupsDN = self.addDN(self.relGrDN, self.relDN)
|
|
|
|
|
self.relGroupsDN = self.addDN(relGrDN, relDN)
|
|
|
|
|
# DN Samba групп
|
|
|
|
|
self.relSambaGroupsDN = self.addDN(relGrDN,"ou=Samba",
|
|
|
|
|
ServicesDN)
|
|
|
|
|
# Объект хранения переменных
|
|
|
|
|
self.clVars = False
|
|
|
|
|
# Файл в ресурсе share для обработки подключения клиента
|
|
|
|
@ -428,7 +430,7 @@ conjunction with the 'login' or 'logout'")
|
|
|
|
|
self.sleeps = [0.5, 2, 5]
|
|
|
|
|
# DN хранения последнего посещенного пользователя
|
|
|
|
|
self.replHostsDN = self.addDN("ou=Worked","ou=Replication",
|
|
|
|
|
"ou=LDAP", self.ServicesDN)
|
|
|
|
|
"ou=LDAP", ServicesDN)
|
|
|
|
|
# Файл репликации
|
|
|
|
|
self.replLogoutFile = ".logout"
|
|
|
|
|
self.skipHomeFile = ["Home","Disks","FTP",
|
|
|
|
@ -509,11 +511,17 @@ conjunction with the 'login' or 'logout'")
|
|
|
|
|
return resSearch
|
|
|
|
|
|
|
|
|
|
def searchUnixGid(self, groupId):
|
|
|
|
|
"""Находит группу сервиса Unix по ёе id"""
|
|
|
|
|
"""Находит группу сервиса Unix по ёе id в ветке Unix"""
|
|
|
|
|
resSearch = self.searchLdapDN(str(groupId), self.relGroupsDN,
|
|
|
|
|
"gidNumber")
|
|
|
|
|
return resSearch
|
|
|
|
|
|
|
|
|
|
def searchSambaGid(self, groupId):
|
|
|
|
|
"""Находит группу сервиса Unix по ёе id в ветке Samba"""
|
|
|
|
|
resSearch = self.searchLdapDN(str(groupId), self.relSambaGroupsDN,
|
|
|
|
|
"gidNumber")
|
|
|
|
|
return resSearch
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def getLdapObjBind(self, host, printError=True):
|
|
|
|
|
"""Получаем объект ldapFunction
|
|
|
|
@ -590,6 +598,10 @@ conjunction with the 'login' or 'logout'")
|
|
|
|
|
searchGroup = self.searchUnixGid(gid)
|
|
|
|
|
if searchGroup and searchGroup[0][0][1].has_key('cn'):
|
|
|
|
|
group = searchGroup[0][0][1]['cn'][0]
|
|
|
|
|
else:
|
|
|
|
|
searchGroup = self.searchSambaGid(gid)
|
|
|
|
|
if searchGroup and searchGroup[0][0][1].has_key('cn'):
|
|
|
|
|
group = searchGroup[0][0][1]['cn'][0]
|
|
|
|
|
if searchUser[0][0][1].has_key('cn'):
|
|
|
|
|
fullName = searchUser[0][0][1]['cn'][0]
|
|
|
|
|
if searchUser[0][0][1].has_key('mail'):
|
|
|
|
|