unidad de red segun grupo de seguridad

13/08/2007 - 19:40 por GFD | Informe spam
hola foro
ando detras de un script que conecte unidades de red segun pertenencias a
grupos de seguridad, he visto varios ejemplos en internet pero ninguno me
funciona, ¿alguno sabe como deberia montarse?
gracias
 

Leer las respuestas

#1 José Antonio Quílez [MS MVP]
13/08/2007 - 20:12 | Informe spam
Hay scripts en internet que te permiten comprobar la pertenencia de un
usuario a un grupo y en caso afirmativo podrías mapear la unidad de red.
Otra opción más simple consiste en crear una GPO a nivel dominio y filtrarla
para que se aplique sólo a un grupo de usuarios determinado. En ella
configuras un script de inicio de sesión que conecte las unidades de red que
quieras para ese grupo y ya está. Haces una GPO por cada grupo que quieras
configurar de forma independiente y arreglado. Esto es práctico si no tienes
que hacerlo para muchos grupos. En ese caso, es más elegante crear un script
que te compruebe la pertenencia a grupos, como te indicaba al principio.

Por ejemplo, el siguiente script .vbs te comprueba si el usuario que ha
iniciado sesión pertenece o no al grupo "Jefes" y al de "Curritos" y en caso
afirmativo le mapea una unidad de red en función de si pertenece a un grupo
u otro o a los dos. Lo he escrito sin probarlo, así que ya dirás si te
funciona correctamente.

Option Explicit
Dim oNet, sUser, startTime
On Error Resume Next
Set oNet = CreateObject("WScript.Network")
sUser = oNet.UserName 'En minúsculas
startTime = Now
Do While sUser = ""
If DateDiff("s", startTime, Now) > 600 Then Wscript.Quit
Wscript.Sleep 500
sUser = oNet.UserName
Loop

Set objGroup = GetObject _
("LDAP://cn=Jefes,ou=Sevilla,dc=tu,dc=empresa,dc=es")
objGroup.GetInfo
arrMemberOf = objGroup.GetEx("member")
For Each strMember in arrMemberOf
If strMember == sUser then
oNet.RemoveNetworkDrive "X:"
oNet.MapNetworkDrive "X:", "\\servidor\jefes\"
End If
Next

Set objGroup = GetObject _
("LDAP://cn=Curritos,ou=Sevilla,dc=tu,dc=empresa,dc=es")
objGroup.GetInfo
arrMemberOf = objGroup.GetEx("member")
For Each strMember in arrMemberOf
If strMember == sUser then
oNet.RemoveNetworkDrive "Y:"
oNet.MapNetworkDrive "Y:", "\\servidor\curritos\"
End If
Next

Saludos (esto no va en el script)

"GFD" escribió en el mensaje de
noticias:#
hola foro
ando detras de un script que conecte unidades de red segun pertenencias a
grupos de seguridad, he visto varios ejemplos en internet pero ninguno me
funciona, ¿alguno sabe como deberia montarse?
gracias

Preguntas similares