[Date Prev][Date Next] [Chronological] [Thread] [Top]

RE: NT Domain backend




OK, I've got AD's schema definitions all cleaned up. What I've found are three distinct areas in the AD subschemaSubentry:


   Microsoft-defined object classes and attribute types, using
       MS's OID arc 1.2.840.113556.1.

   Microsoft-specific schema definitions, "dITContentRule",
       "extendedClassInfo", and "extendedAttributeInfo", the
       latter two just assign GUIDs to oc's and at's.

   Standard-defined object classes and attribute types, under
       OID arc 2.5.6 and 0.9.2342.19200300.100.1.

I've separated the three areas into different files, named "microsoft.schema", "microsoft.ext.schema", and "microsoft.std.schema". The "standard" definitions are puzzling. For example, some oc's (e.g., organizationalPerson and groupOfNames) that are STRUCTURAL in core.schema are ABSTRACT in MS's defs. Also, there's extra stuff in the MS defs (see the definition of 'top' below). My questions for today are: Which definitions of the 2.5.6.* oc's and at's are correct, or are they both correct, since their definition is left to the server that provides them? Should AD have defined a new abstract class like 'mstop' with SUP top, and left the standard definition as in schema.core? Or is my interpretation of "standard" incorrect?

Just trying to understand it all,

Mark.


objectclass ( 2.5.6.0 NAME 'top' ABSTRACT MUST (objectClass $ instanceType $ nTSecurityDescriptor $ objectCategory ) MAY (cn $ description $ distinguishedName $ whenCreated $ whenChanged $ subRefs $ displayName $ uSNCreated $ isDeleted $ dSASignature $ objectVersion $ repsTo $ repsFrom $ memberOf $ uSNChanged $ uSNLastObjRem $ showInAdvancedViewOnly $ adminDisplayName $ proxyAddresses $ adminDescription $ extensionName $ uSNDSALastObjRemoved $ displayNamePrintable $ directReports $ wWWHomePage $ USNIntersite $ name $ objectGUID $ replPropertyMetaData $ replUpToDateVector $ flags $ revision $ wbemPath $ fSMORoleOwner $ systemFlags $ siteObjectBL $ serverReferenceBL $ nonSecurityMemberBL $ queryPolicyBL $ wellKnownObjects $ isPrivilegeHolder $ partialAttributeSet $ managedObjects $ partialAttributeDeletionList $ url $ lastKnownParent $ bridgeheadServerListBL $ netbootSCPBL $ isCriticalSystemObject $ frsComputerReferenceBL $ fRSMemberReferenceBL $ uSNSource $ fromEntry $ allowedChildClasses $ allowedChildClassesEffective $ allowedAttributes $ allowedAttributesEffective $ possibleInferiors $ canonicalName $ proxiedObjectName $ sDRightsEffective $ dSCorePropagationData $ otherWellKnownObjects $ mS-DS-ConsistencyGuid $ mS-DS-ConsistencyChildCount $ masteredBy $ createTimeStamp $ modifyTimeStamp $ subSchemaSubEntry ) )