M@verick 10 Geschrieben 26. Oktober 2006 Melden Teilen Geschrieben 26. Oktober 2006 In Abhängigkeit davon in welcher Benutzergruppe ein User ist soll bei seiner Citrix Anmeldung ein bestimmter Registry Key eingetragen werden. Bislang handelt es sich um 8 verschiedene Benutzergruppen und ebensoviele Registry Keys. Ich habe bereits ein Loginscript, das bei der Anmeldung abfragt, ob der user in einer bestimmten Gruppe ist: -> wenn nicht: nächste gruppenabfrage, -> wenn ja: Registry Key via Batch File Setzen. Leider läuft das bei der Anmeldung nicht. Führe ich das Script manuell aus geht es wunderbar. Ich habe es auch schon mit einer Zeitverzögerung zu beginn des Scripts versucht. bis 30 sec. Verzögerung brachte dies keinen erfolg und eine längere Wartezeit ist den Usern nicht zuzumuten. Gibt es eine Möglichkeit ein Loginscript an die Benutzergruppe zu hängen? Um dies auf Benutzerebene zu machen sind es zu viele User und zu häufige Ändereungen. Danke schonmal! Zitieren Link zu diesem Kommentar
GerhardG 10 Geschrieben 26. Oktober 2006 Melden Teilen Geschrieben 26. Oktober 2006 am einfachsten wäre wohl für jeden key eine gpo anzulegen und nur die entsprechende gruppe zu berechtigen. Zitieren Link zu diesem Kommentar
IThome 10 Geschrieben 26. Oktober 2006 Melden Teilen Geschrieben 26. Oktober 2006 Eine weitere Möglichkeit wäre, das Script über ein GPO-Anmeldescript laufen zu lassen. Welche Gruppe nun welches Script bzw. GPO anwendet, wird mit Hilfe der Sicherheitsfilterung festgelegt. Allerdings benötigst Du dann auch so viele GPOs, wie Du Gruppen hast, ebenso diese Menge an Anmeldescripten. Poste doch mal den Inhalt Deines Scriptes, vielleicht kann man ja was sehen. edit: und wieder zu spät :D Zitieren Link zu diesem Kommentar
pampersrocker 10 Geschrieben 26. Oktober 2006 Melden Teilen Geschrieben 26. Oktober 2006 also wir nutzen für ähnliche vorgänge kix-scripte.. Zitieren Link zu diesem Kommentar
M@verick 10 Geschrieben 26. Oktober 2006 Autor Melden Teilen Geschrieben 26. Oktober 2006 Es IST ein KIX Script. aber es läuft eben nicht so wie es soll. :mad: Danke für die Vorschläge mit den GPOs. Das klingt für mich auch nach dem sinnvollsten weg. Aber durch das aktivierte Loopback haut das leider nicht hin. außerdem hätte mein Kollege das gerne mit dem (einem) anmeldescript gelöst. Ich versuche mich grade in VBS einzuarbeiten und das script umzubasteln... hab aber bislang leider keinerlei ahnung vom Scripting. Hier mal ein Auszug (die letzten 5abfrageroutinen habich mal weggelassen): $AcToken="" $index=0 do $group=enumgroup($index) $index=$index+1 $AcToken = $AcToken + $group until len($group)=0 $index=0 do $lgroup=enumlocalgroup($index) $index=$index+1 $AcToken = $AcToken + $lgroup until len($lgroup)=0 $NETPATH =%LOGONSERVER%+"\NETLOGON\" ;okfis000 IF INGROUP("okf000") AND exist ($NETPATH+"OKFIS000.kix") Call $NETPATH+OKFIS000.kix ;gosub "ENDE" ENDIF ;okfis000t IF INGROUP("okf000t") AND exist ($NETPATH+"OKFIS000t.kix") Call $NETPATH+OKFIS000t.kix ;gosub "ENDE" ENDIF ;okfis410 IF INGROUP("okf410") AND exist ($NETPATH+"OKFIS410.kix") Call $NETPATH+OKFIS410.kix ;gosub "ENDE" ENDIF . . .etc Zitieren Link zu diesem Kommentar
Demon72 10 Geschrieben 26. Oktober 2006 Melden Teilen Geschrieben 26. Oktober 2006 Also wir nutzen dafür "ifmember" aus dem resourcekit Zitieren Link zu diesem Kommentar
catao 11 Geschrieben 30. Oktober 2006 Melden Teilen Geschrieben 30. Oktober 2006 hi wenn es mal umfangreicher sein soll/muss, dann haben wir mit net use und ifmemberr nicht unbedingt die besten erfahrungen bisher gemacht. deshalb nutzen wir sehr oft kixstart. ifmember arbeitet bei der gruppenindentifizierung mit den lokalen sicherheitsgruppen, wohin gegen kixstart mit den globalen arbeitet. wenn man das weiß, ist die halbe miete schon mal im sack. hier ein "kleines" beispiel: Break off SetConsole("HIDE") FlushKB ; ----- ; $Variablen für die Server setzen. ; ----- $FileServer = "Fileserver_Name" ; 1. Domänencontroller (File- und Printserver) $SQLServer = "SQLServer_Name" ; 2. Domänencontroller (SQL- Server) ; ----- ; $Variablen für die Freigabe der $DataVol setzen (Datavol ist das Freigabeverzeichnis auf dem FileServer) ; ----- $DataVOL= "Sharename" ; ----- ; $Variablen für die GruppenOrdner - unter $DataVol setzen (Gruppen siehe unterhalb der OUs in der AD). ; ----- If InGroup("Buchhaltung.global") OR @PRIMARYGROUP = "Buchhaltung.global" $Group = "Buchhaltung" EndIf ; ----- ; Gruppenzugehörigkeit ermitteln und enstprechende Laufwerkmappings erstellen. ; ----- ; ----- ;Buchhaltung ; ----- ;If @PRIMARYGROUP = "Buchhaltung.global" If InGroup("Buchhaltung.global") OR @PRIMARYGROUP = "Buchhaltung.global" ; ----- ; Auf Laufwerksbuchstaben bzw. verknüpfungen überprüfen und ggf. löschen ; ----- If (Exist("M:\.") = 1) Use M: /delete /persistent EndIf If (Exist("P:\.") = 1) Use P: /delete /persistent EndIf If (Exist("Q:\.") = 1) Use Q: /delete /persistent EndIf If (Exist("R:\.") = 1) Use R: /delete /persistent EndIf ; ----- ; Userbezogene Laufwerksverknüpfungen erstellen. ; ----- ; ----- ; Userbezogene Laufwerksverknüpfungen erstellen. ; ; M: = Buchhaltungsordner auf $FileServer / $DATAVOL ; P: = persönliches UserShare Verzeichnis ; Q: = Abteilung / Sharelaufwerk ; R: = Abteilung / Abteilungsvorlagen ; ----- Use M: "\\$FileServer\ShareBuchaltung" Use P: "\\$FileServer\$DataVol\$Group\@USERID" Use Q: "\\$FileServer\$DataVol\$Group\GroupShare" Use R: "\\$FileServer\$DataVol\$Group\GroupVorlagen" Gosub "GlobalDrive" ; Verweis auf allgemeine Share / Freigaben - Gruppenunabhängig EndIf ; ----- ; DC/Globale Ordner für die User mappen ; ----- :GlobalDrive ; allgemeine Share / Freigaben - Gruppenunabhängig ; ----- ; Auf Laufwerksbuchstaben bzw. verknüpfungen überprüfen und ggf. löschen ; ----- If (Exist("T:\.") = 1) Use T: /delete /persistent EndIf If (Exist("U:\.") = 1) Use U: /delete /persistent EndIf Use T: "\\$FileServer\$DataVol\GlobalShareVorlagen" ; Global / gruppenunabhängige Vorlagen Use U: "\\$FileServer\$DataVol\GlobalShare" ; Global / gruppenunabhängiges Share-Laufwerk ; ********************* ; * End of the Script * ; ********************* da ich das ganze für hier etwas umschreiben musste, hoffe ich, dass mir dabei keine fehler unterlaufen sind. variablen anpassen und einfach prüfen :cool: vielleicht hilft das ganze ja schon weiter. ;) gruß rené Zitieren Link zu diesem Kommentar
M@verick 10 Geschrieben 3. November 2006 Autor Melden Teilen Geschrieben 3. November 2006 Danke euch allen für die Beiträge und ratschläge. Wir haben jetzt aber auch die Lösung gefunden... nachdem wir uns zu dritt davorgesetzt haben und das ganze script schritt für schritt gedebuggt haben. Lösung: Das Script ruft verschiedene Batch-Files auf, die die registry Keys setzen. soweit klappt alles. Was wir vergessen / übersehen habe waren die Pfade innerhalb der Batch Dateien. nachdem wir die vollständigen Pfade für alle Dateien angegeben haben lief es. Die "PATH-Variablen" sind während der Anmeldung noch nicht gesetzt. daher die Probleme. Aber mal ehrlich: Dakommt man doch auch nicht drauf, oder ? Wir haben das gesamte Script umgekrempelt um nachher doch wieder die Originale version zu nehmen. Zitieren Link zu diesem Kommentar
catao 11 Geschrieben 3. November 2006 Melden Teilen Geschrieben 3. November 2006 hallo m@verick, warum nimmst du externe batch-dateien zur hilfe? du kannst reg-einträge auch wunderbar innerhalb von kixstart setzen,löschen und ändern lassen. hier mal ein beispiel für die laufwerksbenennung: ; Laufwerksnamen unter Windows 2000 If @PRODUCTTYPE = "Windows 2000 Professional" $mDrive = "I:\" $oShell = CreateObject("Shell.Application") $oShell.NameSpace($mDrive).Self.Name = "@FULLNAME" Else ; Laufwerksnamen unter Windows XP WriteValue("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\MountPoints2\##$FileServer#$DataVol","_LabelFromReg","@FULLNAME","REG_SZ") EndIf If @PRODUCTTYPE = "Windows XP Professional" $mDrive = "L:\" $oShell = CreateObject("Shell.Application") $oShell.NameSpace($mDrive).Self.Name = "SQL Laufwerk" Else ; Laufwerksnamen unter Windows XP WriteValue("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\MountPoints2\##$SQLSERVER#$SQLVOL","_LabelFromReg","SQL SAP Laufwerk","REG_SZ") EndIf wie du sehen kannst, habe ich dort auch mit den variablen gearbeitet. wenn du mehr infos haben möchtest, dann frag nach ;) gruß rené Zitieren Link zu diesem Kommentar
M@verick 10 Geschrieben 3. November 2006 Autor Melden Teilen Geschrieben 3. November 2006 Danke. Ich werde mir das am wochenende mal in ruhe zu gemüte führen. Besten dank für die Unterstützung. Zitieren Link zu diesem Kommentar
woiza 10 Geschrieben 3. November 2006 Melden Teilen Geschrieben 3. November 2006 Hi, Hier gabs ein ähnliches Problem. Gruß woiza Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.