Last Update: Sep 04, 2024 | Published: Jun 03, 2015
In this Ask the Admin, I’ll show you how to add or remove Active Directory attributes from the read-only domain controllers (RODCs) filtered attribute set, to control whether sensitive data gets replicated to branch offices.
Read-only domain controllers were introduced in Windows Server 2008 and were designed to improve security in locations where server hardware can’t be physically secured, most commonly branch offices. While RODCs contain a copy of each domain partition, some Active Directory (AD) attributes are not replicated, so if an RODC is compromised, only a limited amount of data is exposed.
Attributes marked RODC_FILTERED are part of what’s known as the RODC filtered attribute set, or FAS, and are not replicated to RODCs. By default, the attributes included in FAS are:
While it’s unlikely you’d want to remove any of these attributes from the RODC FAS, it might be useful to remove attributes that get added as part of extending the Active Directory schema. For example, in my recent article Secure Local Administrator Accounts with the Local Administrator Password Solution (LAPS) Tool on the Petri IT Knowledgebase, I showed you how to extend the AD schema to add two new attributes required by LAPS to store local administrator passwords (ms-MCS-AdmPwd) and expiry times (ms-MCS-AdmPwdExpirationTime) in Active Directory.
The PowerShell cmdlet included with LAPS used to extend the schema adds the ms-MCS-AdmPwd attribute to the RODC FAS, so if you want IT staff to be able to access local administrator passwords stored in AD directly from an RODC, the ms-MCS-AdmPwd attribute needs to be removed from the RODC FAS.
Before you can modify Active Directory attributes, you need to be logged in as a schema administrator. ADSI Edit can be accessed from Server Manager on a domain controller or from a domain member that has the Remote Server Administration Tools (RSAT) installed. For more information on working with RSAT, see Remote Server Administration Tools (RSAT) for Windows 8: Download and Install on Petri.
For the purposes of this demo, I’ll log on to a Windows Server 2012 R2 domain controller as a domain administrator.
Expand the Value field, and you’ll see not only the value setting in HEX, 0x388, but also the set bits: PRESERVE_ON_DELETE, CONFIDENTIAL, NEVER_AUDIT_VALUE, RODC_FILTERED. To remove the RODC_FILTERED bit from the attribute value, I need to set the 9th bit of the value to 0. To do this, I need to subtract 512 from the currently set decimal number.
IN the Properties dialog, you’ll now see that the HEX number of the searchFlags attribute value has changed, and the RODC_FILTERED flag has been removed from the list.
Other flags can be removed from the searchFlags attribute value, such as CONFIDENTIAL, which prevents members of the Authenticated Users group, which includes the computer accounts of RODCs, from reading the attribute, even if it’s not replicated to a RODC. To remove the CONFIDENTIAL flag from the seachFlags attribute value, subtract 128 from the currently set decimal number.
Related Article: