Hello everyone,
I'm using a select case statement to check several groups in AD.
If the current user is a member of the group, then the appropriate drive is mapped.
The script appeared to be working but it's still mapping the drive even when the user is no longer a member of a particular group
Any assistance with this issue is greatly appreciated.
Here is the code I'm using for this login script, Heellp!!
============================================================
'Option Explicit
'On error resume next
Dim fServer
Dim home
Dim wshNet
Dim ADSysInfo
Dim CurrentUser
Dim strGroups
Dim GroupMember
Dim strPassP1
Dim StrLogin1
Dim NetStr1
Const TorUsers = "cn=tor-users"
Const TorNTGA = "cn=tor-ntga"
Const TorExec = "cn_Tor-Executive"
Const TorBPPMapK = "cn=Tor-BPP-Drive-Mapping-K"
Const TorBPPMapG = "cn=Tor-BPP-drive-Mapping-G"
fServer = "\\HSNJFSP01"
home = "\Home$"
StrLogin1 = "NTGA$Log.scr"
StrPassP1 = "\\toonfsp01\sys\public\Passport.scr"
NetStr1 = "\\toonfsp01\sys\public"
Set wshNet = CreateObject("WScript.Network")
Set ADSysInfo = CreateObject("ADSystemInfo")
Set CurrentUser = GetObject("LDAP://" & ADSysInfo.UserName)
'wshNet.MapNetworkDrive "Y:", fServer & home & "\" & wshNet.Username
'============ Disco persistent drives ===================
wshNet.RemoveNetworkDrive "T:"
wshNet.RemoveNetworkDrive "G:"
wshNet.RemoveNetworkDrive "K:"
wshNet.RemoveNetworkDrive "X:"
wshNet.RemoveNetworkDrive "R:"
wshNet.RemoveNetworkDrive "I:"
wshNet.RemoveNetworkDrive "S:"
wshNet.RemoveNetworkDrive "H:"
wshNet.RemoveNetworkDrive "N:"
Wscript.sleep 2000
'============ Mapping persistent drives ===================
wshNet.MapNetworkDrive "H:", "\\TOONFSP01\TCTCDATA"
wshNet.MapNetworkDrive "R:", "\\TOONFSP01\TNTCDIST"
wshNet.MapNetworkDrive "X:", "\\TOONFSP01\TNTCAPPS"
wshNet.MapNetworkDrive "J:", "\\$HOMESERVER\DYNAMICS$"
wshNet.MapNetworkDrive "S:", "\\$HOMESERVER\SHARED"
wshNet.MapNetworkDrive "T:", "\\TOONFSP01\MBSGP_Share"
wshNet.MapNetworkDrive "W:", "\\$HOMESERVER\TNTCTNTAPPS"
'========== Current User and group membership =============
strGroups = LCase(Join(CurrentUser.MemberOf))
WScript.Echo(wshNet.UserName & " " & strGroups)
GroupMember = TRUE
Select Case GroupMember
Case K = InStr(strGroups, "TorBPPMapK")
Call TorBPPMapKsub
Case Else Wscript.echo("You should find correct group")
End Select
Select Case GroupMember
Case G = InStr(strGroups, "TorBPPMapG")
Call TorBPPMapGsub
Case Else Wscript.Echo("I don't think this is accurate")
End Select
Select Case GroupMember
Case I = Instr(strGroups, "TorExec")
Call TorExecMapIsub
Case Else Wscript.Echo("This isn't executive level!")
End Select
Select Case GroupMember
Case N = Instr(strGroups, "TorUsers")
Call TorNTGAsub
Case Else Wscript.Echo("Call NTGA script")
End Select
Select Case GroupMember
Case 0 = InStr(strGroups, "TorNTGA")
Call TorNTGAsub
Case Else wscript.echo("Call NTGA script")
End Select
'=================== Drive Mappings =======================
Sub TorBPPMapKsub
WScript.Echo("Made it to BPP!")
wshNet.MapNetworkDrive "K:", "\\CHIFSVP02\Data021"
End Sub
Sub TorBPPMapGsub
WScript.Echo("Okay it's BPP!")
wshNet.MapNetworkDrive "G:", "\\CHIFSVP02\Data02"
End Sub
Sub TorExecMapIsub
WScript.Echo("Made it to Exec!")
wshNet.MapNetworkDrive "I:", "\\TOONFSP01\HOME"
End Sub
Sub TorNTGAsub
WScript.Echo("MAde it to NTGA and USERS")
wshNet.MapNetworkDrive "N:", "\\TOONFSP01\HOME"
End Sub
WScript.Quit
I'm using a select case statement to check several groups in AD.
If the current user is a member of the group, then the appropriate drive is mapped.
The script appeared to be working but it's still mapping the drive even when the user is no longer a member of a particular group
Any assistance with this issue is greatly appreciated.
Here is the code I'm using for this login script, Heellp!!
============================================================
'Option Explicit
'On error resume next
Dim fServer
Dim home
Dim wshNet
Dim ADSysInfo
Dim CurrentUser
Dim strGroups
Dim GroupMember
Dim strPassP1
Dim StrLogin1
Dim NetStr1
Const TorUsers = "cn=tor-users"
Const TorNTGA = "cn=tor-ntga"
Const TorExec = "cn_Tor-Executive"
Const TorBPPMapK = "cn=Tor-BPP-Drive-Mapping-K"
Const TorBPPMapG = "cn=Tor-BPP-drive-Mapping-G"
fServer = "\\HSNJFSP01"
home = "\Home$"
StrLogin1 = "NTGA$Log.scr"
StrPassP1 = "\\toonfsp01\sys\public\Passport.scr"
NetStr1 = "\\toonfsp01\sys\public"
Set wshNet = CreateObject("WScript.Network")
Set ADSysInfo = CreateObject("ADSystemInfo")
Set CurrentUser = GetObject("LDAP://" & ADSysInfo.UserName)
'wshNet.MapNetworkDrive "Y:", fServer & home & "\" & wshNet.Username
'============ Disco persistent drives ===================
wshNet.RemoveNetworkDrive "T:"
wshNet.RemoveNetworkDrive "G:"
wshNet.RemoveNetworkDrive "K:"
wshNet.RemoveNetworkDrive "X:"
wshNet.RemoveNetworkDrive "R:"
wshNet.RemoveNetworkDrive "I:"
wshNet.RemoveNetworkDrive "S:"
wshNet.RemoveNetworkDrive "H:"
wshNet.RemoveNetworkDrive "N:"
Wscript.sleep 2000
'============ Mapping persistent drives ===================
wshNet.MapNetworkDrive "H:", "\\TOONFSP01\TCTCDATA"
wshNet.MapNetworkDrive "R:", "\\TOONFSP01\TNTCDIST"
wshNet.MapNetworkDrive "X:", "\\TOONFSP01\TNTCAPPS"
wshNet.MapNetworkDrive "J:", "\\$HOMESERVER\DYNAMICS$"
wshNet.MapNetworkDrive "S:", "\\$HOMESERVER\SHARED"
wshNet.MapNetworkDrive "T:", "\\TOONFSP01\MBSGP_Share"
wshNet.MapNetworkDrive "W:", "\\$HOMESERVER\TNTCTNTAPPS"
'========== Current User and group membership =============
strGroups = LCase(Join(CurrentUser.MemberOf))
WScript.Echo(wshNet.UserName & " " & strGroups)
GroupMember = TRUE
Select Case GroupMember
Case K = InStr(strGroups, "TorBPPMapK")
Call TorBPPMapKsub
Case Else Wscript.echo("You should find correct group")
End Select
Select Case GroupMember
Case G = InStr(strGroups, "TorBPPMapG")
Call TorBPPMapGsub
Case Else Wscript.Echo("I don't think this is accurate")
End Select
Select Case GroupMember
Case I = Instr(strGroups, "TorExec")
Call TorExecMapIsub
Case Else Wscript.Echo("This isn't executive level!")
End Select
Select Case GroupMember
Case N = Instr(strGroups, "TorUsers")
Call TorNTGAsub
Case Else Wscript.Echo("Call NTGA script")
End Select
Select Case GroupMember
Case 0 = InStr(strGroups, "TorNTGA")
Call TorNTGAsub
Case Else wscript.echo("Call NTGA script")
End Select
'=================== Drive Mappings =======================
Sub TorBPPMapKsub
WScript.Echo("Made it to BPP!")
wshNet.MapNetworkDrive "K:", "\\CHIFSVP02\Data021"
End Sub
Sub TorBPPMapGsub
WScript.Echo("Okay it's BPP!")
wshNet.MapNetworkDrive "G:", "\\CHIFSVP02\Data02"
End Sub
Sub TorExecMapIsub
WScript.Echo("Made it to Exec!")
wshNet.MapNetworkDrive "I:", "\\TOONFSP01\HOME"
End Sub
Sub TorNTGAsub
WScript.Echo("MAde it to NTGA and USERS")
wshNet.MapNetworkDrive "N:", "\\TOONFSP01\HOME"
End Sub
WScript.Quit