1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83
| Dim objRootLDAP, objGroup, objUser, objOU, objmemberOf
Dim strOU, strUser, strDNSDomain, strLDAP, List, objADSysInfo,arr,intlength,intNamelength,strGroupName
Dim strDrive,strShare,strServer,strArts,strCine,strComm,strComp,strDire,strDocu,strLitt,strSpec
BS = Chr(92) ' Backslash
DBS = BS & BS ' Double Backslash
strServer="srv" 'Nom du serveur
strArts="Arts plastiques" 'Nom du partage d'échange du groupe Arts plastiques
strCine="Cinema" 'Nom du partage d'échange du groupe Cinema
strComm="Communication" 'Nom du partage d'échange du groupe Communication
strComp="Comptabilite" 'Nom du partage d'échange du groupe Comptabilite
strDire="Direction" 'Nom du partage d'échange du groupe Direction
strDocu="Documentation" 'Nom du partage d'échange du groupe Documentation
strLitt="Litterature" 'Nom du partage d'échange du groupe Litterature
strSpec="Spectacles" 'Nom du partage d'échange du groupe Spectacles
' Commands to bind to AD
Set objRootLDAP = GetObject("LDAP://RootDSE")
Set objNetwork = CreateObject("Wscript.Network" )
'Trouver le DN de l'utilisateur
Set objADSysInfo = CreateObject("ADSystemInfo" )
strUser = objADSysInfo.UserName
Set objUser = GetObject("LDAP://" & strUser)
' Extraire la liste des groupes de l'utilisateur
objmemberOf = objUser.GetEx("memberOf" )
For Each objGroup in objmemberOf
List = List & objGroup & vbCr
arr=Split(List,"," )
intlength=Len(arr(0))
intNamelength=intlength - 3
Next
strGroupName= Right(arr(0), intNameLength)
WScript.Echo strGroupName
WScript.Echo strUser
'tableau contenant lecteurs et partages par groupes'
Select Case strGroupName
Case "Cinema"
aryShares = Array(Array("O:",DBS & strServer & BS & strCine))
Case "Comptabilite"
aryShares = Array(Array("P:",DBS & strServer & BS & strComp))
Case "Spectacles"
aryShares = Array(Array("N:",DBS & strServer & BS & strSpec))
Case "Litterature"
aryShares = Array(Array("M:",DBS & strServer & BS & strLitt))
Case "Documentation"
aryShares = Array(Array("L:",DBS & strServer & BS & strDocu))
Case "Communication"
aryShares = Array(Array("R:",DBS & strServer & BS & strComm))
Case "Arts plastiques"
aryShares = Array(Array("Q:",DBS & strServer & BS & strArts))
Case "Direction"
aryShares = Array(Array("S:",DBS & strServer & BS & strDire),_
Array("O:",DBS & strServer & BS & strCine),_
Array("P:",DBS & strServer & BS & strComp),_
Array("N:",DBS & strServer & BS & strSpec),_
Array("M:",DBS & strServer & BS & strLitt),_
Array("L:",DBS & strServer & BS & strDocu),_
Array("R:",DBS & strServer & BS & strComm),_
Array("Q:",DBS & strServer & BS & strArts))
End Select
'Procédure mappage d'un lecteur
Sub Mappage(strDrive,strShare)
objNetwork.MapNetworkDrive strDrive, strShare
End Sub
'Mapper les lecteurs
For i = LBound(aryShares) to UBound(aryShares)
aryAux = aryShares(i)
Mappage aryAux(0), aryAux(1)
Next
WScript.Quit |
Partager