Разное - python - модуль pysmbc

Ответить
Аватара пользователя
Vandheer

Разное - python - модуль pysmbc

Сообщение Vandheer »

Привет. Как передать пароль из модуля 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)
Аватара пользователя
shisik

Re: Разное - python - модуль pysmbc

Сообщение shisik »

А какая вообще задача стоит? Подключиться по самбе к удалённой машине и получить список расшареных папок? А при чём здесь локальный пользователь, ведь именно о нём будет получена информация с помощью pwd. Да и пароля там всё равно не будет по понятным причинам. В лучшем случае - хеш, а скорее всего вообще просто 'x' (у меня так). Так что неудивительно, что если удалённая шара защищена паролем, то войти под локальным юзером да без пароля не получается.
Аватара пользователя
Vandheer

Re: Разное - python - модуль pysmbc

Сообщение Vandheer »

можно ли как то зайти на шару без ввода пароля если пользователя является пользователем домена?
Аватара пользователя
shisik

Re: Разное - python - модуль pysmbc

Сообщение shisik »

Если сервер для входа требует пароль, то без пароля не войти. Или меняйте настройки сервера, чтоб он пароль не требовал. Другой вариант - явно укажите пароль в функции do_auth.
Ответить

Вернуться в «Программирование и базы данных»