Добавить пользовательский доступ к общей папке на удаленном компьютере

Моя цель - добавить пользователей в общую папку на удаленном сервере. Я знаю, что команда netshare может использоваться для добавления пользователей в локальную папку.

net share PathName=D:/Projects /GRANT:XXXX,FULL

Когда я запускаю вышеупомянутую команду на локальной машине, она работает нормально.

Так как общая папка присутствует на удаленном сервере, я попробовал wmic и параметры psExec. Но оба не работали. Не уверен, что мне здесь не хватает

wmic /node:ComputerName process call create "cmd.exe net share PathName=D:/Projects /GRANT:XXXX,FULL"

а также

psExec \\ComputerName cmd.exe "net share PathName=D:/Projects /GRANT:XXXX,FULL"

1 ответ

Решение

Предполагая, что вы используете Windows 8 (Server 2012) или новее, используйте Grant-SmbShareAccess Командлет и удаленный сеанс CIM:

$RemoteSession = New-CimSession -ComputerName RemoteComputerName
Grant-SmbShareAccess -Name ShareName -AccountName XXXX -AccessRights Full -CimSession $RemoteSession

На Windows 7 вы можете использовать Invoke-Command запустить net share команда на удаленной машине:

$RemoteSession = New-PSSession -ComputerName RemoteComputerName
Invoke-Command -Session $RemoteSession -ScriptBlock { net share PathName=D:/Projects /GRANT:XXXX,FULL }
Другие вопросы по тегам