Исправлена проверка пароля SMB ресурса

legacy27 3.6.1.9
parent a3b86b4f91
commit 08891037bc

@ -32,7 +32,7 @@ from calculate.lib.utils.ip import Pinger, IPError
from calculate.lib.utils.files import (getModeFile, removeDir,
pathJoin, tarLinks,
listDirectory, process, find, STDOUT,
sambaPasswordCheck, checkUtils)
checkUtils)
from calculate.lib.utils.samba import Samba, SambaError
from calculate.lib.utils.mount import isMount
from calculate.lib.utils.common import cmpVersion
@ -1116,7 +1116,7 @@ class Client(commandServer, encrypt, Desktop):
self.printERROR(_("Samba server not found in %s") % domain)
return False
def getDomainPassword(self, domain):
def getDomainPassword(self, host):
"""
Получить пароль для ввода в домен
"""
@ -1131,9 +1131,12 @@ class Client(commandServer, encrypt, Desktop):
_("Domain password for the desktop"), False)
self.printERROR(_("Wrong password"))
samba = Samba()
for pwdRemote in passwdQueue():
pwdRemote = pwdRemote or ""
if sambaPasswordCheck("client", pwdRemote, domain, "remote"):
domain = self.get_server_domainname(host)
if samba.password_check("client", pwdRemote, host, "remote",
domain):
self.clVars.Set('cl_remote_pw', pwdRemote)
return True
return False

@ -20,6 +20,7 @@ from calculate.lib.cl_lang import setLocalTranslate, getLazyLocalTranslate
from calculate.lib.utils.files import FilesError
from calculate.desktop.desktop import DesktopError
from calculate.client.client import ClientError
from calculate.lib.utils.samba import SambaError
from calculate.lib.cl_template import TemplatesError
_ = lambda x: x
@ -32,7 +33,8 @@ class ClClientAction(Action):
Ввести машину в домен или вывести
"""
# ошибки, которые отображаются без подробностей
native_error = (FilesError, ClientError, DesktopError, TemplatesError)
native_error = (FilesError, ClientError, DesktopError, TemplatesError,
SambaError)
successMessage = None
failedMessage = None

@ -20,6 +20,7 @@ from calculate.core.server.func import Action, Tasks
from calculate.lib.cl_lang import setLocalTranslate, getLazyLocalTranslate
from calculate.lib.utils.files import FilesError
from calculate.desktop.desktop import DesktopError
from calculate.lib.utils.samba import SambaError
from calculate.client.client import ClientError
from calculate.lib.cl_template import TemplatesError
from calculate.lib.utils.mount import isMount
@ -34,7 +35,8 @@ class ClClientSyncLoginAction(Action):
Синхронизировать локальный профиль с удаленным, подключить удаленные
ресурсы пользователя
"""
native_error = (FilesError, ClientError, DesktopError, TemplatesError)
native_error = (FilesError, ClientError, DesktopError, TemplatesError,
SambaError)
successMessage = None
failedMessage = None

@ -20,6 +20,7 @@ from calculate.lib.cl_lang import setLocalTranslate, getLazyLocalTranslate
from calculate.lib.utils.files import FilesError
from calculate.desktop.desktop import DesktopError
from calculate.client.client import ClientError
from calculate.lib.utils.samba import SambaError
from calculate.lib.cl_template import TemplatesError
_ = lambda x: x
@ -32,7 +33,8 @@ class ClPasswdAction(Action):
Изменить пароль доменного пользователя
"""
# ошибки, которые отображаются без подробностей
native_error = (FilesError, DesktopError, TemplatesError, ClientError)
native_error = (FilesError, ClientError, DesktopError, TemplatesError,
SambaError)
successMessage = (__("{cl_client_login}'s password changed\n"
"This modification will be applied when "

@ -19,6 +19,7 @@ from calculate.lib.datavars import VariableError, DataVarsError
from calculate.core.server.func import WsdlBase
from calculate.desktop.desktop import DesktopError
from client import ClientError
from calculate.lib.utils.samba import SambaError
from utils.cl_client import ClClientAction
from utils.cl_passwd import ClPasswdAction
from utils.cl_client_sync import (ClClientSyncLoginAction,
@ -61,6 +62,7 @@ class Wsdl(WsdlBase):
# объект переменных
'datavars': "client",
'native_error': (VariableError, DataVarsError,
SambaError,
ClientError, DesktopError),
# значения по умолчанию для переменных этого метода
'setvars': {'cl_action!': 'domain',
@ -105,6 +107,7 @@ class Wsdl(WsdlBase):
# объект переменных
'datavars': "client",
'native_error': (VariableError, DataVarsError,
SambaError,
ClientError, DesktopError),
# значения по умолчанию для переменных этого метода
'setvars': {'cl_action!': 'login'},
@ -139,6 +142,7 @@ class Wsdl(WsdlBase):
# объект переменных
'datavars': "client",
'native_error': (VariableError, DataVarsError,
SambaError,
ClientError, DesktopError),
# значения по умолчанию для переменных этого метода
'setvars': {'cl_action!': 'logout'},
@ -175,6 +179,7 @@ class Wsdl(WsdlBase):
# объект переменных
'datavars': "client",
'native_error': (VariableError, DataVarsError,
SambaError,
ClientError, DesktopError),
# значения по умолчанию для переменных этого метода
'setvars': {'cl_action!': 'passwd'},

Loading…
Cancel
Save