diff --git a/domain_menu_block.module b/domain_menu_block.module
index ddd03a6..c5c6bb7 100755
--- a/domain_menu_block.module
+++ b/domain_menu_block.module
@@ -466,3 +466,34 @@ function domain_menu_block_features_api() {
   );
   return $components;
 }
+
+/**
+ * Implements hook_permission().
+ */
+function domain_menu_block_permission() {
+  $permissions = array();
+  if (module_exists('menu_admin_per_menu')) {
+    $dmbs = domain_menu_block_load_multiple();
+    foreach($dmbs as $dmb) {
+      $permissions['administer '. $dmb->machine_name .' domain menu block menu'] = array('title' => t('Administer %title domain menu on assigned domains', array('%title' => $dmb->base_name)));
+    }
+  }
+  return $permissions;
+}
+
+/**
+ * Implements hook_menu_admin_per_menu_alter().
+ */
+function domain_menu_block_menu_admin_per_menu_alter(&$perm_menus) {
+  $user_domains = domain_get_user_domains($GLOBALS['user']);
+  $dmbs = domain_menu_block_load_multiple();
+  foreach($user_domains as $domain_id) {
+    $domain = domain_load($domain_id);
+    foreach($dmbs as $dmb) {
+      if (user_access('administer '. $dmb->machine_name .' domain menu block menu')) {
+        $menu_name = domain_menu_block_menu_name($dmb, $domain);
+        $perm_menus[$menu_name] = $menu_name;
+      }
+    }
+  }
+}
