diff --git a/datastore_server/source/java/ch/ethz/sis/openbis/generic/server/dss/plugins/sync/harvester/config/SyncConfig.java b/datastore_server/source/java/ch/ethz/sis/openbis/generic/server/dss/plugins/sync/harvester/config/SyncConfig.java
index 7768b2577985c6a2ac82323736b0058cef83be3e..04df84a8447aa4f2640ea4a99edc73c7a6ca3db6 100644
--- a/datastore_server/source/java/ch/ethz/sis/openbis/generic/server/dss/plugins/sync/harvester/config/SyncConfig.java
+++ b/datastore_server/source/java/ch/ethz/sis/openbis/generic/server/dss/plugins/sync/harvester/config/SyncConfig.java
@@ -220,9 +220,7 @@ public class SyncConfig
 
     private Boolean verbose = false;
 
-    private boolean masterDataUpdate;
-
-    private boolean propertyTypeUpdateAllowed;
+    private boolean masterDataUpdateAllowed;
 
     private boolean propertyUnassignmentAllowed;
 
@@ -352,14 +350,14 @@ public class SyncConfig
         this.verbose = verbose;
     }
 
-    public boolean isMasterDataUpdate()
+    public boolean isMasterDataUpdateAllowed()
     {
-        return masterDataUpdate;
+        return masterDataUpdateAllowed;
     }
 
-    public void setMasterDataUpdate(boolean masterDataUpdate)
+    public void setMasterDataUpdateAllowed(boolean masterDataUpdate)
     {
-        this.masterDataUpdate = masterDataUpdate;
+        this.masterDataUpdateAllowed = masterDataUpdate;
     }
 
     public boolean isPropertyUnassignmentAllowed()
@@ -372,16 +370,6 @@ public class SyncConfig
         this.propertyUnassignmentAllowed = propertyUnassignmentAllowed;
     }
 
