{"id":10099,"date":"2018-08-09T06:00:24","date_gmt":"2018-08-09T13:00:24","guid":{"rendered":"https:\/\/www.zubairalexander.com\/stage\/?p=10099"},"modified":"2019-06-09T17:52:08","modified_gmt":"2019-06-10T00:52:08","slug":"active-directory-schema-management","status":"publish","type":"post","link":"https:\/\/www.zubairalexander.com\/blog\/active-directory-schema-management\/","title":{"rendered":"Active Directory Schema Management"},"content":{"rendered":"<p>Active Directory consists of objects (users, computers, printers, groups, etc.) and their attributes (properties). Schema is an important component of the Active Directory because it defines all the objects and attributes that are used to store data. Active Directory is divided in several partitions. Schema is stored in the schema partition and then replicated to all the domain controllers (DCs) in the entire forest. Whenever you make a change to the schema, all the DCs in the forest receive that change.<\/p>\n<h4><strong>Important Fundamentals of Schema<\/strong><\/h4>\n<p>Some programs that integrate with Active Directory will make the appropriate changes to the schema for you. For example, if you install Microsoft Exchange, the setup programs updates the schema and the change is replicated to all the DCs so they know about the new Exchange server. It&#8217;s rare that you would have to manually make changes to the schema. Only individuals who are Active Directory experts and are very familiar with Active Directory schema are qualified to make changes to the schema. You must be a member of the Active Directory Schema Admins group to make changes to the schema. Manually making changes to the schema is like doing a brain surgery on the Active Directory. One serious mistake can potentially burn down your entire forest. Here are some important concepts that you mind helpful when working with Active Directory schema.<\/p>\n<p>When you install Microsoft\u00a0Active, the setup program creates the schema which includes objects and their definitions. You can create new object definitions in schema, and then create objects based on those definitions, but you cannot delete the Active Directory schema objects or the object definitions. Yes, that&#8217;s right. You can only add object definitions to schema, but you cannot delete them. There is a reason for that, but that discussion is beyond the scope of this article. What if you make a mistake when creating object definitions? That&#8217;s too bad. I told you modifying schema manually is like doing a brain surgery. The best you can do is <em>deactivate<\/em> the object definition so it can&#8217;t be used to create new\u00a0Active Directory objects. Microsoft uses the term <em>defunct<\/em> for objects whose definitions have been deactivated.<\/p>\n<p>Another thing to keep in mind is that you can only deactivate the schema objects that were added to the default\u00a0Active Directory schema. You cannot, however, deactivate the original schema objects that are part of the default schema because it may negatively impact the Active Directory behavior. Let&#8217;s summarize these important points.<\/p>\n<ol>\n<li>Only members of Schema Admins group can modify the schema.<\/li>\n<li>You would rarely need to modify the schema manually.<\/li>\n<li>Schema should only be modified by trained schema professionals.<\/li>\n<li>You cannot delete schema objects.<\/li>\n<li>You cannot deactivate schema objects that are part of the default schema.<\/li>\n<li>You cannot remove object definitions from the schema.<\/li>\n<li>You can deactivate schema objects that were added to the default schema.<\/li>\n<li>You can deactivate object definitions in the schema so they cannot be used to create new objects in Active Directory.<\/li>\n<li>If a schema object is deactivated it will continue to exist in the Active Directory, but you won&#8217;t be able to create new instances of that object.<\/li>\n<li>You can reactivate a deactivated schema object.<\/li>\n<\/ol>\n<h4><strong>Registering the AD Schema MMC Snap-In<\/strong><\/h4>\n<p>You can use the Active Directory Schema snap-in to manage Active Directory schema. Because schema is not something that Microsoft wants us to play around, Microsoft decided not to add the Schema management console in the Windows Administrative Tools section on the Windows server. That was a smart move to prevent Active Directory administrators from poking around in the console and accidentally making harmful changes to the Active Directory schema.<\/p>\n<p>If you start a new MMC and look for Active Directory Schema snap-in, you won&#8217;t find it because it doesn&#8217;t exist. However, you can first register the Active Directory Schema snap-in. This step makes the Active Directory Schema snap-in available to the MMC so you can add it and manage the schema.<\/p>\n<p><a href=\"https:\/\/www.zubairalexander.com\/blog\/wp-content\/uploads\/2018\/08\/AD-Schema-SnapIn.png\"><img decoding=\"async\" class=\"alignnone size-full wp-image-10104\" src=\"https:\/\/www.zubairalexander.com\/blog\/wp-content\/uploads\/2018\/08\/AD-Schema-SnapIn.png\" alt=\"Adding Active Directory Schema Management Snap-in\" width=\"539\" height=\"395\" srcset=\"https:\/\/www.zubairalexander.com\/blog\/wp-content\/uploads\/2018\/08\/AD-Schema-SnapIn.png 539w, https:\/\/www.zubairalexander.com\/blog\/wp-content\/uploads\/2018\/08\/AD-Schema-SnapIn-300x220.png 300w\" sizes=\"(max-width: 539px) 100vw, 539px\" \/><\/a><\/p>\n<p>Here&#8217;s how you can register and then add the Active Directory Schema snap-in to the MMC console.<\/p>\n<ol>\n<li>To register the schema snap-in, start a command prompt with administrative credentials and type the following command:<br \/>\n<strong class=\"\">regsvr32.exe schmmgmt.dll<\/strong><br \/>\n<a href=\"https:\/\/www.zubairalexander.com\/blog\/wp-content\/uploads\/2018\/08\/Registering-AD-Schema-Mgmt-DLL.png\"><img decoding=\"async\" class=\"alignnone size-full wp-image-10102\" src=\"https:\/\/www.zubairalexander.com\/blog\/wp-content\/uploads\/2018\/08\/Registering-AD-Schema-Mgmt-DLL.png\" alt=\"Registering Active Directory Schema Management DLL\" width=\"592\" height=\"405\" srcset=\"https:\/\/www.zubairalexander.com\/blog\/wp-content\/uploads\/2018\/08\/Registering-AD-Schema-Mgmt-DLL.png 592w, https:\/\/www.zubairalexander.com\/blog\/wp-content\/uploads\/2018\/08\/Registering-AD-Schema-Mgmt-DLL-300x205.png 300w\" sizes=\"(max-width: 592px) 100vw, 592px\" \/><\/a><\/li>\n<li>Click <strong>OK<\/strong>.<\/li>\n<li>Type\u00a0<strong>MMC<\/strong>\u00a0at the command prompt\u00a0 and then press <strong>Enter<\/strong> to start a blank MMC console.<\/li>\n<li>In the MMC, on the File menu select <strong>Add\/Remove Snap-in<\/strong>.<\/li>\n<li>From the available snap-ins, select the <strong>Active Directory Schema<\/strong> snap-in, click <strong>Add<\/strong>,\u00a0and then click <strong>OK<\/strong>.<a href=\"https:\/\/www.zubairalexander.com\/blog\/wp-content\/uploads\/2018\/08\/Adding-schema-snap-in.png\"><img decoding=\"async\" class=\"alignnone size-full wp-image-10105\" src=\"https:\/\/www.zubairalexander.com\/blog\/wp-content\/uploads\/2018\/08\/Adding-schema-snap-in.png\" alt=\"Active Directory Schema Snap-in\" width=\"869\" height=\"594\" srcset=\"https:\/\/www.zubairalexander.com\/blog\/wp-content\/uploads\/2018\/08\/Adding-schema-snap-in.png 869w, https:\/\/www.zubairalexander.com\/blog\/wp-content\/uploads\/2018\/08\/Adding-schema-snap-in-300x205.png 300w, https:\/\/www.zubairalexander.com\/blog\/wp-content\/uploads\/2018\/08\/Adding-schema-snap-in-768x525.png 768w\" sizes=\"(max-width: 869px) 100vw, 869px\" \/><\/a><\/li>\n<li>Now you can manage your Active Directory schema. You essentially have just created a schema management console.<\/li>\n<\/ol>\n<p>There are several tools available to modify the schema. Some are included in Windows server, others are third-party tools. Of course, you can also use PowerShell to modify the schema. No matter which tool you use, you can only modify the schema on the server that has the Schema Master role. This is one of the five Operations Master roles assigned to a server. These roles are referred to as FSMO roles. By default, the first domain controller in the forest hosts all five of these FSMO roles. However, you can move these roles to other servers if necessary.<\/p>\n<h4><strong>Schema Master Role<\/strong><\/h4>\n<p>Only one server in the enterprise performs the Schema Master role. This role allows modifications to the schema.\u00a0The\u00a0Active Directory Schema snap-in can be used to move the Schema Master role from one domain controller to another. This option is available when you right click the Active Directory Schema folder.<\/p>\n<p><a href=\"https:\/\/www.zubairalexander.com\/blog\/wp-content\/uploads\/2018\/08\/Changing-schema-master-role.png\"><img decoding=\"async\" class=\"alignnone size-full wp-image-10106\" src=\"https:\/\/www.zubairalexander.com\/blog\/wp-content\/uploads\/2018\/08\/Changing-schema-master-role.png\" alt=\"Changing schema master role\" width=\"516\" height=\"358\" srcset=\"https:\/\/www.zubairalexander.com\/blog\/wp-content\/uploads\/2018\/08\/Changing-schema-master-role.png 516w, https:\/\/www.zubairalexander.com\/blog\/wp-content\/uploads\/2018\/08\/Changing-schema-master-role-300x208.png 300w\" sizes=\"(max-width: 516px) 100vw, 516px\" \/><\/a><\/p>\n<p>You can also use PowerShell to move the Operations Master role from one server to another. In general, PowerShell is the preferred way and is recommended over the GUI tools.<\/p>\n<table>\n<tbody>\n<tr>\n<td style=\"background-color: #e3e3e3; text-align: left;\">Thanks for reading my article. If you are interested in IT training &amp; consulting services, please reach out to me. Visit <a href=\"https:\/\/www.zubairalexander.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">ZubairAlexander.com<\/a> for information on my professional background.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<hr \/>\n<p><span style=\"font-size: xx-small; font-family: Verdana;\">Copyright \u00a9 2018 <a href=\"https:\/\/www.seattlepro.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">SeattlePro Enterprises, LLC<\/a>. All rights reserved.<br \/>\n<\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Active Directory consists of objects (users, computers, printers, groups, etc.) and their attributes (properties). Schema is an important component of the Active Directory because it defines all the objects and attributes that are used to store data. Active Directory is divided in several partitions. Schema is stored in the schema partition and then replicated to [&hellip;]<\/p>\n","protected":false},"author":7,"featured_media":10312,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[6,43,11,45,48,38,30,65,80],"tags":[],"class_list":["post-10099","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-active-directory","category-articles","category-tips-tricks","category-toolsutils","category-windows-2000","category-windows-2003","category-longhorn-server","category-windows-2012","category-windows-2016"],"aioseo_notices":[],"jetpack_featured_media_url":"https:\/\/www.zubairalexander.com\/blog\/wp-content\/uploads\/2017\/04\/Microsoft_logo_250x250.png","_links":{"self":[{"href":"https:\/\/www.zubairalexander.com\/blog\/wp-json\/wp\/v2\/posts\/10099","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.zubairalexander.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.zubairalexander.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.zubairalexander.com\/blog\/wp-json\/wp\/v2\/users\/7"}],"replies":[{"embeddable":true,"href":"https:\/\/www.zubairalexander.com\/blog\/wp-json\/wp\/v2\/comments?post=10099"}],"version-history":[{"count":0,"href":"https:\/\/www.zubairalexander.com\/blog\/wp-json\/wp\/v2\/posts\/10099\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.zubairalexander.com\/blog\/wp-json\/wp\/v2\/media\/10312"}],"wp:attachment":[{"href":"https:\/\/www.zubairalexander.com\/blog\/wp-json\/wp\/v2\/media?parent=10099"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.zubairalexander.com\/blog\/wp-json\/wp\/v2\/categories?post=10099"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.zubairalexander.com\/blog\/wp-json\/wp\/v2\/tags?post=10099"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}