diddi100
Goto Top

Druckerberechtigungen mit SetAcl ändern

Hallo zusammen.
Ich habe ein kleines Problem zu bewältigen.
Folgendes:
Ich muss auf verschiedenen Druckservern für einen User,den es nicht in einer anderen Gruppe gibt,das Recht vollzugriff auf read beschränken.Das sieht ungefähr so aus:

D:\path\setacl.exe –on \\abagbm033a.ubm.hallormunicipal.biz\dk-jt-hp500 -ot printer -actn ubm –act « n :useromain\username ;p :read »

soweit so gut,aber dieser User befindet sich auf verschieden Druckservern mit ca 300 Druckern.Ich habe von jedem Server eine Exelliste mit Druckernamen.
Mein Problem besteht darin,ich möchte nicht 300 Drucker einzeln ändern,sonder die Exellisten mit einbinden.Leider habe ich zur zeit keinen Plan,wie ich das anstellen soll.
Ich hoffe ,das mir einer helfen kann.

Content-Key: 160570

Url: https://administrator.de/contentid/160570

Printed on: April 19, 2024 at 09:04 o'clock

Member: bastla
bastla Feb 11, 2011 at 07:21:53 (UTC)
Goto Top
Hallo diddi100 und willkommen imForum!

Im einfachsten Fall speicherst Du die Excel-Datei im CSV-Format und gehst die entstandene Liste per Batch durch - unter der Annahme, dass Servername und Druckername in getrennten Spalten stehen, (ungetestet) etwa so:
@echo off & setlocal
set "Liste=D:\Druckerliste.csv"  

for /f "usebackq tokens=1-2 delims=;" %%i in ("%Liste%") do echo D:\path\setacl.exe –on "\\%%i\%%j" -ot printer -actn ubm –act « n :useromain\username ;p :read »  
pause
In dieser Fassung werden die einzelnen Befehle (wegen des enthaltenen "echo") nur (zum Testen) angezeigt - wenn das Ergebnis vernünftig aussieht, einfach dieses "echo" entfernen ...

Grüße
bastla
Member: diddi100
diddi100 Feb 11, 2011 at 08:08:23 (UTC)
Goto Top
Hallo bastla
Danke für deine schnelle Antwort.Ich kann deinen Tip erst am Montag verwirklichen,da ich leider krank bin.
Werde dich über den ev. Erfolg informieren.Nochmals Danke

Gruß

diddi100
Mitglied: 60730
60730 Feb 11, 2011 at 08:41:12 (UTC)
Goto Top
moin,

hast du meinen Rat also befolgt face-wink

Ps:
Du kannst das doch probieren - wie Bastla geschrieben hat - solange das echo da drin steht - zeigt der nur an und du mußt nur deine gewünschte Zeile - von der du weißt - dass die funktionaniert - mit dem "echo" Zeilen von bastla optisch vergleichen.

Gruß & gute Besserung
Member: diddi100
diddi100 Feb 13, 2011 at 15:33:23 (UTC)
Goto Top
Hallo.
Ich bin zur zeit etwas schwer von begriff.
wie kann ich das denn jetzt richtig einsetzen

D:\path\setacl.exe –on \\bmugbm009a.bmu.buchermunicipal.biz\dk-jt-hp500 -ot printer -actn bmu –act « n :useromain\username ;p :read »
die Listen heissen Druckerliste1.cvs usw
Member: bastla
bastla Feb 13, 2011 at 17:52:14 (UTC)
Goto Top
Hallo diddi100!

Eigentlich war ich davon ausgegangen, dass alle Einträge sich in einer einzigen Excel- (und dann CSV)-Datei befänden - wenn dem nicht so ist, aber zumindest der Satzaufbau stimmt (1. Spalte Servername, 2. Spalte Druckername) und es einen gemeinsamen Namensbestandteil (zB "Druckerliste") gibt, könntest Du das entweder mit einer weiteren Schleife über die CSV-Dateien hinweg erledigen, oder einfacher mit:
@echo off & setlocal
set "Listen=D:\Druckerliste*.csv"  

for /f "usebackq tokens=1-2 delims=;" %%i in ('type "%Listen%" 2^>nul') do echo D:\path\setacl.exe –on "\\%%i\%%j" -ot printer -actn ubm –act « n :useromain\username ;p :read »  
pause
Grüße
bastla
Member: diddi100
diddi100 Feb 13, 2011 at 18:20:57 (UTC)
Goto Top
Hallo.
Ich bin zur zeit etwas schwer von begriff.
wie kann ich das denn jetzt richtig einsetzen

D:\path\setacl.exe –on \\bmugbm009a.bmu.buchermunicipal.biz\dk-jt-hp500 -ot printer -actn bmu –act « n :useromain\username ;p :read »
die Listen heissen Druckerliste1.cvs usw