Establecer indicadores de la cuenta de usuario

En este tema se incluyen ejemplos de código que sirven para establecer diversos indicadores de usuario. Utiliza la propiedad Properties del objeto DirectoryEntry para obtener acceso al atributo User-Account-Control a fin de establecer indicadores que se definen en la enumeración ADS_USER_FLAG_ENUM. Para obtener más información sobre el atributo User-Account-Control, vea el tema User-Account-Control en la biblioteca MSDN en https://go.microsoft.com/fwlink/?LinkID=27252. Para obtener más información sobre la enumeración ADS_USER_FLAG_ENUM, vea el tema ADS_USER_FLAG_ENUM en la biblioteca de MSDN en https://go.microsoft.com/fwlink/?LinkID=27252.

En los siguientes ejemplos se muestra cómo establecer diversas propiedades del objeto de DirectoryEntryusr. Como este código tiene acceso a objetos del espacio de nombres System.DirectoryServices, agregue una referencia al espacio de nombres System.DirectoryServices en el Explorador de soluciones cuando utilice este código en una aplicación.

Los siguientes ejemplos muestran cómo obligar a usar una SmartCard para un inicio de sesión interactivo.

[Visual Basic]

Const ADS_UF_SMARTCARD_REQUIRED As Integer = &H40000
Val = Fix(usr.Properties("userAccountControl").Value)
usr.Properties("userAccountControl").Value = val Or _
      ADS_UF_SMARTCARD_REQUIRED
usr.CommitChanges()
const int ADS_UF_SMARTCARD_REQUIRED = 0x40000;
val = (int) usr.Properties["userAccountControl"].Value;
usr.Properties["userAccountControl"].Value = val | 
    ADS_UF_SMARTCARD_REQUIRED;
usr.CommitChanges();

Los siguientes ejemplos muestran cómo establecer la cuenta para que utilice un tipo de cifrado DES.

[Visual Basic]

Const ADS_UF_USE_DES_KEY_ONLY As Integer = &H200000
Val = Fix(usr.Properties("userAccountControl").Value)
usr.Properties("userAccountControl").Value = val Or _
      ADS_UF_USE_DES_KEY_ONLY
usr.CommitChanges()
const int ADS_UF_USE_DES_KEY_ONLY=0x200000;
val= (int) usr.Properties["userAccountControl"].Value;
usr.Properties["userAccountControl"].Value = val | 
    ADS_UF_USE_DES_KEY_ONLY;
usr.CommitChanges();

Los siguientes ejemplos muestran cómo establecer la cuenta para que sea de confianza para la delegación.

[Visual Basic]

Const ADS_UF_TRUSTED_FOR_DELEGATION As Integer = &H80000
Val = Fix(usr.Properties("userAccountControl").Value)
usr.Properties("userAccountControl").Value = val Or _
      ADS_UF_TRUSTED_FOR_DELEGATION
usr.CommitChanges()
const int ADS_UF_TRUSTED_FOR_DELEGATION =0x80000;
val= (int) usr.Properties["userAccountControl"].Value;
usr.Properties["userAccountControl"].Value = val | 
    ADS_UF_TRUSTED_FOR_DELEGATION;
usr.CommitChanges();

Los siguientes ejemplos muestran cómo mostrar que la cuenta es sensible y no se puede utilizar para la delegación.

[Visual Basic]

Const ADS_UF_NOT_DELEGATED As Integer = &H100000
Val = Fix(usr.Properties("userAccountControl").Value)
usr.Properties("userAccountControl").Value = val Or _
      ADS_UF_NOT_DELEGATED
usr.CommitChanges()
const int ADS_UF_NOT_DELEGATED=0x100000;
val= (int) usr.Properties["userAccountControl"].Value;
usr.Properties["userAccountControl"].Value = val | 
    ADS_UF_NOT_DELEGATED;
usr.CommitChanges();

Los siguientes ejemplos de código muestran cómo establecer la cuenta para que no requiera autenticación Kerberos anterior.

[Visual Basic]

Const ADS_UF_DONT_REQUIRE_PREAUTH As Integer = &H400000
Val = Fix(usr.Properties("userAccountControl").Value)
usr.Properties("userAccountControl").Value = val Or _
      ADS_UF_DONT_REQUIRE_PREAUTH
usr.CommitChanges()
const int ADS_UF_DONT_REQUIRE_PREAUTH=0x400000;
val= (int) usr.Properties["userAccountControl"].Value;
usr.Properties["userAccountControl"].Value = val | 
    ADS_UF_DONT_REQUIRE_PREAUTH;
usr.CommitChanges();

Consulte también

Referencia

System.DirectoryServices
DirectoryEntry

Conceptos

Administración de usuarios

Send comments about this topic to Microsoft.

Copyright © 2007 Microsoft Corporation. Reservados todos los derechos.