Active Directory: Organization, Structure, and FunctionActive Directory provides a hierarchical directory for Windows 2000 and Windows Server 2003 domains. Objects in the directory, computers, users, shares, printers, and so on can be defined, managed, and secured using native tools. There are several security-specific characteristics:Active Directory's hierarchical structure, flexible domain architecture, and replication and Group Policy functions allow granular configuration of security settings and automatic maintenance across large numbers of computers and users at far less administrative cost than would be possible without it.Because its structure separates sites and domains and provides for the segmentation of domains into Organizational Units (OUs), administrative authority can be delegated.Active Directory's reliance on DNS provides additional opportunities for security infrastructure and new potential vulnerabilities.Kerberos-style transitive trust relations exist between domains within a forest, and access to resources within one domain can be granted to users from another domain.Tight coupling of domain infrastructure within the forest enables potential breaches of domain boundaries by rogue administrators. The domain is not a rigid security boundary. Trust relationship and critical security boundary issues will be covered in the next chapter.Successful Active Directory designs and implementations are the result of applying key concepts and knowledge of the needs and requirements of the organization. Active Directory key concepts are as follows:The hierarchical structure of Active Directory and its schemaActive Directory ReplicationGroup Policy structure and functionDelegation of AuthorityReliance on DNS Hierarchical StructureThe Active Directory security boundary, or forest, is composed of one or more trees. Each tree represents a contiguous DNS namespace. For example, an Active Directory forest might be composed of two trees: the chicago.local tree and the sanfrancisco.local tree. The trees are joined during the creation of the second namespace. Within each tree, any number of domains can be added. Each domain will incorporate the name of its parent domain. Figure 7-1 shows a representative forest with several subdomains. Figure 7-1. Each tree of the forest maintains its own namespace.[View full size image] ![]() Figure 7-2. Sites can be composed of computers from multiple domains.![]() ReplicationTwo types of replication are used in a Windows Server 2003 forest: Active Directory replication and file replication. Active Directory replication ensures that changes made to the database on one domain controller are transferred to all other appropriate domain controllers in the forest. Replication between domains located in the same site occurs automaticallyit is managed by the Knowledge Consistency Checker (KCC). The default implementation of Active Directory creates one site. However, additional sites may be added, and when they are, a site link, which manages replication between sites, is created. The creation of sites modifies replication patterns and both inter- and intrasite replication patterns, and schedules can be manually configured. File replication is managed by the File Replication Service and is used by default to replicate files necessary for forest functioning. It can also be manually configured and used to replicate other files.Domain controllers (DC) contain a copy of AD. Each domain controller in the domain contains both AD information that is forest-wide, such as the schema and configuration data, and domain-specific data, such as user and computer accounts. For example, if new domain-specific information, such as a new user account, is added at a specific DC, the information will be shared with all DCs in the domain via replication. On the other hand, changes to the schema, such as new classes added during the installation of Microsoft Exchange Server, will be replicated to every DC in the forest.Windows Server 2003 DCs also may contain an Active Directory Application partition. The application partitions make it possible to restrict application-specific data to only those DCs where it is desired. An example of an application partition might consist of the specification of which DCs would contain DNS data when DNS is integrated with Active Directory. In Windows 2000, AD-integrated DNS data is replicated to all domain controllers. However, with Windows Server 2003, you can specify which DCs will have a copy of the DNS data. The use of application partitions can improve replication performance because less data must be replicated to every DC.Most replication in Active Directory is multimasterthat is, it can be created on any DC and is then replicated between all DCs in the domain; if it is not domain-specific, it is replicated among all domains in the forest. However, there are some exceptions to this rule. Two are especially important to a discussion of security: Global Catalog replication and the role of the PDC Emulator.The Global Catalog server (GC) is a designated DC whose Active Directory database contains an additional partition. This partition hosts a record of all objects in the forest but does not include all of the attributes of all of these objects. The GC is important to forest-wide functioning because it provides enough information so that objects can be easily located within the forest, or so that objects that refer to objects in different domains have a centralized storage place. For example, when Universal groups (which can contain users from any domain in the forest) are assigned resource permissions, it must be possible during logon to discover any Universal group memberships that a user might have. It must be possible, for example, to search for a specific user account membership in Universal groups to assign them access to resources in other domains.The GC role is not the only unique role that may be assigned to a DC. Five Flexible Single Master Operations (FSMOs) manage specific functions within the AD, and these roles are assigned to DCs. Another name for FSMOs often used in Microsoft documentation is Operations Masters. FSMOs and their roles are defined in Table 7-1. Group PolicyGroup Policy is an administrative tool that can be used to manage domain user and member computer accounts. A wide range of items can be managed, including the following:Installing software on domain member computersApplying startup and shutdown scriptsApplying security settingsApplying configuration settings as defined in administrative templatesMaintaining Internet Explorer settingsRestricting Remote Installation ServicesRestricting which software can runProviding for folder redirection Group Policy Configuration and InheritanceConfiguring Group Policy consists of creating a Group Policy Object (GPO) and defining the settings for each of the items listed in the previous section. Two main divisions of the GPO exist: one that is applied to computers and one that is applied to users. Several default GPOs exist, including a local GPO for each Windows XP, Windows 2000, or Windows Server 2003 computer, and if a forest is established, a unique default domain GPO and unique default domain controller GPO for each domain in the forest.A GPO can be linked to a site, domain, or OU object in the Active Directory. Windows 2000 documentation often refers to these containers by naming them in the order in which they are applied: local, site, domain, OU, and child OU. Instead of repeating the entire list of possible objects to which a GPO can be linked, or using the initials SDOU, Windows Server 2003 documentation refers to each of these containers as a Scope of Management (SOM). When a GPO is linked to an SOM, the policies within the GPO are applied to any user, group, or computer account that resides in the SOM. For example, if Mary's account is in the Accounting OU and Fred's is in the Users container of the domain, then a GPO linked to the Accounting OU will impact Mary's account but not Fred's. A GPO can be linked to many SOMs, and many GPOs can be linked to a single SOM.NOTE: The User and Computer Containers Are Not SOMsUser and Computer containers in Active Directory are not SOMs; therefore, a GPO cannot be linked to them. User accounts in the User container are affected by site and domain GPOs, as are computer accounts in the Computer container. The Domain Controllers container is, however, a SOM (it's an OU). The default domain controller's GPO is linked to this container, and additional GPOs also can be linked there.Because multiple GPOs exist by default, and more can be created, Group Policy rules define how settings are applied and what occurs when a conflict between settings in a GPO exists. Five main concepts apply.First, the computer portions of a GPO are applied during boot, and the user portion of a GPO is applied during the user's logon process. This means that some parts of policy remain constant no matter which user logs on to a computer, and other parts are uniquely applied depending on the logged on user. During computer boot and logon or user logon, the relevant GPO GUIDs are collected from Active Directory. The policies are then downloaded from their location on a DC sysvol share. If a policy is changed, and the user or computer is still logged on, the process of applying these changes is begun approximately within five minutes on DCs and within 90 minutes on member computers. The security settings portion of AD is applied every 16 hours regardless of whether changes have been made to this section. However, how quickly a new Group Policy or changes to Group Policy are applied is a function of other higher priority activity occurring on the DC, replication processes, the refresh process, and what part of the GPO the policy changes reside in. The latency of GPO application needs to be considered when updating security policy. Knowing the replication latency for a specific network will help you understand normal delays in policy application. Remember that two types of replication, AD and FRS, impact GPOs. Active Directory replication and FRS must both be working correctly for security policy to be applied and maintained.Second, when a GPO is created or modified in a Windows 2000 domain, the information is written by default to the domain controller that is the PDC Emulator. If and only if this DC is not available, an authorized administrator may select another DC. One feature that is new to Windows Server 2003 is that the default DC location for the creation of GPOs can be selected by an administrator who has the Create and Manage GPO right.GPO information is written to two different placessome to Active Directory and some to the %windir%\SYSVOL folderas shown in Figure 7-3. Each GPO is given a unique GUID, or globally unique ID number, and this number is used to coordinate the parts of the GPOs. The information in Active Directory is replicated through the normal Active Directory Replication process. However, the information in the SYSVOL share is replicated to the %windir%\SYSVOL\sysvol folder (shared as SYSVOL) on each domain controller using the File Replication Service (FRS). Each policy is placed in this share within a folder named by the domain name. Any scripts are placed in the %windir%\SYSVOL\sysvol\scripts folder (the netlogon share) under that domain. Figure 7-3. Scripts and the system policy part of the GPO are first written to the SYSVOL\domain directory and then replicated using FRS to SYSVOL\sysvol\domainname.[View full size image] ![]()
Figure 7-5. The security policy applied to a user or computer account is dependent on the location of the account.![]() Delegation of Administrative AuthorityIn versions of Windows prior to Windows 2000, administrative authority is defined for selected built-in groups (administrators, domain admins, server operators, account operators,) and accounts (Administrator, Guest). A custom group or new user account can be given some administrative authority by granting predefined user rights such as Add workstations to domain, or backup files and directories to a group or user account. In a Windows 2000 or Windows Server 2003 domain, an extremely granular level of administrative authority can be granted by modifying access control lists (ACLs) on Active Directory Objects. To simplify the process, the Delegation of Control Wizard can be used. Instructions on using this wizard to develop administrative roles in Windows Server 2003 can be found in the section "Delegation of AdministrationUsing the Delegation of Control Wizard." Reliance on DNSActive Directory forests are defined by DNS namespaces. Without access to a properly configured and active DNS server, Active Directory cannot function. Member computers cannot connect to the domain controllers, users cannot log on, and security policy cannot be applied. These functions can only occur if users and computers can locate the following services on the network._ldap Necessary to use ldap to query AD._Kerberos Necessary for Kerberos authentication._gc The Global Catalog servers, necessary for lookup of forest-wide data including membership in Universal Groups (caching of Universal group membership is an option in Windows Server 2003 domains. If enabled, access to a global catalog server is not necessary at every logon.) These services are advertised in DNS as Service locator (SRV) resource records, and an example is shown in Figure 7-6. Multiple servers that offer TCP/IP-based services can advertise the same service, and a single DNS request can locate them. Each SRV record in DNS includes the following:DNS domain nameService (many services are defined in RFC 1700)Protocol (typically TCP or UDP)Priority, which sets a preference among multiple servers offering the same serviceWeight, which can be used with preference to provide load balancing (several servers with the same priority can be weighted so that one is chosen more or less frequently than the others)Port number (service port on target host)Host offering this service target or DNS host name, which provides the service Figure 7-6. SRV records help clients access domain services.![]() |