Michael_Land
asked on
Login Script
I know it is in here some were but I can not find it. I need help to develop a login script for users in groups and sub groups.
I am using nested groups and need a better way to find out what groups a user belongs to that way I came up with seems too complicated.
If I try to use
Const DEP = "cn=01-0#-00"
to map a departmental drive or printer I do not get any response. "cn=01-0#-00" only contains groups not any users.
The actual groups that users are in look like this
Const FAC-A = "cn=01-0#-01-0A"
or
Const STA-A = "cn=01-0#-02-0A"
or
Const STU-A = "cn=01-0#-09-0A"
if I map a drive or printer to one of these I get great results but then I repeated code for department or devision shared resources.
here is my structure:
All staff members for a give department are put into these groups:
Const STA-A = "cn=01-0#-02-0A"
Const STA-B = "cn=01-0#-02-0B"
Const STA-C = "cn=01-0#-02-0C"
Const STA-D = "cn=01-0#-02-0D"
Const STA-E = "cn=01-0#-02-0E"
Const STA-F = "cn=01-0#-02-0F"
All of the staff groups for a give division are put into this group:
Const STA = "cn=01-0#-02-00"
This group "cn=01-0#-02-00" is also a member of the divisions all users group.
Is there a way to determine the groups a user belongs to when the login and then from that information map drives and assign printers?
DC-Windows 2008r2
Workstations are XP and Win7
will be applied as part of a GPO
I hope I gave enough info for someone to be able to help. Been at this for a few hours now and my eyes are giving out.
I am using nested groups and need a better way to find out what groups a user belongs to that way I came up with seems too complicated.
If I try to use
Const DEP = "cn=01-0#-00"
to map a departmental drive or printer I do not get any response. "cn=01-0#-00" only contains groups not any users.
The actual groups that users are in look like this
Const FAC-A = "cn=01-0#-01-0A"
or
Const STA-A = "cn=01-0#-02-0A"
or
Const STU-A = "cn=01-0#-09-0A"
if I map a drive or printer to one of these I get great results but then I repeated code for department or devision shared resources.
here is my structure:
All staff members for a give department are put into these groups:
Const STA-A = "cn=01-0#-02-0A"
Const STA-B = "cn=01-0#-02-0B"
Const STA-C = "cn=01-0#-02-0C"
Const STA-D = "cn=01-0#-02-0D"
Const STA-E = "cn=01-0#-02-0E"
Const STA-F = "cn=01-0#-02-0F"
All of the staff groups for a give division are put into this group:
Const STA = "cn=01-0#-02-00"
This group "cn=01-0#-02-00" is also a member of the divisions all users group.
Is there a way to determine the groups a user belongs to when the login and then from that information map drives and assign printers?
DC-Windows 2008r2
Workstations are XP and Win7
will be applied as part of a GPO
I hope I gave enough info for someone to be able to help. Been at this for a few hours now and my eyes are giving out.
'========================================================================
' AUTHOR: Mike Land
' COMPANY: Cypress college
' COMMENT: Master Login script
'=========================================================================
Dim Network
Dim ADSysInfo
Dim CurrentUser
Dim Groups
Dim Strgroups
'Department
Const DEP = "cn=01-0#-00"
'All FAC- Groups
Const FAC = "cn=01-0#-01-00"
Const FAC-A = "cn=01-0#-01-0A"
Const FAC-B = "cn=01-0#-01-0B"
Const FAC-C = "cn=01-0#-01-0C"
Const FAC-D = "cn=01-0#-01-0D"
Const FAC-E = "cn=01-0#-01-0E"
Const FAC-F = "cn=01-0#-01-0F"
'All Staff Groups
Const STA = "cn=01-0#-02-00"
Const STA-A = "cn=01-0#-02-0A"
Const STA-B = "cn=01-0#-02-0B"
Const STA-C = "cn=01-0#-02-0C"
Const STA-D = "cn=01-0#-02-0D"
Const STA-E = "cn=01-0#-02-0E"
Const STA-F = "cn=01-0#-02-0F"
'All Students Groups
Const STU = "cn=01-0#-09-00"
Const STU-A = "cn=01-0#-09-0A"
Const STU-B = "cn=01-0#-09-0B"
Const STU-C = "cn=01-0#-09-0C"
Const STU-D = "cn=01-0#-09-0D"
Const STU-E = "cn=01-0#-09-0E"
Const STU-F = "cn=01-0#-09-0F"
'wScript.echo "1"
Set ADSysInfo = CreateObject("ADSystemInfo")
Set CurrentUser = GetObject("LDAP://" & ADSysInfo.UserName)
strGroups = LCase(Join(CurrentUser.MemberOf))
'Department Home Drive Mappings
Set wshNetwork = CreateObject("WScript.Network")
wshNetwork.MapNetworkDrive "H:", "\\ccfs-01a\0#-HOMEDRIVE\" & wshNetwork.UserName, blnPersistent
'Departmental Printer and Drive Mappings
If InStr(strGroups, FAC) Or InStr(strGroups, STA) Then
wshNetwork.MapNetworkDrive "I:", "\\ccfs-01a\0#-Drive"
wshNetwork.MapNetworkDrive "J:", "\\ccfs-01a\J-Drive"
wshNetwork.AddWindowsPrinterConnection "\\CCPS-01a\C06-100-2D2-P01"
End If
'Faculity specific login peramaters
If InStr(strGroups, FAC-A) Or InStr(strGroups, FAC-B) Or InStr(strGroups, FAC-C) Or InStr(strGroups, FAC-D) Or InStr(strGroups, FAC-E) Or InStr(strGroups, FAC-F) Then
wshNetwork.AddWindowsPrinterConnection "\\CCPS-01a\C##-###-###-P##"
If InStr(strGroups, FAC-A) Then
wshNetwork.AddWindowsPrinterConnection "\\CCPS-01a\C##-###-###-P##"
End If
If InStr(strGroups, FAC-B) Then
wshNetwork.AddWindowsPrinterConnection "\\CCPS-01a\C##-###-###-P##"
End If
If InStr(strGroups, FAC-C) Then
wshNetwork.AddWindowsPrinterConnection "\\CCPS-01a\C##-###-###-P##"
End If
If InStr(strGroups, FAC-D) Then
wshNetwork.AddWindowsPrinterConnection "\\CCPS-01a\C##-###-###-P##"
End If
If InStr(strGroups, FAC-E) Then
wshNetwork.AddWindowsPrinterConnection "\\CCPS-01a\C##-###-###-P##"
End If
If InStr(strGroups, FAC-F) Then
wshNetwork.AddWindowsPrinterConnection "\\CCPS-01a\C##-###-###-P##"
End If
End If
'Staff specific Peramiters
If InStr(strGroups, STA-A) Or InStr(strGroups, STA-B) Or InStr(strGroups, STA-C) Or InStr(strGroups, STA-D) Or InStr(strGroups, STA-E) Then
wshNetWork.SetDefaultPrinter "\\CCPS-01a\C06-100-2D2-P01"
If InStr(strGroups, STA-A) Then
wshNetwork.AddWindowsPrinterConnection "\\CCPS-01a\C##-###-###-P##"
End If
If InStr(strGroups, STA-B) Then
wshNetwork.AddWindowsPrinterConnection "\\CCPS-01a\C##-###-###-P##"
End If
If InStr(strGroups, STA-C) Then
wshNetwork.AddWindowsPrinterConnection "\\CCPS-01a\C##-###-###-P##"
End If
If InStr(strGroups, STA-D) Then
wshNetwork.AddWindowsPrinterConnection "\\CCPS-01a\C##-###-###-P##"
End If
If InStr(strGroups, STA-F) Then
wshNetwork.AddWindowsPrinterConnection "\\CCPS-01a\C##-###-###-P##"
End If
End If
'Student specific paramiters
If InStr(strGroups, STU-A) Or InStr(strGroups, STU-B) Or InStr(strGroups, STU-C) Or InStr(strGroups, STU-D) Or InStr(strGroups, STU-E) Or InStr(strGroups, STU-F) Then
'wshNetwork.AddWindowsPrinterConnection "\\CCPS-01a\C##-###-###-P##"
If InStr(strGroups, STU-A) Then
wshNetwork.AddWindowsPrinterConnection "\\CCPS-01a\C##-###-###-P##"
End If
If InStr(strGroups, STU-B) Then
wshNetwork.AddWindowsPrinterConnection "\\CCPS-01a\C##-###-###-P##"
End If
If InStr(strGroups, STU-C) Then
wshNetwork.AddWindowsPrinterConnection "\\CCPS-01a\C##-###-###-P##"
End If
If InStr(strGroups, STU-D) Then
wshNetwork.AddWindowsPrinterConnection "\\CCPS-01a\C##-###-###-P##"
End If
If InStr(strGroups, STU-E) Then
wshNetwork.AddWindowsPrinterConnection "\\CCPS-01a\C##-###-###-P##"
End If
If InStr(strGroups, STU-F) Then
wshNetwork.AddWindowsPrinterConnection "\\CCPS-01a\C##-###-###-P##"
End If
End If
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.