redryder
Goto Top

User in Domänengruppe verscheiben per batch

Hallo Ihr Admins da draussen.
Ich kämpfe schon seid 2 Tagen mit einem Problem und finde keine Hilfe.

Ich möchte für einen User in der Domäne ein Anmelde Skript schreiben, das folgendes machen soll:

Den User in eine Admingruppe verscheiben, Uhrzeit synchronisieren, Netzlaufwerke anbinden, Netzwerkdrucker anbinden und den User wieder aus der Admingruppe entfernen.

Das Skript sieht bis jetzt folgender massen aus:

rem @echo off

echo dies ist ein Anmelde Skript

set user=melzer\%username%

pause
net group administratoren %user% /add /domain

net time \\Primtx200 /set /y
pause
net use R: \\Primtx200\einkauf /persistent:no
net use S: \\Primtx200\dokumente /persistent:no
net use T: \\Primtx200\dokumente\A - Preisliste u Marktberichte Einkauf
pause
rundll32 printui.dll,PrintUIEntry /in /n \\pc23\Zimmi_Claudia
rundll32 printui.dll,PrintUIEntry /in /n \\primtx200-2\CanoniR1600 Einkauf 2. Schacht
rundll32 printui.dll,PrintUIEntry /in /n \\primtx200-2\iR 1610-Einkauf
rundll32 printui.dll,PrintUIEntry /y /n \\pc23\zimmi_claudia
pause

net group administratoren %user% /delete /domain

pause

Anmerkung:
Der User ist einfacher Domänen-Benutzer. Ich wollte ihn temporär in die Gruppe der Domänen-Admins shcieben ( was daran scheitert, dass in der Batch das ä nicht als solches erkannt wird.
Deshalb wollte ich ihn in ide Administratorengruppe des SRV schieben. Leider schlägt auch das fehl.

Kann mir jemand helfen bzw. hat jemand eine andere Idee, wie ich das lösen kann?
Ich wäre sehr dankbar.
Mit besten Grüßen aus dem verscheneiten Hof

Content-ID: 102357

Url: https://administrator.de/forum/user-in-domaenengruppe-verscheiben-per-batch-102357.html

Ausgedruckt am: 23.12.2024 um 06:12 Uhr

hq47110815
hq47110815 21.11.2008 um 11:40:23 Uhr
Goto Top
Moin!

ich würde den Benutzer gar nicht erst in eine andere Gruppe verschieben. Starte einfach die Befehle, die Admin-Rechte brauchen unter einem anderen Benutzer.

Das kannst du z.B. mit Auto-It ganz einfach machen.

Auto-It kompiliert dir aus deinem Script dann eine Exe, die du in dein Logonscript schreibst.
hq47110815
hq47110815 21.11.2008 um 11:45:26 Uhr
Goto Top
PS: Die Funktionen, die du brauchst lauten:

RunAs, wenn das Script nicht warten soll bis der Befehl ausgeführt wurde
RunAsWait, wenn das Script warten soll

Steht aber alles mit beispielen in der Hilfe von AutoIt
dog
dog 21.11.2008, aktualisiert am 18.10.2012 um 18:36:34 Uhr
Goto Top
Hallo,

1. Uhrzeit synchronisieren machst du am besten per Startskript und nicht per Loginscript, dann hast du kein Rechteproblem.

2. Für Netzlaufwerke einbinden muss ein Benutzer kein Admin sein, das geht auch so ganz leicht.
Hier ein Beispielscript:
' Q: [content:11041]  

' Variablen deklarieren  
Dim objNetwork, objShell
Dim strMyName, strMyDriveLetter, strMyRemotePath
Set objNetwork = CreateObject("WScript.Network")  
Set objShell = CreateObject("Shell.Application")  

Public Function mapMyDrives(strMyName, strMyDriveLetter, strMyRemotePath)
	objNetwork.MapNetworkDrive strMyDriveLetter, strMyRemotePath
	objShell.NameSpace(strMyDriveLetter).Self.Name = strMyName
	mapMyDrives = ""  
End Function

' Laufwerke verbinden  
On Error Resume Next
mapMyDrives "Anzeigename", "P:", "\\server\share"  

3. Auch für Drucker brauchst du keine Adminrechte.
Erlaube dem User per GPO einfach Drucker einzubinden aber blende das Interface dafür aus.
Dann geht das per Batch:
rundll32 printui.dll,PrintUIEntry /q /in /n "\\server\druckername"   

4. NIEMALS solltest du einen normalen Benutzer für so etwas in die Administratorengruppe schieben. Ist er nämlich drin und dann bricht das Script ab ist er auch weiterhin drin und kann Unfung treiben.

Grüße

Max
hq47110815
hq47110815 21.11.2008 um 12:21:04 Uhr
Goto Top
Zitat von @dog:

4. NIEMALS solltest du einen normalen Benutzer für so etwas in
die Administratorengruppe schieben. Ist er nämlich drin und dann
bricht das Script ab ist er auch weiterhin drin und kann Unfung
treiben.

Dito

Zu deinen Druckern:

Wenn du die so verbindest, wird auch automatisch der Treiber vom Server geladen:
rundll32 printui.dll,PrintUIEntry /l \\SERVERNAME\print$\PFADZUMTREIBER /u /in /n "\\SERVERNAME\DRUCKERNAME"

Funktioniert bei uns einwandfrei. (Windows 2k8 + XP & Vista Clients)
Redryder
Redryder 24.11.2008 um 11:04:56 Uhr
Goto Top
Hallo, vielen Dank an alle Helfer. Ich werde das ganze mal mit Auto-it ausprobieren.
eine kurze Frage noch an dog (Max) wo liegt der Unterscheid zw. Start und Login Skript (wo liegt welches).
Danke vielmals..

Grüße aus Hof
dog
dog 24.11.2008 um 11:10:02 Uhr
Goto Top
Startskripts werden beim Hochfahren des Computers ausgeführt (bevor man sich einloggen kann)
Loginscripts werden beim Login des Users ausgeführt (bevor der Desktop erscheint)

Ausgehend davon, dass du Gruppenrichtlinien verwendest ist es egal, wo sie liegen (als auf welcher Freigabe), solange sie korrekt über die GPOs zugewiesen werden.

Grüße

Max
Redryder
Redryder 25.11.2008 um 09:31:10 Uhr
Goto Top
Hallo, danke für die Info, so etwas habe ich mir schon gedacht.
Mein Problem ist, dass ich erst seid kurzem den Admin-Postebn bekleite.
Ich kenne zwar die GPO habe aber noch nicht richtig damit gearbeitet.
Kannst Du mir einen kl. Einblick geben, was dort zu tun ist und wie ich das dann einbinden kann.
Du sagtest auch, ich soll im Startskript den Uhrzeit einbinden. ist das unter dok und Einst\All Users\startmenü ??? Da funktioniert es nämlich net wirklich. Systemfehler5???
Ich nehme an Rechteproblem.

Schon mal danke für Deine Antwort und nen schönen Tag.

Grüße aus Hof
dog
dog 25.11.2008 um 11:09:07 Uhr
Goto Top
http://www.gruppenrichtlinien.de/

Dort findest du ein ziemlich ausführliches Kompendium face-smile