bird70
14-09-2022, 18:57
Здравствуйте.
Потребовалось расшарить принтер, проброшенный в RDP сеансе. Нашел скрипт, где надо стать владельцем принтера, затем дать себе полные права и тогда его можно расшарить.
"%SystemRoot%\Application Compatibility Scripts\acregl.exe" "%TEMP%\DefPrint.cmd" DefaultPrinter "HKCU\Software\Microsoft\Windows NT\CurrentVersion\Windows" "Device" ""
call "%TEMP%\DefPrint.cmd"
for /f "tokens=1 delims=," %%i in ('"echo %DefaultPrinter%"') do set "PRINTER=%%i"
SETACL -on "%PRINTER%" -ot prn -actn setowner -ownr n:%USERNAME%
SETACL -on "%PRINTER%" -ot prn -actn ace -ace "n:%USERNAME%;p:full"
rundll32 printui.dll,PrintUIEntry /Xs /n "%PRINTER%" sharename "PRN_%USERNAME%" attributes +Shared
Выполнять надо у пользователя без прав администратора. Добавил пользователя в "Операторы печати".
Дал полные права "Операторам печати" на вкладке безопасность в "Свойствах сервера печати". Дал права на папку "C:\Windows\System32\spool\PRINTERS".
На контроллере домена скрипт выполняется у пользователя без прав администратора нормально.
На рядовом сервере SETACL не выполняется, пишет что требуются права администратора.
Не ожидал, что у рядового сервера права у группы "Операторы печати" отличаются от прав на контроллере домена.
Посоветуйте, что сделать, чтобы на рядовом сервере SETACL сработала без админских прав.
Потребовалось расшарить принтер, проброшенный в RDP сеансе. Нашел скрипт, где надо стать владельцем принтера, затем дать себе полные права и тогда его можно расшарить.
"%SystemRoot%\Application Compatibility Scripts\acregl.exe" "%TEMP%\DefPrint.cmd" DefaultPrinter "HKCU\Software\Microsoft\Windows NT\CurrentVersion\Windows" "Device" ""
call "%TEMP%\DefPrint.cmd"
for /f "tokens=1 delims=," %%i in ('"echo %DefaultPrinter%"') do set "PRINTER=%%i"
SETACL -on "%PRINTER%" -ot prn -actn setowner -ownr n:%USERNAME%
SETACL -on "%PRINTER%" -ot prn -actn ace -ace "n:%USERNAME%;p:full"
rundll32 printui.dll,PrintUIEntry /Xs /n "%PRINTER%" sharename "PRN_%USERNAME%" attributes +Shared
Выполнять надо у пользователя без прав администратора. Добавил пользователя в "Операторы печати".
Дал полные права "Операторам печати" на вкладке безопасность в "Свойствах сервера печати". Дал права на папку "C:\Windows\System32\spool\PRINTERS".
На контроллере домена скрипт выполняется у пользователя без прав администратора нормально.
На рядовом сервере SETACL не выполняется, пишет что требуются права администратора.
Не ожидал, что у рядового сервера права у группы "Операторы печати" отличаются от прав на контроллере домена.
Посоветуйте, что сделать, чтобы на рядовом сервере SETACL сработала без админских прав.