diff --git a/mass_contact.module b/mass_contact.module
index 5f42b44..3ee92b6 100644
--- a/mass_contact.module
+++ b/mass_contact.module
@@ -94,6 +94,10 @@ function mass_contact_permission() {
       'title' => t('Archive messages as content'),
       'description' => t('Allows the message sender to save an archive copy of the message as a node.'),
     ),
+    'mass contact view archived messages' => array(
+      'title' => t('View archived messages'),
+      'description' => t('Allows the user to view archived messages.'),
+    ),
     'mass contact include attachments' => array(
       'title' => t('Attach files to messages'),
       'description' => t('Allows the message sender to include attachments with the message.'),
@@ -244,6 +248,17 @@ function mass_contact_menu_alter(&$items) {
   }
 }
 
+/**
+ * Implements hook_node_access().
+ */
+function mass_contact_node_access($node, $op, $account) {
+  $type = is_string($node) ? $node : $node->type;
+  if($type == 'mass_contact') {
+    if(!user_access('mass contact view archived messages', $account)) {
+      return NODE_ACCESS_DENY;
+    }
+  }
+}
 
 /**
  * Implements hook_form_alter().
