Kontodatenbank

Active Directory stellt die Kontodatenbank bereit, die das Key Distribution Center (KDC) verwendet, um Informationen zu Sicherheitsprinzipalen in der Domäne abzurufen. Jeder Prinzipal wird durch ein Kontoobjekt im Verzeichnis dargestellt. Der Verschlüsselungsschlüssel , der für die Kommunikation mit einem Benutzer, Computer oder Dienst verwendet wird, wird als Attribut des Kontoobjekts dieses Sicherheitsprinzipals gespeichert.

Nur Domänencontroller sind Active Directory-Server. Jeder Domänencontroller behält eine beschreibbare Kopie des Verzeichnisses bei, sodass Konten erstellt, Kennwörter zurückgesetzt und die Gruppenmitgliedschaft auf jedem Domänencontroller geändert werden kann. Änderungen, die an einem Replikat des Verzeichnisses vorgenommen werden, werden automatisch an alle anderen Replikate weitergegeben. Windows repliziert den Informationsspeicher für Active Directory mithilfe eines proprietären Replikationsprotokolls mit mehreren master, das eine sichere Remoteprozeduraufrufverbindung zwischen Replikationspartnern verwendet. Die Verbindung verwendet das Kerberos-Authentifizierungsprotokoll , um gegenseitige Authentifizierung und Verschlüsselung bereitzustellen.

Der physische Speicher von Kontodaten wird vom Verzeichnissystem-Agent verwaltet, einem geschützten Prozess, der in die lokale Sicherheitsbehörde (Local Security Authority , LSA) auf dem Domänencontroller integriert ist. Clients des Verzeichnisdiensts erhalten nie direkten Zugriff auf den Datenspeicher. Jeder Client, der Auf Verzeichnisinformationen zugreifen möchte, muss eine Verbindung mit dem Verzeichnissystem-Agent herstellen und dann nach Verzeichnisobjekten und deren Attributen suchen, lesen und schreiben.

Anforderungen für den Zugriff auf ein Objekt oder Attribut im Verzeichnis unterliegen der Überprüfung durch Windows-Zugriffssteuerungsmechanismen. Ähnlich wie Datei- und Ordnerobjekte im NTFS-Dateisystem werden Objekte im Active Directory durch Zugriffssteuerungslisten (Access Control Lists , ACLs) geschützt, die angeben, wer auf welche Weise auf das Objekt zugreifen kann. Im Gegensatz zu Dateien und Ordnern verfügen Active Directory-Objekte jedoch über eine ACL für jedes ihrer Attribute. Daher können Attribute für vertrauliche Kontoinformationen durch restriktivere Berechtigungen geschützt werden als für andere Attribute des Kontos.

Die vertraulichsten Informationen zu einem Konto ist natürlich das Kennwort. Obwohl das Kennwort-Attribut eines Kontoobjekts einen von einem Kennwort abgeleiteten Verschlüsselungsschlüssel speichert, nicht das Kennwort selbst, ist dieser Schlüssel für einen Eindringling genauso nützlich. Daher wird der Zugriff auf das Kennwortsattribut eines Kontoobjekts nur dem Kontoinhaber gewährt, nie jemand anderem, nicht einmal Administratoren. Nur Prozesse mit Trusted Computing Base-Berechtigungen – Prozesse, die im Sicherheitskontext des LSA ausgeführt werden – dürfen Kennwortinformationen lesen oder ändern.

Um einen Offlineangriff durch jemanden mit Zugriff auf das Sicherungsband eines Domänencontrollers zu verhindern, wird das Kennwortattribute eines Kontoobjekts durch eine zweite Verschlüsselung mit einem Systemschlüssel geschützt. Dieser Verschlüsselungsschlüssel kann auf Wechselmedien gespeichert werden, sodass er separat geschützt werden kann, oder er kann auf dem Domänencontroller gespeichert werden, aber durch einen Verteilungsmechanismus geschützt werden. Administratoren können auswählen, wo der Systemschlüssel gespeichert wird und welcher von mehreren Algorithmen zum Verschlüsseln von Kennwortattributen verwendet wird.