View
109
Download
0
Category
Preview:
Citation preview
Erfahrungen eines Directory Services-Experten
mit Sicherheit und Delegation{im Active Directory}
Ulf B. Simon-WeidnerSenior Consultant , Trainer, Autor
Grundlagen zum Windows SicherheitsmodellWerkzeuge und ScriptingEntwerfen und Implementieren Rollenbasierter AdministrationWindows Server 2008
Agenda
Wie funktioniert Delegation?
Benutzer-Token vs. Security Descriptor – darf ich vorstellen:Bei der Anmeldung erhält der Benutzer seinen Token (Liste von SIDs des Benutzer, SidHistory, Gruppen, ...): whoami /allDas System vergleicht den Token mit der DACL/SACL um Zugriff zu gewähren, verweigern oder überwachen
defaultSecurityDescriptor der Object-Klasse im Schema
Schema
Neuer Benutzer
Container
Vererbte Rechte des übergeordneten ContainersExplizite Rechte
Wo kommen die Berechtigungen her?
Unsere neuen Freunde
Windows Security auf Ressorcen:NTSecurity-DescriptorDACLSACLACE
NTSecurityDescriptor
Besitzer des Objektes (SID)Primäre Gruppe des Besitzers (SID)Revision: 1Control: Flags:
SE_DACL_PRESENTSE_DACL_PROTECTEDSE_SACL_PRESENTSE_SACL_PROTECTED
Protected = Doesn‘t allow inheritance
Owner (SID)
Primary Group (SID)
Discretionary Access Control List
(DACL)
SystemAccess Control List
(SACL)
Revision
Control
Owner (SID)
Primary Group (SID)
Revision
Control
Discretionary Access Control List (DACL) kontrolliert ZugriffsberechtigungenSystem Access Control List (SACL) kontrolliert Überwachungen
ACECount: Anzahl der ACEsACLRevision: 1List of ACEs
ACECount
ACLRevision
Access Control Entries(ACE)
ACECount
ACLRevision
DACL / SACL
Trustee: Für wen ist die ACE? (SID)ACEType: Allow oder Deny ACEACEFlags:ACE wird vererbt auf
All Objects belowOne LevelNot to base, just inheritWas inheritedSACL: Success/Failure
Trustee (SID)
ACEFlags
ACEType
AccessMask
InheritedObjectType
Flags
ObjectType
Trustee (SID)
ACEFlags
ACEType
Access Control Entry
AccessMask:Definiert die vergebenen Rechte
Delete the objectRead | Modify DACL | SACL Get OwnershipGeneric Read | Write | Execute | AllCreate | Delete | List ChildRead | Write PropertyDelete TreeList ObjectControl Access
Trustee (SID)
ACEFlags
ACEType
AccessMask
InheritedObjectType
Flags
ObjectType
Access Control Entry
Flags: Welche Felder existieren?
ObjectType (0x1)InheritedObjectType (0x2)
ObjectType:Write/Read Property oderCreate/Delete Child:{Schema-Id-GUID} des
Objektes/AttributesInheritedObjectType:Vererbt auf welchen
Object-Typ {Schema-Id-Guid}
Trustee (SID)
ACEFlags
ACEType
AccessMask
InheritedObjectType
Flags
ObjectType
InheritedObjectType
Flags
ObjectType
Access Control Entry
Administrative Interfaces
Erweiterte SicherheitseinstellungenSecurity Descriptor Owner / Group
ACEs
DACL / SACL
Control (SE_xACL_Protected)
Berechtigungseinträge (ACEs)
ACE Trustee
AccessMask
ACEType
ACEFlags
InheritedObjectType
ObjectType
Grundlagen zum Windows SicherheitsmodellWerkzeuge und ScriptingEntwerfen und Implementieren Rollenbasierter AdministrationWindows Server 2008
Agenda
Grundlagen zum Windows SicherheitsmodellWerkzeuge und ScriptingEntwerfen und Implementieren Rollenbasierter AdministrationWindows Server 2008
Agenda
Security Descriptor Definition Language (SDDL)
Wird verwendet inStandardrechten des Schema: „defaultSecurityDescriptor“ des SchemaObjEventlog Berechtigungen: HKLM\Sys\CCS\services\Eventlog\..\CustomSD
Beispiel:O:AOG:DAD:(A;;RPWPCCDCLCSWRCWDWOGA;;;DA)Besitzer:Account OperatorsGruppe:Domain AdminsDACL:Parameters(ACE1)(ACE2)..SACL:Parameters(ACE1)(ACE2)..
Allow ACE(ACE-Flags)Rights: Read Property, Write Property, Create Child, ..(ObjectType)(InheritedObjectType)Trustee (Domain Admins)
Mehr Info: http://msdn.microsoft.com/library/en-us/secauthz/security/security_descriptor_definition_language.asp
Mit GUIDs arbeiten
Um nach GUIDs zu suchen müssen sie dies in ein anderes Format umwandeln:{11223344-5566-7788-99aa-bbccddeeffgg}
\44\33\22\11\66\55\88\77\99\aa\bb\cc\dd\ee\ff\gg
z.B. GUID der Computerklasse:{bf967a86-0de6-11d0-a285-00aa003049e2}\86\7a\96\bf\e6\0d\d0\11\a2\85\00\aa\00\30\49\e2
Suche über LDP/Script: cn=schema,cn=configuration,dc=.. (onelevel)schemaIDGUID=
\86\7a\96\bf\e6\0d\d0\11\a2\85\00\aa\00\30\49\e2
Einrichten von Benutzern vs. Replikation
Beispiel: Erstellen eines Benutzers, sowie ihn auf sein Homelaufwerk berechtigen (Skript)
Provisioning
Wer ist „Joe“?
Keine Ahnung
?\\Fileserver\Joe$
2. \\Fileserver\Joe$ erstellen3. „Joe“ auf Homelaufwerk berechtigen
1. Joe erstellen
Joe
Ergebnis: Joe hat keinen Zugriff auf sein Homelaufwerk
S-1-5-xx-103: FC
Provisioning
Wer ist „Joe“?
Joe: S-1-5-xx-103
!\\Fileserver\Joe$
3. \\Fileserver\Joe$ erstellen4. „Joe“ berechtigen
Ergebnis: Joe kann auf sein Homelaufwerk zugreifen,dauert aber
2. Replizieren von Joe, oder abwarten
oe
1. Joe erstellen
Joe
Beispiel: Erstellen eines Benutzers, sowie ihn auf sein Homelaufwerk berechtigen (Skript)
Einrichten von Benutzern vs. Replikation
S-1-5-xx-103: FC
Provisioning
Was ist Joes SID?
\\Fileserver\Joe$
3. \\Fileserver\Joe$ erstellen4. Joes SID Vollzugriff geben
Ergebnis: Joe hat Zugriff, auch wenn er noch nicht repliziertwurde
2. Nach Joes SID fragen
1. Joe erstellen
Joe
Beispiel: Erstellen eines Benutzers, sowie ihn auf sein Homelaufwerk berechtigen (Skript)
z Z
Z..
Einrichten von Benutzern vs. Replikation
Berechtigungen Scripten
Dsacls:Ansehen oder setzen von Berechtigungen auf spezifischen ObjektenDSRevoke:Anzeigen / Löschen von Berechtigungen bestimmter BenutzerSubInAcls: File, Registry, Cluster, ... ACEsVBS / VB.NET / ..Alles ist möglich ;-)
Grundlagen zum Windows SicherheitsmodellWerkzeuge und ScriptingEntwerfen und Implementieren Rollenbasierter AdministrationWindows Server 2008
Agenda
Grundlagen zum Windows SicherheitsmodellWerkzeuge und ScriptingEntwerfen und Implementieren Rollenbasierter AdministrationWindows Server 2008
Agenda
Delegation planen
Aufgaben definierenWer ist primär verantwortlich?Wer ist auch verantwortlich?Entwerfen der RollenWelche Rechte werden gebraucht?Struktur für Berechtigungsgruppen entwerfenErstellen, Testen, Überprüfen
Kontenoperatoren im Kreuzfeuer
OU-Design:DelegationGruppenrichtlinien
Kontenoperatoren:CCDC & FC von Benutzern, Computern, Gruppen, InetOrgPerson
Problem:CCDC & FC für Benutzer, Gruppen in MyComputers OU, Computern in MyUsers,...
Create/Delete Child & Full Control on• Users• Computers• Groups• InetOrgPerson
Kontenoperatoren im Kreuzfeuer
Beabsichtigt:Vollzugriff auf Benutzer, Computer, Gruppen und InetOrgPerson-Objects in den entsprechenden OUs.
Lösung:Erstellen einer eigenen Gruppe und Delegation der Rechte
Erstellen und Berechtigen Sie Ihre eigene „Kontenoperatoren“-Gruppe
Create/Delete Child & Full Control on• Computers
Create/Delete Child & Full Control on• Users• InetOrgPerson
Create/Delete Child & Full Control on• Groups
AdminSdHolder
Ein spezieller “Prozess” der Administrative Konten schütztLäuft einmal pro Stunde (auf dem PDC-Emulator)Schützt Mitglieder der Gruppen DA, EA, SA, BA,-Operatoren (setzt und überprüft „adminCount“)Setzt die Rechte auf die des cn=AdminSdHolder,cn=System,.. zurückAchtung:
Betrifft auch Rekursive Gruppenmitgliedschaften (sogar Verteilergruppen)Empfehlung:
Entsprechender Entwurf der OU-StrukturKeine eingebauten Gruppen verwenden wenn nicht notwendig
Mehr Infos: http://msmvps.com/blogs/ulfbsimonweidner/archive/2005/05/29/49659.aspx
Was muss ich delegieren?
Active Directory Delegation Whitepaper
When it moves – script itVergleich von Objektattributen vor und nach einer
Änderung:Attributänderungen: ldifde –s server –d dn –f file1.log
Replizierte Attribute: repadmin /showobjmeta server dn /nocache
/linked >> file1.log
Geänderte Rechte: dsacls \\server\dn >> file1.log
Implementieren von Delegation
Anfangs: Script it mit DSAcls or VBSdsacls "ou=Frankfurt,ou=MyUser,dc=example,dc=com"
/G example\FFM-Helpdesk:WP;lockoutTime;user /I:Sdsacls "ou=Frankfurt,ou=Sitegroups,ou=MyGroups,dc=...„
/G example\FFM-Helpdesk:WP;member;group /I:S
Anpassen des Delegations-Assistenten: (%windir%\inf\delegwiz.inf)[template14]AppliesToClasses=domainDNS,organizationalUnit,containerDescription = "Site Helpdesk"ObjectTypes = user,group[template14.user]lockoutTime=WP[template14.group]member=WP
Admintools - Empfehlungen
Testen Sie die Administrativen Benutzeroberflächen ob sie mit Ihren delegierten Rollen arbeiten können
Wenn Sie Admin-Interfaces programmieren, testen Sie die Berechtigungen
Mit dem Objekt verbinden, dann allowedAttributesEffective und/oder allowedChildClassesEffective überprüfen
Reporten / Überwachen von Berechtigungen
Wie kann ich einen Report erhalten:Wo hat ein Benutzer Berechtigungen?Wer hat Rechte auf einer bestimmten OU?Wo sind welche Rechte delegiert worden?
Überwachen von Berechtigungen?Benutzen Sie ein Tool / lassen Sie regelmäßig Reports laufenÜberwachung einschalten und auf Event 566 der Kategorie Directory Service Access überprüfenScripten
Grundlagen zum Windows SicherheitsmodellWerkzeuge und ScriptingEntwerfen und Implementieren Rollenbasierter AdministrationWindows Server 2008
Agenda
Grundlagen zum Windows SicherheitsmodellWerkzeuge und ScriptingEntwerfen und Implementieren Rollenbasierter AdministrationWindows Server 2008
Agenda
Überwachungsrichtlinien fürActive Directory
Eigene Ansichten des Eventlogs möglichWeiterleiten und zentrales Sammeln von bestimmten EreignissenAufgaben können durch Events ausgelöst werdenMehr Details in Audit-Logs
Z.B. Attributänderungen
auditpol /get /category:“DS Access“auditpol /set /subcategory:“Directory Service Changes“
Read Only Domain Controller (RODC)
Festlegen wessen Passworte in dem Standort repliziert werden
Keine „kritischen Passwörter“ in unsichere Standorte replizieren
Delegieren der lokalenAdministration vonRODCs
Verbesserte / Neue Kommandozeilentools
DSACLS.exeHinzufügen / Entfernen von ACEsVerbesserte Fehlerbehandlung um fehlerhafte ACLs darzustellenSIDs anstelle von Namen zugelassen
ICACLS.exeHinzufügen / Entfernen von SIDs in NTFSSichern / Rücksichern von ACEs in eine DateiBehält korrekte Reihenfolge der ACEsSIDs anstelle von Namen zugelassen
Partner auf dem Launch 2008
Europas führender herstellerübergreifender Dienstleister für Informationstechnologie
Windows Server 2008 im Haus implementiertKundenprojekte zu WS2k8 seit Anfang 2007Zahlreiche ReferenzenGroße Erfahrung bei Migrationsprojekten
Halle 5.1, Stand 6.2
Das Magazin für professionelle System- und Netzwerkadministration
Mai / Juni 2007: Vorschau auf Windows Server 2008November 2007 bis Januar 2008: Serie zu Windows Server 2008März / April 2008: Active Directory Wiederherstellung mit Windows Server 2008
Halle 5.1, Stand 6.18
Windows Server 2008Ressourcen
Windows Server 2008 Tech Centerhttp://www.microsoft.com/germany/technet/prodtechnol/windowsserver/2008/default.mspx
Windows Server 2008 Webcasts:http://www.microsoft.com/germany/technet/webcasts/windowsserver2008.mspx
Windows Server 2008 Produktseite:http://www.microsoft.com/germany/windowsserver2008/default.mspx
Microsoft Virtualization:http://www.microsoft.com/virtualization/default.mspx
Ressourcen
Security Descriptor in der MSDN-LibraryPlatform SDKActive Directory Delegation Whitepaper:Best Practices for Delegating Active Directory Administration
http://www.microsoft.com/downloads/details.aspx?FamilyID=631747a3-79e1-48fa-9730-dae7c0a1d6d3
Best Practices for Delegating Active Directory Administration Appendiceshttp://www.microsoft.com/downloads/details.aspx?FamilyID=29dbae88-a216-45f9-9739-cb1fb22a0642
Mein Blog:www.msmvps.com/ulfbsimonweidner
Meine WebSite:www.windowsserverfaq.de Scripting Example at FAQ AD Bugs Computer ACEs
Ask the ExpertsWir freuen uns auf Ihre Fragen: Technische Experten stehen Ihnen während der gesamten Veranstaltung in der Haupthalle zur Verfügung.
© 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.
The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after
the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
Recommended