Das Print Management Tool (PMC) ermöglicht die Setzung der nötigen Security Rechte entweder auf Druckserver- oder Druckerqueuebasis.

Was man aber dazu wissen muss, ist dass die Gruppen und Rechte, welche in dem Security Tab unter den Properties des Druckservers gesetzt werden, nur auf neue Druckerqueues übetragen werden welche man danach neu erstellt.
Die neuen Security Einstellungen werden nicht auf schon bereits bestehende Druckerqueues übertragen.

Dieses Verhalten kann von einigen Admins als fehlerhaft gesehen werden, ist aber ein vom Developement Team programiertes Verhalten, also by Design.

Erklärung für dieses by Design Verhalten:

Man will nicht dass Security Einstellungen der existierenden Druckerqueues überschrieben werden, da andere Druckerqueue spezifische Security Einstellungen verloren gehen können, was wiederum zu unerwünschten Zugriffsrechten führen kann. Die Vereinigung der Zugriffsrechte ist nicht praktisch da es keine Möglichkeit gibt zu wissen, ob eine "neue" ACL genau gleich wie eine "alte" ACL ist, welche mit Absicht entfernt wurde.


Hier auch ein Screenshot als Vergleich der Zugriffsrechte zwischen Druckserver, bereits existierende Druckerqueue (Generic01) und eine Druckerqueue (Generic02) welche, nach der Setzung der Zugriffsrechte auf dem Druckserver, erstellt wurde:





Mir bekannte Workarounds um die Zugriffsrechte des Druckserver auf die bereits bestehenden Druckerqueues zu setzen sind folgende:


1. Export und Import der Druckerqueues durch PMC.
Beim Import der exportierten Druckerqueues bekommen diese auch die neuen Zugriffsrechte des Druckservers übertragen.





Während meinen Tests ist mir auch aufgefallen dass der "Overwrite existing printers" Mode nicht auch die Zugriffsrechte setzt.
Nur ein Löschen der Druckerqueues, nach dem Export gefolgt vom Import, hat dann auch die Zugriffsrechte gesetzt.




Zugriffsrechte nach dem Import der Druckerqueues:




2. Setprinter.exe Tool benutzen.
Dieses Tool ist unter dem Windows 2003 Resource Kit Tools zu finden: http://www.microsoft.com/en-us/download/details.aspx?id=17657

Die Idee dahinter ist eine Druckerqueue mit den nötigen Zugriffsrechten aufzusetzen und den Security Descriptor auf alle anderen Druckerqueues zu übertragen.

> Dazu folgende Parameter benutzen:

Setprinter
–show “Printer Name” 3
    [Dieser Befehl zeigt den Security Descriptor des Druckers]

 

> Danach muss dieser Security Descriptor auf allen Druckqueues übertragen werden:

 SetPrinter \\PrintServerName 3 pSecurityDescriptor=”Security Descriptor in SDDL Format”


!!! Wenn Sie einen dieser 2 Workarounds benutzen wollen, testen Sie diese bitte vorerst in einer Testumgebung gründlich aus. !!!
Dieser Beitrag verleiht keine Garantie oder Rechte.


Support Engineer - Platforms Core Team
Cezar Poenaru


--- Disclaimer ---/

This posting is provided "AS IS" with no warranties, and confers no rights.

The entire risk arising out of the use or performance of the sample scripts and
documentation remains with you. In no event shall Microsoft, its authors, or
anyone else involved in the creation, production, or delivery of the scripts be
liable for any damages whatsoever (including, without limitation, damages for
loss of business profits, business interruption, loss of business information,
or other pecuniary loss) arising out of the use of or inability to use the
sample scripts or documentation, even if Microsoft has been advised of the
possibility of such damages.
--- Disclaimer ---\