diff --git a/include/class_objects.inc b/include/class_objects.inc
index 97a3a6da51c59ec11e5b26b0733b27c831b09e3f..f73b179d71dc69149d859f0a372b74e7b14d05fe 100644
--- a/include/class_objects.inc
+++ b/include/class_objects.inc
@@ -152,11 +152,7 @@ class objects
     $tabClass = $infos['tabClass'];
 
     $tabObject = new $tabClass($type, $dn);
-    if ($dn == 'new') {
-      $tabObject->set_acl_base($config->current['BASE']);
-    } else {
-      $tabObject->set_acl_base($dn);
-    }
+    $tabObject->set_acl_base();
     @DEBUG (DEBUG_TRACE, __LINE__, __FUNCTION__, __FILE__, $dn, "Openned as $type object");
 
     return $tabObject;
diff --git a/include/simpleplugin/class_attribute.inc b/include/simpleplugin/class_attribute.inc
index 4e16c3da22e791eddac5a03a5e59e9b515571a9a..a0d090ab00b5f015c8cb4e7dd3fd7b65a27a4957 100644
--- a/include/simpleplugin/class_attribute.inc
+++ b/include/simpleplugin/class_attribute.inc
@@ -1959,6 +1959,7 @@ class BaseSelectorAttribute extends Attribute
       /* Set the new acl base */
       if ($this->plugin->dn == 'new') {
         $this->plugin->set_acl_base($this->value);
+        $this->plugin->parent->set_acl_base();
       }
 
       if (($this->baseSelector !== NULL) && ($this->baseSelector->getBase() !== $this->value)) {