Loginscript mit Spezialfunktion
Hallo zusammen. Ich habe kürzlich den Auftrag erhalten ein neues Loginscript zu erstellen. Zwar gibt es bereits verschiedenste Tutorial zur Erstellung solcher Scripts, aber nichts was mir für meine Aufgabe wirklich weiterhelfen würde, oder zumindest nicht in dem knappen Zeitrahmen der mir gesetzt wurde. Deshalb habe ich einige Fragen an euch.
Zu dem Script das ich erstellen soll. Die Grundfunktion ist eigentlich einfach, es soll anhand der ActiveDirectory Usergruppenzugehörigkeit Netzlaufwerke mappen. Gehört User X zu Gruppe B wird also auch Laufwerk B gemappt.
Meine erste Frage: Was für eine Scripsprache würdet ihr mir für die Lösung dieser Aufgabe vorschlagen? Ausgenommen Kix.
Meine zweite Frage: Hättet ihr unter Umständen auch gleich ein Lösungsbeispiel in einer/dieser Scriptsprache, oder ein Tutorial für die Erstellung? Bedenkt bitte, ich habe nicht die Zeit mich lange in die Sprache einzuarbeiten.
Und meine dritte Frage: Mir wurde bereits die Powershell für die Lösung dieses Problems nahe gelegt. Für wie sinnvoll schätzt ihr eine Lösung mit der Powershell ein? Und wenn so was für euch in betracht käme, welche .net oder .com Objekte und/oder cmdlets wären nötig um auf das ActiveDirectory in der weise zugreifen zu können?
Vielen Dank für die Hilfe
Meine erste Frage: Was für eine Scripsprache würdet ihr mir für die Lösung dieser Aufgabe vorschlagen? Ausgenommen Kix.
Meine zweite Frage: Hättet ihr unter Umständen auch gleich ein Lösungsbeispiel in einer/dieser Scriptsprache, oder ein Tutorial für die Erstellung? Bedenkt bitte, ich habe nicht die Zeit mich lange in die Sprache einzuarbeiten.
Und meine dritte Frage: Mir wurde bereits die Powershell für die Lösung dieses Problems nahe gelegt. Für wie sinnvoll schätzt ihr eine Lösung mit der Powershell ein? Und wenn so was für euch in betracht käme, welche .net oder .com Objekte und/oder cmdlets wären nötig um auf das ActiveDirectory in der weise zugreifen zu können?
Vielen Dank für die Hilfe
Please also mark the comments that contributed to the solution of the article
Content-Key: 66438
Url: https://administrator.de/contentid/66438
Printed on: April 17, 2024 at 23:04 o'clock
4 Comments
Latest comment
Hi,
na dann wollen wir Dir doch mal die Arbeit abnehmen ...
Allles was Du brauchst ist IFMEMBER aus dem Windows Server Resource Kit und ne CMD-Datei
Syntax:
ifmember "<DOMAIN>\<GROUPNAME>"
if errorlevel 1 NET USE <LW> \\<SERVER>\<SHARE>
Warum nicht KIX?
$drive_group="<GROUPNAME>"
if ingroup("$drive_group") <>0
$drive_name="H:"
$drive_share="\\<SERVER>\<SHARENAME>"
endif
use $drive_name /delete
use $drive_name $drive_share
Kann man 'türli auch wunderhübsch mittels Array aufpumpen
ciao
Karo
na dann wollen wir Dir doch mal die Arbeit abnehmen ...
Allles was Du brauchst ist IFMEMBER aus dem Windows Server Resource Kit und ne CMD-Datei
Syntax:
ifmember "<DOMAIN>\<GROUPNAME>"
if errorlevel 1 NET USE <LW> \\<SERVER>\<SHARE>
Warum nicht KIX?
$drive_group="<GROUPNAME>"
if ingroup("$drive_group") <>0
$drive_name="H:"
$drive_share="\\<SERVER>\<SHARENAME>"
endif
use $drive_name /delete
use $drive_name $drive_share
Kann man 'türli auch wunderhübsch mittels Array aufpumpen
ciao
Karo
1) korrekt. 1 bedeutet bei IFMEMBER True, also er ist in der Gruppe. Die ERRORLEVEL Variable ist fix. Also keine andere Variable möglich. Wenn Du nun also
if errorlevel 1 NET USE L: \\MEINSERVER\MEINEFREIGABE
dann wird die Freigabe MEINEFREIGABE des Servers MEINSERVER auf Laufwerk L gelegt
2) Variable nur in dem Sinne, das Du * statt <LW>: nehmen kannst. Dann wird der nächst freie Laufwerksbuchstabe (bei XP von Z nach A) gemappt. Falls Du mehrere Gruppen mappen willst, dann rate ich Dir von dynamischen oder unterschiedlichen Laufwerksmappings der Übersicht halber dringend ab. Mappe für jede Gruppe immer denselben Buchstaben. Das erleichtert die Fehlersuche. Zudem vor dem mappen IMMER ein net use <LW>: /D, damit der Buchstabe auch wirklich frei wird und nicht schon/noch genutzt wird. Nimm für Mappings lieber höher liegende Buchstaben, da meist im vorderen Bereich Partitionen, USB, DVD etc gesetzt sind.
Wenn Du im übrigen bei einem User der in der lokalen Administratorengruppe ist folgendes eingibst:
ifmember /v administratoren
dann kommt folgende Meldung
Group VORDEFINIERT\Administratoren matches list
bye
Karo
if errorlevel 1 NET USE L: \\MEINSERVER\MEINEFREIGABE
dann wird die Freigabe MEINEFREIGABE des Servers MEINSERVER auf Laufwerk L gelegt
2) Variable nur in dem Sinne, das Du * statt <LW>: nehmen kannst. Dann wird der nächst freie Laufwerksbuchstabe (bei XP von Z nach A) gemappt. Falls Du mehrere Gruppen mappen willst, dann rate ich Dir von dynamischen oder unterschiedlichen Laufwerksmappings der Übersicht halber dringend ab. Mappe für jede Gruppe immer denselben Buchstaben. Das erleichtert die Fehlersuche. Zudem vor dem mappen IMMER ein net use <LW>: /D, damit der Buchstabe auch wirklich frei wird und nicht schon/noch genutzt wird. Nimm für Mappings lieber höher liegende Buchstaben, da meist im vorderen Bereich Partitionen, USB, DVD etc gesetzt sind.
Wenn Du im übrigen bei einem User der in der lokalen Administratorengruppe ist folgendes eingibst:
ifmember /v administratoren
dann kommt folgende Meldung
Group VORDEFINIERT\Administratoren matches list
bye
Karo