python - модуль pysmbc
Привет. Как передать пароль из модуля pwd в pysmbc. При операции ctx.opendir('smb://IBM').getdents() выдает ошибку smbc.PermissionError: (1, 'Operation not permitted)
Код:
import smbc
import pwd
import os
def do_auth (svr, shr, wg, un, pw):
return ('SEVEN.LOCAL', user_info.pw_name , user_info.pw_passwd)
user_info = pwd.getpwnam(pwd.getpwuid(os.getuid()).pw_name)
ctx = smbc.Context(auth_fn=do_auth)
entries = ctx.opendir('smb://IBM').getdents()
for entry in entries:
print (entry.name)
|
А какая вообще задача стоит? Подключиться по самбе к удалённой машине и получить список расшареных папок? А при чём здесь локальный пользователь, ведь именно о нём будет получена информация с помощью pwd. Да и пароля там всё равно не будет по понятным причинам. В лучшем случае - хеш, а скорее всего вообще просто 'x' (у меня так). Так что неудивительно, что если удалённая шара защищена паролем, то войти под локальным юзером да без пароля не получается.
|
можно ли как то зайти на шару без ввода пароля если пользователя является пользователем домена?
|
Если сервер для входа требует пароль, то без пароля не войти. Или меняйте настройки сервера, чтоб он пароль не требовал. Другой вариант - явно укажите пароль в функции do_auth.
|
Время: 18:01.
© OSzone.net 2001-