protected1wd_descr = b64encode(get_config_delete_protected1wd_descriptor(names.domainsid)).decode('utf8')
protected2_descr = b64encode(get_config_delete_protected2_descriptor(names.domainsid)).decode('utf8')
+ incl_2012 = ""
+ incl_2016 = ""
if "2008" in schema.base_schema:
- # exclude 2012-specific changes if we're using a 2008 schema
+ # exclude 2012 and later changes if we're using a 2008 schema
incl_2012 = "#"
- else:
- incl_2012 = ""
+ incl_2016 = "#"
+ elif "2012" in schema.base_schema:
+ # exclude 2016 and later changes if we're using a 2012 schema
+ incl_2016 = "#"
setup_add_ldif(samdb, setup_path("provision_configuration.ldif"), {
"CONFIGDN": names.configdn,
setup_add_ldif(samdb, setup_path("extended-rights.ldif"), {
"CONFIGDN": names.configdn,
"INC2012": incl_2012,
+ "INC2016": incl_2016,
})
logger.info("Setting up display specifiers")
--- /dev/null
+# Missing objects and values that should be in Samba 4.23 to honour the
+# claimed schema 81
+#
+#
+dn: CN=DS-Validated-Write-Computer,CN=Extended-Rights,CN=Configuration,DC=X
+changetype: add
+objectClass: controlAccessRight
+displayName: Validated write to computer attributes.
+rightsGuid: 9b026da6-0d3c-465c-8bee-5199d7165cba
+appliesTo: bf967a86-0de6-11d0-a285-00aa003049e2
+ShowInAdvancedViewOnly: TRUE
+validAccesses: 8
+-
${INC2012}rightsGuid: 94825A8D-B171-4116-8146-1E34D8F54401
${INC2012}appliesTo: 26f11b08-a29d-4869-99bb-ef0b99fd883e
${INC2012}validAccesses: 256
-
+${INC2016}
+${INC2016}dn: CN=DS-Validated-Write-Computer,CN=Extended-Rights,${CONFIGDN}
+${INC2016}objectClass: controlAccessRight
+${INC2016}displayName: Validated write to computer attributes.
+${INC2016}rightsGuid: 9b026da6-0d3c-465c-8bee-5199d7165cba
+${INC2016}appliesTo: bf967a86-0de6-11d0-a285-00aa003049e2
+${INC2016}validAccesses: 8
+${INC2016}showInAdvancedViewOnly: TRUE
# on top of this, also apply 2008R2 changes we accidentally missed in the past
$PYTHON $BINDIR/samba-tool domain schemaupgrade -H tdb://$PREFIX/${RELEASE}/private/sam.ldb --ldf-file=samba-4.7-missing-for-schema45.ldif,fix-forest-rev.ldf
+
+ # also apply 2016 changes we accidentally missed in the past
+ $PYTHON $BINDIR/samba-tool domain schemaupgrade -H tdb://$PREFIX/${RELEASE}/private/sam.ldb --ldf-file=samba-4.23-missing-for-schema81.ldif,fix-forest-rev.ldf
fi
}
# on top of this, also apply 2008R2 changes we accidentally missed in the past
$PYTHON $BINDIR/samba-tool domain schemaupgrade -H tdb://$PREFIX/${RELEASE}_upgrade/private/sam.ldb --ldf-file=samba-4.7-missing-for-schema45.ldif,fix-forest-rev.ldf
+ # also apply 2016 changes we accidentally missed in the past
+ $PYTHON $BINDIR/samba-tool domain schemaupgrade -H tdb://$PREFIX/${RELEASE}_upgrade/private/sam.ldb --ldf-file=samba-4.23-missing-for-schema81.ldif,fix-forest-rev.ldf
+
# add missing domain prep for 2008R2
$PYTHON $BINDIR/samba-tool domain functionalprep -H tdb://$PREFIX/${RELEASE}_upgrade/private/sam.ldb --domain --function-level 2008_R2
}