-    public boolean isPropertyTypeUpdateAllowed()
-    {
-        return propertyTypeUpdateAllowed;
-    }
-
-    public void setPropertyTypeUpdateAllowed(boolean propertyTypeUpdateAllowed)
-    {
-        this.propertyTypeUpdateAllowed = propertyTypeUpdateAllowed;
-    }
-
     public boolean isDeletionAllowed()
     {
         return deletionAllowed;
diff --git a/datastore_server/source/java/ch/ethz/sis/openbis/generic/server/dss/plugins/sync/harvester/config/SynchronizationConfigReader.java b/datastore_server/source/java/ch/ethz/sis/openbis/generic/server/dss/plugins/sync/harvester/config/SynchronizationConfigReader.java
index e0827b3d3fc83fe7052c35dc816be976759ec83b..f64e46eccbca23c10b37ea2b0c483e76d8274722 100644
--- a/datastore_server/source/java/ch/ethz/sis/openbis/generic/server/dss/plugins/sync/harvester/config/SynchronizationConfigReader.java
+++ b/datastore_server/source/java/ch/ethz/sis/openbis/generic/server/dss/plugins/sync/harvester/config/SynchronizationConfigReader.java
@@ -84,12 +84,10 @@ public class SynchronizationConfigReader
 
     private static final String SPACE_WHITE_LIST_PROPERTY_NAME = "space-white-list";
 
-    private static final String MASTER_DATA_UPDATE_PROPERTY_NAME = "master-data-update";
+    private static final String MASTER_DATA_UPDATE_ALLOWED_PROPERTY_NAME = "master-data-update-allowed";
 
     private static final String PROPERTY_UNASSIGNMENT_ALLOWED_PROPERTY_NAME = "property-unassignment-allowed";
 
-    private static final String PROPERTY_TYPE_UPDATE_ALLOWED_PROPERTY_NAME = "property-type-update-allowed";
-
     private static final String DELETION_ALLOWED_PROPERTY_NAME = "deletion-allowed";
 
     private static final String KEEP_ORIGINAL_TIMESTAMPS_AND_USERS_PROPERTY_NAME = "keep-original-timestamps-and-users";
@@ -194,10 +192,9 @@ public class SynchronizationConfigReader
             {
                 config.setVerbose(true);
             }
-            config.setMasterDataUpdate(reader.getBoolean(section, MASTER_DATA_UPDATE_PROPERTY_NAME, true));
+            config.setMasterDataUpdateAllowed(reader.getBoolean(section, MASTER_DATA_UPDATE_ALLOWED_PROPERTY_NAME, false));
             config.setDeletionAllowed(reader.getBoolean(section, DELETION_ALLOWED_PROPERTY_NAME, false));
             config.setPropertyUnassignmentAllowed(reader.getBoolean(section, PROPERTY_UNASSIGNMENT_ALLOWED_PROPERTY_NAME, false));
-            config.setPropertyTypeUpdateAllowed(reader.getBoolean(section, PROPERTY_TYPE_UPDATE_ALLOWED_PROPERTY_NAME, false));
             config.setKeepOriginalTimestampsAndUsers(reader.getBoolean(section, KEEP_ORIGINAL_TIMESTAMPS_AND_USERS_PROPERTY_NAME, true));
             config.setKeepOriginalFrozenFlags(reader.getBoolean(section, KEEP_ORIGINAL_FROZEN_FLAGS_PROPERTY_NAME, true));
             config.setWishedNumberOfStreams(reader.getInt(section, WISHED_NUMBER_OF_STREAMS_PROPERTY_NAME, null, false));
diff --git a/datastore_server/source/java/ch/ethz/sis/openbis/generic/server/dss/plugins/sync/harvester/synchronizer/EntitySynchronizer.java b/datastore_server/source/java/ch/ethz/sis/openbis/generic/server/dss/plugins/sync/harvester/synchronizer/EntitySynchronizer.java
index 0d538d039b71da6f93796fc91c809e5d64d8d6b8..e28ab1e55c41698d0ac42a9f91cc3d582364df59 100644
--- a/datastore_server/source/java/ch/ethz/sis/openbis/generic/server/dss/plugins/sync/harvester/synchronizer/EntitySynchronizer.java
+++ b/datastore_server/source/java/ch/ethz/sis/openbis/generic/server/dss/plugins/sync/harvester/synchronizer/EntitySynchronizer.java
@@ -206,10 +206,7 @@ public class EntitySynchronizer
         {
             processDeletions(data);
         }
-        if (config.isMasterDataUpdate())
-        {
-            registerMasterData(data.getMasterData());
-        }
+        registerMasterData(data.getMasterData());
         MultiKeyMap<String, String> newEntities = registerEntities(data);
         registerAttachments(data, newEntities);
         populateFileServiceRepository(data);
diff --git a/datastore_server/source/java/ch/ethz/sis/openbis/generic/server/dss/plugins/sync/harvester/synchronizer/MasterDataSynchronizer.java b/datastore_server/source/java/ch/ethz/sis/openbis/generic/server/dss/plugins/sync/harvester/synchronizer/MasterDataSynchronizer.java
index ea0c2f4adfd011477019ef9b340a71e2dd8e2b30..02be3bc3990dcee40d8f8b0246077b2879782b41 100644
--- a/datastore_server/source/java/ch/ethz/sis/openbis/generic/server/dss/plugins/sync/harvester/synchronizer/MasterDataSynchronizer.java
+++ b/datastore_server/source/java/ch/ethz/sis/openbis/generic/server/dss/plugins/sync/harvester/synchronizer/MasterDataSynchronizer.java
@@ -152,7 +152,7 @@ public class MasterDataSynchronizer
             if (existingPluginOrNull != null)
             {
                 String diff = calculateDiff(existingPluginOrNull, incomingplugin);
-                if (StringUtils.isNotBlank(diff))
+                if (StringUtils.isNotBlank(diff) && config.isMasterDataUpdateAllowed())
                 {
                     incomingplugin.setModificationDate(existingPluginOrNull.getModificationDate());
                     incomingplugin.setId(existingPluginOrNull.getId());
@@ -260,7 +260,7 @@ public class MasterDataSynchronizer
             if (existingVocabulary != null)
             {
                 String diff = calculateDiff(existingVocabulary, newVocabulary);
-                if (StringUtils.isNotBlank(diff))
+                if (StringUtils.isNotBlank(diff) && config.isMasterDataUpdateAllowed())
                 {
                     newVocabulary.setModificationDate(existingVocabulary.getModificationDate());
                     newVocabulary.setId(existingVocabulary.getId());
@@ -299,7 +299,7 @@ public class MasterDataSynchronizer
             } else
             {
                 String diff = calculateDiff(existingTerm, incomingTerm);
-                if (StringUtils.isNotBlank(diff))
+                if (StringUtils.isNotBlank(diff) && config.isMasterDataUpdateAllowed())
                 {
                     incomingTerm.setModificationDate(existingTerm.getModificationDate());
                     incomingTerm.setId(existingTerm.getId());
@@ -353,7 +353,7 @@ public class MasterDataSynchronizer
             if (existingEntityType != null)
             {
                 String diff = calculateDiff(entityKind, existingEntityType, incomingEntityType);
-                if (StringUtils.isNotBlank(diff) && config.isPropertyTypeUpdateAllowed())
+                if (StringUtils.isNotBlank(diff) && config.isMasterDataUpdateAllowed())
                 {
                     incomingEntityType.setModificationDate(existingEntityType.getModificationDate());
                     updateEntityType(entityKind, incomingEntityType, diff);
@@ -393,7 +393,7 @@ public class MasterDataSynchronizer
             if (foundType != null)
             {
                 String diff = calculateDiff(foundType, newETPTAssignment);
-                if (StringUtils.isNotBlank(diff) && config.isPropertyTypeUpdateAllowed())
+                if (StringUtils.isNotBlank(diff) && config.isMasterDataUpdateAllowed())
                 {
                     newETPTAssignment.setModificationDate(foundType.getModificationDate());
                     synchronizerFacade.updatePropertyTypeAssignment(newETPTAssignment, diff);
@@ -620,7 +620,7 @@ public class MasterDataSynchronizer
             if (existingPropertyType != null)
             {
                 String diff = calculateDiff(existingPropertyType, incomingPropertyType);
-                if (StringUtils.isNotBlank(diff))
+                if (StringUtils.isNotBlank(diff) && config.isMasterDataUpdateAllowed())
                 {
                     incomingPropertyType.setModificationDate(existingPropertyType.getModificationDate());
                     incomingPropertyType.setId(existingPropertyType.getId());