<%
'-----------------------------------------------------
'Nome: getGruposADS(strLogin)
'Tipo: Funcao Public
'Sinopse: Retornar a lista de grupos de um usuário no Active Directory
'Parametros:
' strLogin: Login do usuário na rede
'Retorno: Collection (Scripting.Dictionary)
'Autor: Gabriel Fróes - www.codigofonte.com.br
'-----------------------------------------------------
Function getGruposADS(strLogin)
'Declarações
Dim objSysInfo
Dim objUsuario
Dim objGrupo
Dim objColl
'Criação dos objetos
Set objSysInfo = Server.CreateObject("ADSystemInfo")
Set objColl = Server.CreateObject("Scripting.Dictionary")
Set objUsuario = GetObject("WinNT://" & objSysInfo.DomainDNSName & "/" & strLogin & ",user")
For Each objGrupo In objUsuario.Groups
'Adicionar o grupo na collection
objColl.Add objColl.Count+1, objGrupo.Name
Next
'Retornando a função
Set getGruposADS = objColl
'Destruindo os objetos
Set objUsuario = Nothing
Set objSysInfo = Nothing
End Function
'-----------------------------------------------------
'Exemplo de chamada da função
'-----------------------------------------------------
Dim Usuario 'Login do usuário na rede
Dim objResultado
Set objResultado = Server.CreateObject("Scripting.Dictionary")
Usuario = "login_rede" '<----- EDITE O LOGIN AQUI
Set objResultado = getGruposADS(Usuario)
For i = 1 To objResultado.Count
Response.Write objResultado.Item(i) & "<br>"
Next
Set objResultado = Nothing
%>