Benutzersicherheitsattribute
Zusätzlich zur Benennung von Eigenschaften für Benutzerobjekte, z. B. objectGUID, objectSid, cn, distinguishedName usw., gibt es weitere Sicherheitseigenschaften, die für die Anmeldung, den Netzwerkzugriff und die Zugriffssteuerung verwendet werden. Diese Eigenschaften werden vom Windows-Sicherheitssystem verwendet und können vom Active Directory-Snap-In "Benutzer und Computer " angezeigt und verwaltet werden.
accountExpires
Das accountExpires-Attribut gibt an, wann ein Konto abläuft. Dieser Wert wird als große ganze Zahl gespeichert, die die Anzahl der Intervalle von 100 Nanosekunden seit dem 1. Januar 1601 (UTC) darstellt. Der Wert TIMEQ_FOREVER (definiert in Lmaccess.h) gibt an, dass ein Konto nie abläuft.
altSecurityIdentities
Das altSecurityIdentities-Attribut ist ein mehrwertiges Attribut, das Zuordnungen für X.509-Zertifikate oder externe Kerberos-Benutzerkonten für diesen Benutzer zum Zweck der Authentifizierung enthält. Verschiedene Sicherheitspakete, einschließlich Authentifizierungspaket für öffentliche Schlüssel und Kerberos, verwenden diese Daten, um Benutzer zu authentifizieren, wenn sie die alternative Identifikationsform wie z. B. Zertifikat, UNIX-Kerberos-Ticket usw. präsentieren. Erstellen Sie ein Windows 2000-Token basierend auf dem entsprechenden Benutzerkonto, damit sie auf Systemressourcen zugreifen können.
Bei X.509-Zertifikaten sollten die Werte den Namen des Ausstellers und des Antragstellers in 509v3-Zertifikaten lauten, die von einer externen öffentlichen Zertifizierungsstelle ausgestellt wurden und dem Benutzerkonto zugeordnet sind, das zum Suchen eines Kontos für die Authentifizierung verwendet wurde. Das SSL-Paket (Schannel) verwendet die folgende Syntax: X509:<somecertinfotype>somecertinfo. Der folgende Wert gibt beispielsweise den Aussteller DN "<I>" mit dem DN "C=US,O=InternetCA,CN=APublicCertificateAuthority" und den Betreff-DN "<S>" mit dem DN "C=US,O=Fabrikam,OU=Sales,CN=Jeff Smith" an.
X509:<I>C=US,O=InternetCA,CN=APublicCertificateAuthority<S>C=US,O=Fabrikam,OU=Sales,CN=Jeff Smith
Beachten Sie, dass "<S>" oder "<I>" und "<S>" unterstützt werden. Nur "<I>" wird nicht unterstützt. Anwendungen sollten die Werte in "<I>" oder "<S>" nicht ändern, da der teilweise DN-Abgleich nicht unterstützt wird.
Für externe Kerberos-Konten sollten die Werte der Name des Kerberos-Kontos sein. Das Kerberos-Paket verwendet die folgende Syntax: Kerberos:MITaccountname
. Beispiel: Der Folgende ist der Wert für ein Konto unter Fabrikam.com
:
Kerberos:Jeff.Smith@Fabrikam.com
badPasswordTime
Nicht repliziert. Das badPasswordTime-Attribut gibt an, zu dem der Benutzer zuletzt versucht hat, sich mit einem falschen Kennwort beim Konto anzumelden. Dieser Wert wird als große ganze Zahl gespeichert, die die Anzahl der Intervalle von 100 Nanosekunden seit dem 1. Januar 1601 (UTC) darstellt. Dieses Attribut wird auf jedem Domänencontroller in der Domäne separat verwaltet. Der Wert 0 (null) bedeutet, dass der Zeitpunkt des letzten ungültigen Kennworts unbekannt ist. Um einen genauen Wert für den Zeitpunkt des letzten ungültigen Kennworts des Benutzers in der Domäne zu erhalten, muss jeder Domänencontroller in der Domäne abgefragt werden, und der größte Wert sollte verwendet werden.
badPwdCount
Nicht repliziert. Das Attribut badPwdCount gibt an, wie oft der Benutzer versucht hat, sich mit einem falschen Kennwort beim Konto anzumelden. Dieses Attribut wird auf jedem Domänencontroller in der Domäne separat verwaltet. Der Wert gibt 0
an, dass der Wert unbekannt ist. Um einen genauen Wert für die Gesamtzahl der Versuche mit ungültigen Kennwörtern des Benutzers in der Domäne zu erhalten, muss jeder Domänencontroller in der Domäne abgefragt werden, und die Summe der Werte sollte verwendet werden.
Codepage
Das codePage-Attribut gibt die Codepage für die vom Benutzer ausgewählte Sprache an. Dieser Wert wird von Windows nicht verwendet.
countryCode
Das countryCode-Attribut gibt den Länder-/Regionscode für die Sprache des Benutzers an. Dieser Wert wird von Windows nicht verwendet.
homeDirectory
Das homeDirectory-Attribut gibt den Pfad des Basisverzeichnisses für den Benutzer an. Die Zeichenfolge kann NULL sein.
Wenn homeDrive festgelegt ist und einen Laufwerkbuchstaben angibt, sollte homeDirectory ein UNC-Pfad sein. Der Pfad muss ein UNC-Netzwerkpfad im Format \\server\share\directory sein. Dieser Wert kann eine NULL-Zeichenfolge sein.
Wenn homeDrive nicht festgelegt ist, sollte homeDirectory ein lokaler Pfad sein, z. B. C:\mylocaldir.
homeDrive
Das homeDrive-Attribut gibt den Laufwerkbuchstaben an, dem der von angegebene UNC-Pfad zugeordnet werden homeDirectory
soll. Der Laufwerkbuchstabe muss in der folgenden Form angegeben werden:
<drive letter>:
Dabei ist "<Laufwerkbuchstabe>" der Buchstabe des zuzuordnenden Laufwerks. Beispiel:
Z:
Wenn dieses Attribut nicht festgelegt ist, sollte das homeDirectory ein lokaler Pfad sein, z. B. C:\mylocaldir.
lastLogoff
Nicht repliziert. Das lastLogoff-Attribut gibt an, wann die letzte Abmeldung erfolgt ist. Dieser Wert wird als große ganze Zahl gespeichert, die die Anzahl der Intervalle von 100 Nanosekunden seit dem 1. Januar 1601 (UTC) darstellt. Der hohe Teil dieser großen ganzen Zahl entspricht dem dwHighDateTime
Member der FILETIME-Struktur und der niedrige Teil dem dwLowDateTime
Member der FILETIME
-Struktur. Dieses Attribut wird auf jedem Domänencontroller in der Domäne separat verwaltet. Der Wert 0 (null) bedeutet, dass der Zeitpunkt der letzten Abmeldung unbekannt ist. Um einen genauen Wert für die letzte Abmeldung des Benutzers in der Domäne zu erhalten, muss jeder Domänencontroller in der Domäne abgefragt werden, und der größte Wert sollte verwendet werden.
lastLogon
Nicht repliziert. Das lastLogon-Attribut gibt an, wann die letzte Anmeldung erfolgt ist. Dieser Wert wird als große ganze Zahl gespeichert, die die Anzahl der Intervalle von 100 Nanosekunden seit dem 1. Januar 1601 (UTC) darstellt. Der hohe Teil dieser großen ganzen Zahl entspricht dem dwHighDateTime
Member der FILETIME-Struktur und der niedrige Teil dem dwLowDateTime
Member der FILETIME
-Struktur. Dieses Attribut wird auf jedem Domänencontroller in der Domäne separat verwaltet. Der Wert 0 (null) bedeutet, dass der Zeitpunkt der letzten Anmeldung unbekannt ist. Um einen genauen Wert für die letzte Anmeldung des Benutzers in der Domäne zu erhalten, muss jeder Domänencontroller in der Domäne abgefragt werden, und der größte Wert sollte verwendet werden.
lmPwdHistory
Das lmPwdHistory-Attribut ist der Kennwortverlauf des Benutzers im unidirektionalen LAN-Manager-Format (OWF). Lm OWF wird aus Gründen der Kompatibilität mit LAN Manager 2.x-Clients, Windows 95 und Windows 98 verwendet. Dieses Attribut wird nur vom Betriebssystem verwendet. Beachten Sie, dass Sie das Klartextkennwort nicht von der OWF-Form des Kennworts ableiten können.
logonCount
Nicht repliziert. Das logonCount-Attribut zählt die Anzahl der erfolgreichen Anmeldeversuche des Benutzers bei diesem Konto. Dieses Attribut wird auf jedem Domänencontroller in der Domäne verwaltet. Der Wert gibt 0
an, dass der Wert unbekannt ist. Um einen genauen Wert für die Gesamtzahl der erfolgreichen Anmeldeversuche des Benutzers in der Domäne zu erhalten, muss jeder Domänencontroller in der Domäne abgefragt werden, und die Summe der Werte sollte verwendet werden.
Das mail-Attribut ist ein einwertiges Attribut, das die SMTP-Adresse für den Benutzer enthält, jeff@Fabrikam.com
z. B. .
maxStorage
Das maxStorage-Attribut gibt den maximalen Festplattenspeicher an, den der Benutzer verwenden kann. Verwenden Sie den wert USER_MAXSTORAGE_UNLIMITED (definiert in Lmaccess.h), um den gesamten verfügbaren Speicherplatz zu verwenden.
memberOf
Das memberOf-Attribut ist ein mehrwertiges Attribut, das Gruppen enthält, deren direkter Member der Benutzer ist, mit Ausnahme der primären Gruppe, die durch die primaryGroupId dargestellt wird. Die Gruppenmitgliedschaft hängt vom Domänencontroller (DC) ab, von dem dieses Attribut abgerufen wird:
- Auf einem DC für die Domäne, die den Benutzer enthält, ist memberOf für den Benutzer in Bezug auf die Mitgliedschaft für Gruppen in dieser Domäne vollständig.
memberOf
enthält jedoch nicht die Mitgliedschaft des Benutzers in lokalen und globalen Domänengruppen in anderen Domänen. - Auf einem GC-Server ist memberOf für den Benutzer in Bezug auf alle universellen Gruppenmitgliedschaften vollständig.
Wenn beide Bedingungen für den DC zutreffen, sind beide Datasets in memberOf enthalten.
Beachten Sie, dass dieses Attribut die Gruppen auflistet, die den Benutzer in ihrem Member-Attribut enthalten– es enthält nicht die rekursive Liste geschachtelter Vorgänger. Wenn z. B. Benutzer O Mitglied von Gruppe C ist und Gruppe B und Gruppe B in Gruppe A geschachtelt sind, würde das memberOf-Attribut von Benutzer O Gruppe C und Gruppe B auflisten, jedoch nicht Gruppe A.
Dieses Attribut wird nicht gespeichert, es handelt sich um ein berechnetes Backlink-Attribut.
ntPwdHistory
Das ntPwdHistory-Attribut ist der Kennwortverlauf des Benutzers im unidirektionalen Windows NT-Format (OWF). Windows verwendet die Windows NT OWF. Dieses Attribut wird nur vom Betriebssystem verwendet. Beachten Sie, dass Sie das Klartextkennwort nicht vom OWF-Formular des Kennworts zurückleiten können.
otherMailbox
Das attribut otherMailbox ist ein mehrwertiges Attribut, das weitere zusätzliche E-Mail-Adressen in einem Formular enthält, z. B CCMAIL: JeffSmith
. .
PasswordExpirationDate
Das Kennwortablaufdatum ist kein Attribut für das Benutzerobjekt. Es handelt sich um einen berechneten Wert, der auf der Summe von pwdLastSet für den Benutzer und maxPwdAge der Domäne des Benutzers basiert. Rufen Sie zum Abrufen des Ablaufdatums des Kennworts die IADsUser.PasswordExpirationDate-Eigenschaft ab. Sie können dieses Attribut nicht für einen Benutzer ändern. Legen Sie stattdessen die IADsDomain.MaxPasswordAge-Eigenschaft fest, um die Einstellung für die Domäne zu ändern.
primaryGroupId
Das primaryGroupId-Attribut ist ein einwertiges Attribut, das den primaryGroupToken der Gruppe enthält, die die primäre Gruppe des Objekts ist. Die primäre Gruppe des Objekts ist nicht im memberOf-Attribut enthalten. Beispielsweise ist die primäre Gruppe eines Benutzerobjekts standardmäßig die primaryGroupToken
der Gruppe Domänenbenutzer, aber die Gruppe Domänenbenutzer ist nicht Teil des Attributs des Benutzerobjekts memberOf
.
profilePath
Das profilePath-Attribut gibt einen Pfad zum Profil des Benutzers an. Dieser Wert kann eine NULL-Zeichenfolge, ein lokaler absoluter Pfad oder ein UNC-Pfad sein.
pwdLastSet
Das pwdLastSet-Attribut gibt an, wann das Kennwort zuletzt geändert wurde. Dieser Wert wird als große ganze Zahl gespeichert, die die Anzahl der Intervalle von 100 Nanosekunden seit dem 1. Januar 1601 (UTC) darstellt.
Das System verwendet den Wert dieses Attributs und das maxPwdAge-Attribut der Domäne, die das Benutzerobjekt enthält, um das Kennwortablaufdatum zu berechnen. Dies ist die Summe von pwdLastSet für den Benutzer und maxPwdAge
die Domäne des Benutzers.
Dieses Attribut steuert, ob der Benutzer das Kennwort ändern muss, wenn sich der Benutzer als Nächstes anmeldet. Wenn pwdLastSet den Standardwert Null aufweist, muss der Benutzer das Kennwort bei der nächsten Anmeldung ändern. Der Wert -1
gibt an, dass der Benutzer das Kennwort bei der nächsten Anmeldung nicht ändern muss. Das System legt diesen Wert auf fest, -1
nachdem der Benutzer das Kennwort festgelegt hat.
sAMAccountType
Das sAMAccountType-Attribut gibt eine ganze Zahl an, die den Kontotyp darstellt. Dies wird vom Betriebssystem festgelegt, wenn das Objekt erstellt wird.
scriptPath
Das scriptPath-Attribut gibt den Pfad des Anmeldeskripts, der CMD-, .exe- oder .bat-Datei des Benutzers an. Die Zeichenfolge kann NULL sein.
tokenGroups
Das tokenGroups-Attribut ist ein mehrwertiges Attribut, das die SID aller Gruppen enthält, deren direktes und indirektes Mitglied der Benutzer ist, einschließlich für die primäre Gruppe. Dieses Attribut kann nur abgerufen werden, wenn ein GLOBAL CATALOG-Server (GC) vorhanden ist, um die transitiven Reversemitgliedschaften abzurufen.
Beachten Sie, dass dieses Attribut die Gruppen, die den Benutzer in ihrem Member-Attribut enthalten, sowie Gruppen, die diese Gruppen im Member-Attribut enthalten usw. rekursiv auflistet. Wenn z. B. Benutzer O Mitglied von Gruppe C ist und Gruppe B und Gruppe B in Gruppe A geschachtelt wurden, würde das tokenGroups-Attribut von Benutzer O Gruppe C, Gruppe B und Gruppe A auflisten.
Das TokenGroups-Attribut ist ein nützliches Attribut zum Abrufen einer Liste von Gruppenmitgliedschaften in nur zwei LDAP-Abfragen: die erste, die die Liste der Gruppen-SIDs aus dem tokenGroups-Attribut des Benutzers abrufen soll, die zweite, die diese Liste von SIDs verwendet, um das Namesattribut jeder Gruppe abzurufen. Dadurch wird vermieden, dass mehrere Suchvorgänge durchgeführt werden müssen, um das primaryGroupId-Attribut zu erweitern und das memberOf-Attribut rekursiv zu erweitern.
unicodePwd
Das unicodePwd-Attribut ist das Benutzerkennwort.
Um das Benutzerkennwort festzulegen, verwenden Sie die IADsUser.ChangePassword-Methode , wenn Ihr Skript oder Ihre Anwendung es dem Benutzer ermöglicht, sein eigenes Kennwort zu ändern, oder die IADsUser.SetPassword-Methode , wenn Ihr Skript oder Ihre Anwendung es einem Administrator ermöglicht, ein Kennwort zurückzusetzen.
Das Kennwort des Benutzers im unidirektionalen Windows NT-Format (OWF). Windows verwendet die Windows NT OWF. Dieses Attribut wird nur vom Betriebssystem verwendet. Beachten Sie, dass Sie das Klartextkennwort nicht vom OWF-Formular des Kennworts zurückleiten können.
userAccountControl
Das userAccountControl-Attribut gibt Flags an, die das Verhalten des Kennworts, der Sperrung, des Deaktivierens/Aktivierens, des Skripts und des Basisverzeichnisses für den Benutzer steuern. Dieses Attribut enthält auch ein Flag, das den Kontotyp des Objekts angibt. Für das Benutzerobjekt ist in der Regel die UF_NORMAL_ACCOUNT festgelegt.
Die folgenden Flags sind in Lmaccess.h definiert.
Flag | Beschreibung |
---|---|
UF_SCRIPT | Das ausgeführte Anmeldeskript. Dieser Wert muss für LAN Manager 2.0 oder Windows NT festgelegt werden. |
UF_ACCOUNTDISABLE | Das Benutzerkonto ist deaktiviert. |
UF_HOMEDIR_REQUIRED | Das Basisverzeichnis ist erforderlich. Dieser Wert wird in Windows NT und Windows 2000 ignoriert. |
UF_PASSWD_NOTREQD | Es ist kein Kennwort erforderlich. |
UF_PASSWD_CANT_CHANGE | Der Benutzer kann das Kennwort nicht ändern. |
UF_LOCKOUT | Das Konto ist derzeit gesperrt. Dieser Wert kann gelöscht werden, um ein zuvor gesperrtes Konto zu entsperren. Dieser Wert kann nicht verwendet werden, um ein zuvor gesperrtes Konto zu sperren. |
UF_DONT_EXPIRE_PASSWD | Stellt das Kennwort dar, das nie für das Konto ablaufen darf. |
Die folgenden Flags beschreiben den Kontotyp. Es kann nur ein Wert festgelegt werden. Sie können den Kontotyp nicht ändern.
Flag | Beschreibung |
---|---|
UF_NORMAL_ACCOUNT | Dies ist ein Standardkontotyp, der einen typischen Benutzer darstellt. |
UF_TEMP_DUPLICATE_ACCOUNT | Dies ist ein Konto für Benutzer, deren primäres Konto sich in einer anderen Domäne befindet. Dieses Konto bietet Benutzern Zugriff auf diese Domäne, aber nicht auf eine Domäne, die dieser Domäne vertraut. Der Benutzer-Manager bezieht sich auf diesen Kontotyp als lokales Benutzerkonto. |
UF_WORKSTATION_TRUST_ACCOUNT | Dies ist ein Computerkonto für eine Windows NT-Arbeitsstation/Windows 2000 Professional oder Windows NT Server/Windows 2000 Server, die Mitglied dieser Domäne ist. |
UF_SERVER_TRUST_ACCOUNT | Dies ist ein Computerkonto für einen Windows NT Backup-Domänencontroller, der Mitglied dieser Domäne ist. |
UF_INTERDOMAIN_TRUST_ACCOUNT | Dies ist eine Genehmigung zum Vertrauen eines Kontos für eine Windows NT-Domäne, die anderen Domänen vertraut. |
userCertificate
Das userCertificate-Attribut ist ein mehrwertiges Attribut, das die FÜR den Benutzer ausgestellten DER-codierten X509v3-Zertifikate enthält. Beachten Sie, dass dieses Attribut die Öffentlichen Schlüsselzertifikate enthält, die vom Microsoft-Zertifikatdienst für diesen Benutzer ausgestellt wurden.
userSharedFolder
Das userSharedFolder-Attribut gibt einen UNC-Pfad zum freigegebenen Dokumentordner des Benutzers an. Der Pfad muss ein UNC-Netzwerkpfad im Format \\server\share\directory sein. Dieser Wert kann eine NULL-Zeichenfolge sein.
userWorkstations
Das attribut userWorkstations ist ein einwertiges Attribut, das die NetBIOS-Namen der Arbeitsstationen enthält, bei denen sich der Benutzer anmelden kann. Jeder NetBIOS-Name wird durch ein Komma getrennt.
Wenn keine Werte festgelegt sind, gibt dies an, dass es keine Einschränkung gibt. Um Anmeldungen von allen Arbeitsstationen bei diesem Konto zu deaktivieren, legen Sie den UF_ACCOUNTDISABLE Wert (definiert in Lmaccess.h) im UserAccountControl-Attribut fest.