Контекст: 64-разрядный клиент Win7, Windows Server 2003
Я вхожу на сервер с помощью MSTSC. Сервер работает под управлением Windows Server 2003, 32bit.
Я вызываю список принтеров и факсов из меню «Пуск». Я щелкаю правой кнопкой мыши принтер на сервере. Мне сказали, что у меня нет соответствующих привилегий и что я могу получить доступ только к вкладке «Безопасность».
В списке на этой вкладке указано, что администраторы домена обладают полными правами. Я в группе администраторов домена. Однако, похоже, у меня нет полных прав.
Принтер - RICOH Aficio SP 4210N. Управление печатью сообщает, что присутствуют 32-битные и 64-битные драйверы.
Есть идеи, почему права есть, а их нет?
Описание вашей проблемы похоже на возможное повреждение ACL. Чтобы исправить это, вам потребуется стать владельцем и исправить ACL.
Нажмите кнопку «Дополнительно» на вкладке «Безопасность». В следующем окне выберите «Владелец» и выберите нужного пользователя. Владельцем по умолчанию является локальная группа. %COMPUTERNAME%\Administrators
, нажмите «ОК».
Это исправит право собственности, вам все равно нужно будет исправить ACL, чтобы предоставить пользователям надлежащий доступ.
У нас возникла эта проблема после BSOD на нашем сервере печати. Поскольку у нас сотни общих принтеров, исправление владельца / ACL вручную было бы ... ... болезненным. Следующий командный файл (извините, наша проблема появилась раньше PowerShell
!) должно помочь.
Выгрузить список имен общих ресурсов печати в файл printers.txt
, затем запустите это. Тебе понадобиться Helge Klien's отличная утилита командной строки SetACL
.
@ECHO OFF
SET PRNSRV=your_print_server_name
FOR /F %%P in (printers.txt) DO (
ECHO Processing: %%P
ECHO Taking ownership
setacl -on "\\%PRNSRV%\%%P" -ot prn -actn setowner -ownr "n:Administrators"
ECHO Clear ACL
setacl -on "\\%PRNSRV%\%%P" -ot prn -actn ace -actn clear -clr "dacl,sacl"
ECHO Create default ACEs
setacl -on "\\%PRNSRV%\%%P" -ot prn -actn ace -ace "n:Administrators;p:full"
setacl -on "\\%PRNSRV%\%%P" -ot prn -actn ace -ace "n:CREATOR OWNER;p:man_docs"
setacl -on "\\%PRNSRV%\%%P" -ot prn -actn ace -ace "n:Everyone;p:print"
setacl -on "\\%PRNSRV%\%%P" -ot prn -actn ace -ace "n:Power Users;p:full"
)
Проверьте, есть ли у местных Administrators
группа все еще включает Domain Admins
. Если это не так, войдите в систему как локальный администратор и повторно добавьте группу.
Безопасность принтера была изменена, и ваша текущая учетная запись не может прочитать объект. Попробуйте использовать другую учетную запись или измените владельца на администраторов, а затем настройте безопасность так, как вам нужно.