diff --git a/modules/system/system.admin.inc b/modules/system/system.admin.inc
index 52d5c85cca0..96ac8c4a05a 100644
--- a/modules/system/system.admin.inc
+++ b/modules/system/system.admin.inc
@@ -18,7 +18,7 @@ function system_main_admin_page($arg = NULL) {
}
// Check for status report errors.
- if (system_status(TRUE)) {
+ if (system_status(TRUE) && user_access('access site reports')) {
drupal_set_message(t('One or more problems were detected with your Drupal installation. Check the status report for more information.', array('@status' => url('admin/reports/status'))), 'error');
}
$blocks = array();
diff --git a/modules/system/system.install b/modules/system/system.install
index 98052456142..8020c11a303 100644
--- a/modules/system/system.install
+++ b/modules/system/system.install
@@ -124,7 +124,7 @@ function system_requirements($phase) {
// If cron hasn't been run, and the user is viewing the main
// administration page, instead of an error, we display a helpful reminder
// to configure cron jobs.
- if ($never_run && $severity != REQUIREMENT_ERROR && $_GET['q'] == 'admin') {
+ if ($never_run && $severity != REQUIREMENT_ERROR && $_GET['q'] == 'admin' && user_access('access site reports')) {
drupal_set_message($t('Cron has not run. Please visit the status report for more information.', array('@status' => url('admin/reports/status'))));
}