Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

LoginScript - Druckerzuweisen mit KIX und Gruppenobjekte in der AD?

Frage Entwicklung KiXtart

Mitglied: Basti007

Basti007 (Level 1) - Jetzt verbinden

14.05.2008, aktualisiert 24.11.2008, 10264 Aufrufe, 3 Kommentare

Hallo Zusammen,

ich bin gerade etwas am Erfahrungen sammeln mit den AD von MS und probiere gerade ein paar Dinge mit dem LoginScript aus, was man ja bei der Anmeldung laufen lassen kann.

ich habe vor in Zukunft die Drucker für die einzelnen Maschienen direkt mit dem Login-Script zuweisen zu lasseb und habe diesbezüglich auch verschiedene Gruppenobjekte in der AD angelegt. Der Gruppenname ist wie folgt aufgebaut "printer" + Druckername -> z.B. printerD1228
Ich prüfe nun noch ab ob der Rechnername oder der User in dieser Printergruppe ist und weise den Drucker entsprechend zu. Das funktioniert soweit auch zuverlässig.

Hier mein KIX-Script:

If (@WKSTA OR @USERID) INGROUP("printerD1228")
ADDPRINTERCONNECTION ("\\prints01\D1228")
? "Drucker D1228 wurde erfolgreich angeschlossen"
Endif


Ich will jetzt, dass er sich die Gruppennamen dynamisch aus einer vorgegebenen OU in der AD zieht und diese per Schleife durchläuft und die entsprechenden Drucker zuweist, so dass ich nicht bei einer neuen Druckerinstallation das Login-Script anpassen muss, sondern nur eine neue Gruppe in der AD. Ebenfalls würde dieses auch sehr unübersichtlich werden, wenn die Anzahl der Drucker zunehmen wird. Im Augenblick sind es bei mir 3 Drucker für knappe 25 Clients; tendenz natürlich steigend.

Kann mir jemand von euch weiterhelfen ?


Gruß
Basti
Mitglied: superbachy
19.05.2008 um 15:55 Uhr
Hi Basti

ich denke mal du möchtest ein Script laufen lassen die alle Gruppen ausliest in deren der User Mitglied ist. dann ein Script für die Gruppe haben und dann laufen lassen .

ich hattemal ein solches Script welches in einer w2k umgebung säuber läuft, in einer w23 umgebung liest er zwar die Gruppen aus, startet mir aber nicht mehr die Unterscripte .
ich leg es dir mal hier rein , dann kannste mal schauen ob es bei dir läuft.

Du MUSST das Sript nennen wie die Gruppe heisst
beispiel. Uer ist member of 75_zentrale_Drucker, dann muss dein Script 75_zentrale_Drucker.kix heissen.

Viel Glück...

; anmeldescript
break on
cls

; ----Systemzeit synchronisieren -----------------
settime "*"

; ----anzeige des Informationsfesnters -----------
color b/w
box ( 0, 0,24,179,full)
select
case (@time < "11:00:00")
at ( 2,20) "Guten Morgen, " + @USERID
case (@time < "18:00:00")
at ( 2,20) "Guten Tag, " + @USERID
case 1
at ( 2,20) "Guten Abend, " + @USERID
endselect
at ( 4,10) "Sie werden mit Ihren Laufwerken und Druckern verbunden."
at ( 5,10) "Ihre Anmeldung an " + @WKSTA + " erfolgt über den Domänen-"
at ( 6,10) "kontroller " + @LSERVER + " und ist in wenigen Sekunden beendet."
at ( 8,19) " Bitte Warten . . ."
sleep 5
color r/W
$TAG_ZEIT = @DAY+", "+@MDASNO+"." + @YEAR + ", "+@TIME+" UHR"
at (22,40) $TAG_ZEIT
color b+/W
at(10,10) "Anmelde - Status:"
; ? "Calling pre-logon script of user in: " + @HOMEDRIVE

call @HOMEDRIVE + "prelogon.kix"
$os=@InWin

IF $os="2"
; sleep 5
gosub w9x
ENDIF

IF $os="1"
gosub XP
ENDIF

:ende
exit

:XP
DO
$GroupMS=ENUMGROUP($index)
$Index=$Index+1

