diff --git a/app/assets/stylesheets/common/admin/admin_base.scss b/app/assets/stylesheets/common/admin/admin_base.scss
index 8e8be069c..938ae07bc 100644
--- a/app/assets/stylesheets/common/admin/admin_base.scss
+++ b/app/assets/stylesheets/common/admin/admin_base.scss
@@ -564,6 +564,9 @@ table.api-keys {
       .actions {
         text-align: right;
       }
+      .btn {
+        background-color: #ccc;
+      }
     }
   }
 
diff --git a/app/models/admin_dashboard_data.rb b/app/models/admin_dashboard_data.rb
index 65c3f18f7..630265377 100644
--- a/app/models/admin_dashboard_data.rb
+++ b/app/models/admin_dashboard_data.rb
@@ -41,6 +41,7 @@ class AdminDashboardData
       access_password_removal,
       site_contact_username_check,
       notification_email_check,
+      enforce_global_nicknames_check
     ].compact
   end
 
@@ -167,6 +168,10 @@ class AdminDashboardData
     I18n.t('dashboard.ruby_version_warning') if RUBY_VERSION == '2.0.0' and RUBY_PATCHLEVEL < 247
   end
 
+  def enforce_global_nicknames_check
+    I18n.t('dashboard.enforce_global_nicknames_warning') if SiteSetting.enforce_global_nicknames and !SiteSetting.discourse_org_access_key.present?
+  end
+
   # TODO: generalize this method of putting i18n keys with expiry in redis
   #       that should be reported on the admin dashboard:
   def access_password_removal
diff --git a/config/locales/server.en.yml b/config/locales/server.en.yml
index fe1257263..54041f133 100644
--- a/config/locales/server.en.yml
+++ b/config/locales/server.en.yml
@@ -440,6 +440,7 @@ en:
     access_password_removal: "Your site was using the access_password setting, which has been removed. The login_required and must_approve_users settings have been enabled, which should be used instead. You can change them in the <a href='/admin/site_settings'>Site Settings</a>. Be sure to <a href='/admin/users/list/pending'>approve users in the Pending Users list</a>. (This message will go away after 2 days.)"
     site_contact_username_warning: "The site_contact_username setting is blank. Please update it in the <a href='/admin/site_settings'>Site Settings</a>. Set it to the username of an admin user who should be the sender of system messages."
     notification_email_warning: "The notification_email setting is blank. Please update it in the <a href='/admin/site_settings'>Site Settings</a>."
+    enforce_global_nicknames_warning: "The enforce_global_nicknames setting is checked, but the discourse_org_access_key is blank. A Discourse.org access key is required to use the enforce_global_nicknames setting. Please update your <a href='/admin/site_settings'>Site Settings</a>."
 
   content_types:
     education_new_reply:
diff --git a/spec/models/admin_dashboard_data_spec.rb b/spec/models/admin_dashboard_data_spec.rb
index 5e1a3f9e1..b8da3fc38 100644
--- a/spec/models/admin_dashboard_data_spec.rb
+++ b/spec/models/admin_dashboard_data_spec.rb
@@ -3,7 +3,7 @@ require 'spec_helper'
 describe AdminDashboardData do
 
   describe "rails_env_check" do
-    subject { AdminDashboardData.new.rails_env_check }
+    subject { described_class.new.rails_env_check }
 
     it 'returns nil when running in production mode' do
       Rails.stubs(:env).returns('production')
@@ -22,7 +22,7 @@ describe AdminDashboardData do
   end
 
   describe 'host_names_check' do
-    subject { AdminDashboardData.new.host_names_check }
+    subject { described_class.new.host_names_check }
 
     it 'returns nil when host_names is set' do
       Discourse.stubs(:current_hostname).returns('something.com')
@@ -41,7 +41,7 @@ describe AdminDashboardData do
   end
 
   describe 'gc_checks' do
-    subject { AdminDashboardData.new.gc_checks }
+    subject { described_class.new.gc_checks }
 
     it 'returns nil when gc params are set' do
       ENV.stubs(:[]).with('RUBY_GC_MALLOC_LIMIT').returns(90000000)
@@ -55,7 +55,7 @@ describe AdminDashboardData do
   end
 
   describe 'sidekiq_check' do
-    subject { AdminDashboardData.new.sidekiq_check }
+    subject { described_class.new.sidekiq_check }
 
     it 'returns nil when sidekiq processed a job recently' do
       Jobs.stubs(:last_job_performed_at).returns(1.minute.ago)
@@ -89,7 +89,7 @@ describe AdminDashboardData do
   end
 
   describe 'ram_check' do
-    subject { AdminDashboardData.new.ram_check }
+    subject { described_class.new.ram_check }
 
     it 'returns nil when total ram is 1 GB' do
       MemInfo.any_instance.stubs(:mem_total).returns(1025272)
@@ -108,7 +108,7 @@ describe AdminDashboardData do
   end
 
   describe 'send_consumer_email_check' do
-    subject { AdminDashboardData.new.send_consumer_email_check }
+    subject { described_class.new.send_consumer_email_check }
 
     it 'returns nil if gmail.com is not in the smtp_settings address' do
       ActionMailer::Base.stubs(:smtp_settings).returns({address: 'mandrillapp.com'})
@@ -131,7 +131,7 @@ describe AdminDashboardData do
   end
 
   describe 'default_logo_check' do
-    subject { AdminDashboardData.new.default_logo_check }
+    subject { described_class.new.default_logo_check }
 
     describe 'favicon_url check' do
       before do
@@ -220,7 +220,7 @@ describe AdminDashboardData do
     end
 
     describe 'facebook' do
-      subject { AdminDashboardData.new.facebook_config_check }
+      subject { described_class.new.facebook_config_check }
       let(:enable_setting) { :enable_facebook_logins }
       let(:key) { :facebook_app_id }
       let(:secret) { :facebook_app_secret }
@@ -228,7 +228,7 @@ describe AdminDashboardData do
     end
 
     describe 'twitter' do
-      subject { AdminDashboardData.new.twitter_config_check }
+      subject { described_class.new.twitter_config_check }
       let(:enable_setting) { :enable_twitter_logins }
       let(:key) { :twitter_consumer_key }
       let(:secret) { :twitter_consumer_secret }
@@ -236,7 +236,7 @@ describe AdminDashboardData do
     end
 
     describe 'github' do
-      subject { AdminDashboardData.new.github_config_check }
+      subject { described_class.new.github_config_check }
       let(:enable_setting) { :enable_github_logins }
       let(:key) { :github_client_id }
       let(:secret) { :github_client_secret }
@@ -244,4 +244,26 @@ describe AdminDashboardData do
     end
   end
 
+  describe "enforce_global_nicknames_check" do
+    subject { described_class.new.enforce_global_nicknames_check }
+
+    it 'returns nil when enforce_global_nicknames and discourse_org_access_key are set' do
+      SiteSetting.stubs(:enforce_global_nicknames).returns(true)
+      SiteSetting.stubs(:discourse_org_access_key).returns('123')
+      subject.should be_nil
+    end
+
+    it 'returns a string when enforce_global_nicknames is true but discourse_org_access_key is not' do
+      SiteSetting.stubs(:enforce_global_nicknames).returns(true)
+      SiteSetting.stubs(:discourse_org_access_key).returns('')
+      subject.should_not be_nil
+    end
+
+    it 'returns nil when enforce_global_nicknames is false and discourse_org_access_key is set' do
+      SiteSetting.stubs(:enforce_global_nicknames).returns(false)
+      SiteSetting.stubs(:discourse_org_access_key).returns('123')
+      subject.should be_nil
+    end
+  end
+
 end