Imports System.DirectoryServices ‘Espacio de nombres
Public Class Form1
Private Datagrid As New DataGridView
‘Constructor para nuestro DataGridView
‘
‘ Nuestra particular clase para definir un Usuario
Private Class UserInfo
‘
‘Leer/Asignar su nombre
Private m_Nombre As String
Public Property Nombre() As String
Get
Return m_Nombre
End Get
Set(ByVal value As String)
m_Nombre = value
End Set
End Property
‘
‘Leer/Asignar su Descripcion
Private m_Descripcion As String
Public Property Descripcion() As String
Get
Return m_Descripcion
End Get
Set(ByVal value As String)
m_Descripcion = value
End Set
End Property
End Class
‘
‘ Al Cargar el Formulario
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
‘Incorporar el DataGridView a nuestro form
Me.Controls.Add(Datagrid)
Me.Datagrid.Dock = DockStyle.Fill ‘Ocupar toda el area del form
Me.Datagrid.AllowUserToAddRows = False ‘No se puede añadir celdas
Me.Datagrid.AllowUserToDeleteRows = False ‘No se puede eliminar celdas
Me.Datagrid.EditMode = DataGridViewEditMode.EditProgrammatically
‘Nuestros apuntes en el directorio del Servidor
Dim EntradasEnElDirectorio As New DirectoryEntry(LDAP://Servidor)
‘Nuestro buscador
Dim BusquedaEnElDirectorio As New DirectorySearcher(EntradasEnElDirectorio)
‘Filtro de busqueda
BusquedaEnElDirectorio.Filter = «(ObjectClass=user)»
‘Leer las entradas de usuario
Dim Entradas = From usuario As SearchResult In BusquedaEnElDirectorio.FindAll() _
Select usuario.GetDirectoryEntry
‘Rellenar el DataGridView con el resultado de la consulta, con la info requerida
Datagrid.DataSource = _
(From usuario In Entradas _
Select New UserInfo() With {.Nombre = usuario.Properties(«name»).Value, _
.Descripcion = usuario.Properties(«description»).Value}).ToList
End Sub
End Class
Hola Pep,
Un pregunta, ¿solo tiene las propiedades name y description?. Si tiene más, ¿como puedo saber las demás?
Un Saludo
Hola Fran!!
Mira el ultimo post, en la enumeracion puedes obtener el nombre de las propiedades diponibles para el LDAP consultado.
Un abrazo,
Pep Lluis,
1- si no saben hacer las cosas mejor no las publiquen y punto, igual esto me dejo sin saber nada.
2- si vamos a explicar algo diay tengamos la paciencia y expliquemos bien
Saludos Jose,
Lamento tu disgusto. Solo explicarte la justificacion de que cada cosa publicada no representa un articulo concreto sobre un tema, si no que intenta ayudar desinteresadamente a personas que en un momento dado me muestran su inquietud sobre alguna tecnologia en concreto. En este caso el apunte va dirigido a profesionales que utilizan o administran active directory.
Lamento el mal entendido. Y no dudes en contactar de nuevo si consideras interesante o necesitas alguna aclaracion sobre el tema.
Recibe un respetuoso apreton de manos,
Pep Lluis,
Buenas y como podria hacer para obtener solo el nombre de usuario y contraseña de un usuario?
Alain,
Todas las propiedades disponibles del Usuario, a traves de LDAP las tienes en :
http://msmvps.com/blogs/peplluis/archive/2008/02/27/191-como-puedo-saber-las-propiedades-disponibles-en-mi-ldap.aspx
Aunque no creo que se correponda a lo que buscas.
Saludos,
¿Cómo se puede obtener el nombre de usuario?, no el nombre completo.
he probado con «username» pero nada
gracias
Hola Felix,
Aqui tienes un post que explica como conocer el nombre de todas las propiedades disponibles.
http://msmvps.com/blogs/peplluis/archive/2008/02/27/191-como-puedo-saber-las-propiedades-disponibles-en-mi-ldap.aspx
Espero que te sea util,
Saludos,
peplluis necesito usar una funcion en ASP clasico que me permita identificar al usuario que está accediendo a una página desde la intranet de la empresa, ¿me puedes ayudar con eso?
Hola Josue,
Pues en principio deberias importar el «System.DirectoryServices» y el ejemplo anterior deberia funcionar. Aunque no me he podido entretener a probarlo.
Espero tus noticias,
Si necesitas continuar la conversacion,te agradecere lo postees en mis foros «http://savecomm.net/boards/forumgroup/3/desarrollo-de-aplicaciones» o los de MSDN.
Gracias!