• Viernes 8 de Noviembre de 2024, 18:59

Autor Tema:  Validación de usuarios contra Active Directory  (Leído 1608 veces)

agustinasantamarina

  • Nuevo Miembro
  • *
  • Mensajes: 1
    • Ver Perfil
Validación de usuarios contra Active Directory
« en: Martes 23 de Febrero de 2010, 22:44 »
0
Hola!

Estoy usando la siguiente función para validar usuarios contra el Active Directory de Windows:

Imports System
Imports System.Text
Imports System.Collections
Imports System.DirectoryServices


Public Class LdapAuthentication

Dim _path As String
Dim _filterAttribute As String

Public Sub New(ByVal path As String)
_path = path
End Sub

Public Function IsAuthenticated(ByVal domain As String, ByVal username As String, ByVal pwd As String) As Boolean

Dim domainAndUsername As String = domain & "" & username
Dim entry As DirectoryEntry = New DirectoryEntry(_path, domainAndUsername, pwd)

Try
'Bind to the native AdsObject to force authentication.
Dim obj As Object = entry.NativeObject
Dim search As DirectorySearcher = New DirectorySearcher(entry)

search.Filter = "(SAMAccountName=" & username & ")"
search.PropertiesToLoad.Add("cn")
Dim result As SearchResult = search.FindOne()

If (result Is Nothing) Then
Return False
End If

'Update the new path to the user in the directory.
_path = result.Path
_filterAttribute = CType(result.Properties("cn")(0), String)

Catch ex As Exception
Throw New Exception("Error authenticating user. " & ex.Message)
End Try

Return True
End Function

End Class


Funciona perfectamente para Windows XP, pero no para Vista o Windows 7.
Alguien se ha encontrado con este problema ya? Alguna solución?

Gracias por adelantado!

Agus