Share via


Festlegen von Flags für Benutzerkonten

Dieses Thema enthält Codebeispiele, in denen verschiedene Benutzerflags festgelegt werden. Dabei wird die Properties-Eigenschaft des DirectoryEntry-Objekts für den Zugriff auf das User-Account-Control-Attribut verwendet, um Flags hinzuzufügen, die in der ADS_USER_FLAG_ENUM-Enumeration definiert sind. Weitere Informationen zum User-Account-Control-Attribut finden Sie im Thema "User-Account-Control" in der MSDN Library unter https://go.microsoft.com/fwlink/?LinkID=27252. Weitere Informationen zur ADS_USER_FLAG_ENUM-Enumeration finden Sie im Thema "ADS_USER_FLAG_ENUM" in der MSDN Library unter https://go.microsoft.com/fwlink/?LinkID=27252.

In den folgenden Beispielen wird das Festlegen verschiedener Eigenschaften des DirectoryEntry-Objekts usr veranschaulicht. Da in diesem Code auf Objekte im System.DirectoryServices-Namespace zugegriffen wird, müssen Sie im Projektmappen-Explorer einen Verweis zum System.DirectoryServices-Namespace hinzufügen, wenn Sie diesen Code in einer Anwendung verwenden.

In den folgenden Beispielen wird veranschaulicht, wie festgelegt werden kann, dass für eine interaktive Anmeldung eine SmartCard verwendet werden muss.

[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();

In den folgenden Beispielen wird veranschaulicht, wie das Konto so eingerichtet wird, dass ein DES-Verschlüsselungstyp verwendet wird.

[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();

In den folgenden Beispielen wird veranschaulicht, wie das Konto so eingerichtet wird, dass dem Konto für Delegierungszwecke vertraut wird.

[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();

In den folgenden Beispielen wird veranschaulicht, wie angezeigt wird, dass das Konto vertraulich ist und nicht für Delegierungszwecke verwendet werden kann.

[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();

In den folgenden Beispielen wird veranschaulicht, wie das Konto so eingerichtet wird, dass keine Kerberos-Vorauthentifizierung erforderlich ist.

[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();

Siehe auch

Referenz

System.DirectoryServices
DirectoryEntry

Konzepte

Benutzerverwaltung

Send comments about this topic to Microsoft.

Copyright © 2007 Microsoft Corporation. Alle Rechte vorbehalten.