Al ingresar en el Marco de Active Directory .NET (2)

  

aquí primero constructor es un constructor por defecto básico que crea un objeto en el caso sin ningún parámetro. Esto significa que el objeto se conecta al proveedor de máquina WinNT en ausencia de permisos de seguridad específicos.
segunda configuración nos permite especificar una conexión con el certificado de AD a localizada requerida, cuando se utilizan las credenciales dadas necesarios para conectarse a cualquier dominio, esta configuración es muy conveniente.
segundo constructor añade parámetros LoginPath, lo que nos permitirá cubrir LoginPath, poder elegir otro proveedor de servicio que no sea el proveedor predeterminado.
El código siguiente es lo que yo llamo el código "enfoque activo" de la siguiente manera:
pública DSHelper.DSUser LoadUser (cadena usuario)
este método para recibir un nombre de usuario, y mirar el DirectoryEntry proveedor actual en. Si no se encuentra ninguno, simplemente devuelve NULL. Ejemplos de clases DSUser
pública System.Boolean AddUserToGroup (nombre de grupo de cuerdas, DSHelper.DSUser dsUser)
Este método recibe el nombre de un grupo y personalizado existente, y tratando de añadir usuarios a proporcionar grupo. Esta es la primera podemos ver método de suplantación (). Central de este enfoque es que esta línea de código:
GetGroups System.Collections.ArrayList pública ()
vamos a utilizar este método para obtener una lista de todos los grupos en el dominio.
pública System.Boolean DeleteUser (DSHelper.DSUser dsUser)
este método para obtener un nombre de usuario dado, y completamente elimina de Active Directory.
pública System.DirectoryServices.DirectoryEntry SaveUser (DSHelper.DSUser dsUser) guía empresas sin capacidad real para ahorrar e insertar registros en una base de datos, no puede ser llamado un DAL completa. Las dos formas anteriores para llevar a cabo esta tarea, primero se comprueba la AD, para ver si existe el usuario especificado. Si hay ,, se actualizará los datos proporcionados al usuario. Si no existe el usuario, se creará un usuario.
pública System.Boolean Connect ()
Por último, necesitamos una manera de conectar a la base de datos, método Connect () se utiliza para realizar esta tarea. Cabe señalar que en este momento, no realiza ningún certificado falso de la operación o uso de AD especificado, que sólo proporcionan un certificado sólo cuando sea necesario, lo que hace que la oferta en ausencia de un certificado de seguridad, DAL sólo puede ser de sólo lectura utilizar en el estado.
A continuación vamos a encadenar al contenido de arriba, echar un vistazo a cómo podemos utilizar DAL crear la página de administración de usuarios de ASP.NET.
página de administración de usuario ASP.NET
En este ejemplo de proyecto, hemos sido capaces de introducir un nombre de usuario y una contraseña para el usuario administrador del sistema, sino que también proporciona un cuadro de texto, podemos entrar en el campo cualquier nombre de usuario, una lista de todas sus propiedades. También podemos editar usuario, la operación de almacenamiento, también se puede eliminar por completo el usuario.
Ahora vamos a revisar en detalle todo el proyecto, que forma parte del enfoque interactúa con el DAL. lectores por favor a considerar el uso de nuevos métodos para mejorar la interfaz, y de hecho crear una mayor disponibilidad y más fácil de usar diseño. Además, los lectores también pueden considerar cómo crear una aplicación de consola de usar interfaz.
jugar
"jugar" significa palabra, llevamos a cabo la operación como una persona o usuario diferente. En nuestra aplicación ASP.NET, lo que significa que podemos camafeo temporalmente otro usuario, en lugar de la cuenta de usuario de IIS por defecto de ASP.NET para manejar el acceso anónimo. Esperamos ser capaces de hacer su propio código para jugar a otros usuarios tienen un mayor acceso a los recursos de AD con el fin de hacer los cambios apropiados en el recurso. Para completar este proceso es muy simple. Cuando
#region suplantación de configuración a través de interoperabilidad
//deberá guardar los detalles que necesita para importar para completar el juego por InteropServices desde COM
const int pública LOGON32_LOGON_INTERACTIVE = 2;
public const int LogoN32_PROVIDER_DEFAULT = 0;
System.Security.Principal.WindowsImpersonationContext impersonationContext;
[DllImport (" advapi32.dll ", charset = CharSet.Auto)] extern int public static
LogonUser (String lpszUserName , España cadena lpszDomain, cadena lpszPassword, int dwLogonType, int dwLogonProvider, España ref IntPtr phToken);
[DllImport (" advapi32.dll ", charset = System.Runtime.InteropServices.CharSet .auto,
SetLastError = true)]
extern public static int DuplicateToken (IntPtr hToken, int ImpersonationLevel, España ref IntPtr hNewToken);
#endregion
figura establecer el juego 1.5
en primer lugar, tenemos que importar de advapi32.dll nuevas formas, incluyendo algunas constantes útiles. ImpersonationContext variables con nombre se utilizan para mantener a los usuarios de Windows para jugar antes de la operación.
esta manera, establecimos un juego, aquí es un ejemplo de cómo se usa:
si (impersonateValidUser (this.LoginUsername, this.DomainName,
this.loginPassword)) {
//introduzca el código aquí
ejecuta bajo el contexto de seguridad del usuario especificado //no se olvide de cancelar la reproducción
undoImpersonation ();
} else {//
operación de reproducción fallidos, insertado después del fracaso para asegurar los mecanismos de seguridad del sistema
}
reproducir la figura 1.6 el uso
simplemente tenemos que llamar al método impersonateValidUser con un nombre de usuario y una contraseña válidos, el usuario jugar. Después De ahora en adelante, sólo para llamar undoImpersonation (), que llevará a cabo todas las operaciones dadas nombre de usuario. Para poder jugar
operación en ASP.NET para que funcione correctamente, hay que cambiar el machine.config (C: \\ WINNT \\ microsoft.net \\ Framework \\ v% VERSION% \\ config \\ machine.config) en processModel el nodo, en el que la propiedad nombre de usuario se debe establecer en Sistema.
Conclusión En este artículo se discute el uso de espacio de nombres System.DirectoryServices puede completar una carrera completa, el contenido básico para cualquier proveedor de AD DAL necesario. En la práctica, puede realizar cambios en el ejemplo, hacen que sea más acorde con nuestras necesidades. Tenga en cuenta que para la realidad se puede utilizar cualquier DAL, no debería estar limitado a un proveedor de servicios incluyendo los proveedores de bases de datos normales incluidos. Debemos ser capaces de intercambiar DAL. Después
leer este artículo, el lector puede sentir una sensación de algo más que decir. Los lectores pueden añadir las funciones de gestión del grupo, incluyendo la creación del grupo, editar y eliminar, y mostrar grupos de cada usuario y cada grupo de usuarios. Pero todo lo que se puede hacer a través de interoperabilidad COM, el lector se refieren a la información por su cuenta.
Copyright © Conocimiento de Windows All Rights Reserved