? "Benutzer ist mitglied der Gruppe>" + $GroupMS + "<"
;check if the domain-name is part of the group-string. if yes. erase the preceeding domain-part and use the pure group-name for the script
if InStr($GroupMS,@DOMAIN + "\")>0
$GroupMS=SubStr($GroupMS,Len(@DOMAIN + "\")+1)
? "Suchname ist: >" + $GroupMS + "<"
call $GroupsMS
endif


call $GroupMS
if @16034<>0
Shell Chr(34) + $GroupMS + ".wsf" + Chr(34)
if @16034<>0
Shell Chr(34) + $GroupMS + ".cmd" + Chr(34)
if @16034<>0
Shell Chr(34) + $GroupMS + ".bat" + Chr(34)
endif
endif
endif
Until Len($GroupMS)=0
;Helper
function IsUserMemberOf($GroupMSName)
; check if the user is a member in
$i=0
$GroupIS=""
$Membership=""

DO
$GroupIS=ENUMGROUP($i)
$i=$i+1
$Membership=$Membership+$GroupIS
Until Len($GroupIS)=0

if instr($Membership,$GroupMSName)>0
$RETURN=1 ;return true
else
$RETURN=0 ;return false

Endfunction
sleep 5
call @HOMEDRIVE + "postlogon.kix"


habe auch noch ein Pre und ein postlogon verwendet welches aus dem Homedrive des benutzers gezogen wird um spezielle Sripte laufen zu lassen.

Gruß
Bachy
Bitte warten ..
Mitglied: Basti007
20.05.2008 um 19:30 Uhr
So ich hab mal ein bischen programmiert und habe folgende Lösung gefunden:

Der Ablauf des Scripts ist wie folgt:

Ich habe auf der AD zwei OUs angelegt. In der einen OU habe ich Usergruppen mit den Freigabenamen der Drucker (z.B. D001)angelegt. In der Beschreibung der einzelnen Gruppen steht der Name des Printservers (z.B. \\printserver\). In der anderen OU sind ebenfalls Usergruppen angelgt, allerdings mit dem Prefix "s_" davor. Diese Gruppe dient zum Zuweisen des Druckers als Standarddrucker.

Das Script liest jetzt alle Objekte aus der ersten OU aus und sucht in diesem Gruppenobjekt nach dem Namen der Arbeitsstation. Wenn die in der Gruppe gefunden wurde, wird der Drucker eingefügt. Wenn der Drucker dann auch noch in der "s_[Druckername]" Gruppe vorhanden ist, wird er zusätzlich noch zum Standarddrucker ausgewählt.
Dieser Vorgang wird nun für jedes Objekt in der ersten OU durchgeführt.

Die zugewiesenen Drucker werden entsprechend in der Konsole ausgegeben und die Konsole am Ende geschlossenen

Hinweis: Beim zuweisen mehrer Standarddrucker wird der Drucker als Stadarddrucekr zugewiesen der bei einer alphabtischen Sortierung ganz hinten steht!

Script funktioniert soweit spitze, allerdings nur mit Computerobjekten in der AD.


01.
; (c) 2008 -  "Basti" :-) 
02.
03.
; Drucker Maschienenbezogen zuweisen über Gruppenobjekte in der AD 
04.
05.
;  
06.
07.
BREAK ON 
08.
09.
; // Funktion ComputerObjekte in Gruppen suchen 
10.
11.
	Function ComputerInGroup($group,optional $Domain) 
12.
		Dim $oGrp 
13.
		if not $domain          $domain=@domain         endif 
14.
		$oGrp = GetObject("WinNT://" + $domain + "/"  + $group + ",group" ) 
15.
		if @error       exit 1          endif 
16.
		 
17.
		if $oGrp.IsMember("WinNT://" + $domain + "/"  + @wksta + "$$" ) 
18.
			$ComputerInGroup=1 
19.
		else 
20.
			$ComputerInGroup=0 
21.
			endif 
22.
		endfunction 
23.
24.
; // Ende der Funktion 
25.
26.
 
27.
? "                      DRUCKER VERWALTUNG                      " 
28.
? "=================================================================" 
29.
? "                                                              " 
30.
? "  Drucker für @WKSTA werden eingerichtet:" 
31.
? "" 
32.
33.
;  Druckerzuweisung & Abfrage des Standarddruckkers 
34.
35.
$ADdrucker = GetObject( "LDAP-PFAD zur entsprechenden OU" ) 
36.
 
37.
for Each $Obj in $ADdrucker 
38.
 
39.
	$drucker =  (SUBSTR($Obj.name, 4)) 
40.
	$printserver = $Obj.description 
41.
 
42.
	;? "s_"+$drucker 
43.
 
44.
	if ComputerInGroup("$drucker")	 
45.
		if ADDPRINTERCONNECTION ($printserver+$drucker) = 0 
46.
			? "  $drucker | @SError" 
47.
			if ComputerInGroup("s_"+$drucker) 
48.
				if SetDefaultPrinter ($printserver+$drucker) = 0 
49.
   				endif 
50.
			endif 
51.
			else 
52.
			? "  $drucker | @SError <@ERROR>" 
53.
 	 	endif 
54.
		;? "  $drucker wurde erfolgreich angeschlossen" 
55.
	endif 
56.
	 
57.
next 
58.
59.
? "                                                              " 
60.
? "=================================================================" 
61.
? "  Druckerzuweisung beendet                                     " 
62.
;get $Taste 
63.
 

Kann mir jemand noch einen Tipp geben, wie ich das o.g. Script noch auf Userobjekte aus der AD trimmen kann ?
Sprich dass ich einem User auch einen bestimmten Drucker zuweisen kann, den er dann immer hat egal an welchem Computer er sich anmeldet.

Gruß
Bitte warten ..
Mitglied: knuckles
24.11.2008 um 10:21 Uhr
Hi,

weis jemand, wie Basti das mit den 2 OUs gemacht hat ?
Das Script funktioniert - aber leider wird der Standarddrucker nicht festgelegt ??

Danke für eure Tipps.
Gruß
knuckles
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Windows Server
Schemaerweiterung - Office 365 - Exchange Online mit lokalem AD

Frage von chb1982 zum Thema Windows Server ...

Windows Server
Windows Server 2012 R2 Benutzerkonto für Zugriff auf AD Benutzer (2)

Frage von JulianOhm zum Thema Windows Server ...

Windows Userverwaltung
Ausgeschiedene Mitarbeiter im Unternehmen - was tun mit den AD Konten? (34)

Frage von patz223 zum Thema Windows Userverwaltung ...

Windows Server
AD-Berechtigungen von zwei Servern miteinander vergleichen (3)

Frage von s0m3ting zum Thema Windows Server ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (21)

Frage von Xaero1982 zum Thema Microsoft ...

Outlook & Mail
gelöst Outlook 2010 findet ost datei nicht (19)

Frage von Floh21 zum Thema Outlook & Mail ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...

Windows Update
Treiberinstallation durch Windows Update läßt sich nicht verhindern (14)

Frage von liquidbase zum Thema Windows Update ...