Búsqueda de Computadoras en ActiveDirectory con C# .NET

Con Microsoft ActiveDirectory podemos realizar búsquedas de cualquier elemento en el dominio, entre ellos, las computadoras. En el siguiente artículo veremos de manera breve y sencilla cómo buscarlos.

Los objetos (o clases) a utilizar, serán los encontrados en la librería System.DirectoryServices.AccountManagement (Dll: System.DirectoryServices.AccountManagement.dll) indicando, que la misma, está disponible a partir del .NET Framework 3.5

Buscar equipo por ID/Nombre:

...
var context = new PrincipalContext(ContextType.Domain);
return ComputerPrincipal.FindByIdentity(context, IdentityType.SamAccountName, "EQUIPO-MARIA");
...

Lo anterior, de encontrar una coincidencia, retornará un único elemento ComputerPrincipal donde:

  • ‘EQUIPO-MARIA’: Es un System.String indicando el nombre del equipo a buscar.
  • IdentityType: Es un enum que contiene otros valores como Name y es usado para indicar por cuál campo/propiedad se buscará.

Buscar equipo por último inicio de sesión:

...
var context = new PrincipalContext(ContextType.Domain);
return ComputerPrincipal.FindByLogonTime(context, date, MatchType.LessThan);
...

Lo anterior, retornará un listado de ComputerPrincipal con los equipos que accedieron al dominio antes de la fecha indicada donde:

  • date: Es un System.DateTime indicando la fecha límite.
  • MatchType.LessThan: Es un enum que contiene otros valores como GreaterThan e Equals.

Sencillo ¿no? Happy Coding ✌

Creación y Búsqueda de usuarios en ActiveDirectory

Hoy le toca a Microsoft Active Directory (AD) el artículo técnico. Pero…

¿Qué es AD?

De forma sencilla se puede decir que es un servicio establecido en uno o varios servidores en donde se crean objetos tales como usuarios, equipos o grupos, con el objetivo de administrar los inicios de sesión en los equipos conectados a la red, así como también la administración de políticas en toda la red. Su estructura jerárquica permite mantener una serie de objetos relacionados con componentes de una red, como usuarios, grupos de usuarios, permisos y asignación de recursos y políticas de acceso.- Wikipedia

Sigue leyendo

IIS: Error 500.21 al publicar proyecto

¿Has publicado recientemente el proyecto que tanto tenías codeando? ¿O simplemente uno de prueba? Espero que no sea hacia un ambiente en producción porque… ¡que jodido!

El error se debe a librerías y componentes faltantes que IIS tiene registrados actualmente.

Internal Server Error El controlador “PageHandlerFactory-Integrated” tiene una condición previa incorrecta “ManagedPipelineHandler” en su lista de módulos

Sólo es instalar el framework .NET en su versión 4.0:

  1. Se abre el Command Prompt / CMD de Windows con derechos de Administrador
  2. Vamos a la carpeta ‘c:\Windows\Microsoft.NET\Framework\v4.0.30319’ mediante: cd c:\Windows\Microsoft.NET\Framework\v4.0.30319
  3. Y se ejecuta el comando: aspnet_regiis.exe -i

Y reinicia IIS que ya está ready (o como dicen los reggaetoneros Boricuas: eso ya ‘ta ready pa’l party).

 Happy Coding ✌

EntityFramework: Error System.Data.Entity.Core .UpdateException en Delete

En algunos caso (mentira, es lo normal) se tiene una relación entre tablas donde una es dependiente de la otra, es decir, B existirá sólo si A exista. Como en la vida, terminar o borrar algo no es un simple click como en la Papelera de Reciclaje, eliminar algo requerirá eliminar otras cosas. Para esto caso, A no se podrá eliminar sin primero eliminar B. Sigue leyendo