From 6b10c4dc547e2f82b05d4cc5a4d3ccd88296fa15 Mon Sep 17 00:00:00 2001 From: Sam Date: Thu, 20 Nov 2014 15:38:20 +1100 Subject: [PATCH] add support for hidden api keys, used in hosting scenarios --- app/controllers/admin/api_controller.rb | 2 +- app/models/api_key.rb | 2 +- db/migrate/20141120043401_add_hidden_to_api_keys.rb | 7 +++++++ 3 files changed, 9 insertions(+), 2 deletions(-) create mode 100644 db/migrate/20141120043401_add_hidden_to_api_keys.rb diff --git a/app/controllers/admin/api_controller.rb b/app/controllers/admin/api_controller.rb index 472b4b9c3e..57d9bce4e9 100644 --- a/app/controllers/admin/api_controller.rb +++ b/app/controllers/admin/api_controller.rb @@ -1,7 +1,7 @@ class Admin::ApiController < Admin::AdminController def index - render_serialized(ApiKey.all.to_a, ApiKeySerializer) + render_serialized(ApiKey.where(hidden: false).to_a, ApiKeySerializer) end def regenerate_key diff --git a/app/models/api_key.rb b/app/models/api_key.rb index 099506ebf6..1a197e1b79 100644 --- a/app/models/api_key.rb +++ b/app/models/api_key.rb @@ -12,7 +12,7 @@ class ApiKey < ActiveRecord::Base end def self.create_master_key - api_key = ApiKey.find_by(user_id: nil) + api_key = ApiKey.find_by(user_id: nil, hidden: false) if api_key.blank? api_key = ApiKey.create(key: SecureRandom.hex(32), created_by: Discourse.system_user) end diff --git a/db/migrate/20141120043401_add_hidden_to_api_keys.rb b/db/migrate/20141120043401_add_hidden_to_api_keys.rb new file mode 100644 index 0000000000..565baa0504 --- /dev/null +++ b/db/migrate/20141120043401_add_hidden_to_api_keys.rb @@ -0,0 +1,7 @@ +class AddHiddenToApiKeys < ActiveRecord::Migration + def change + change_table :api_keys do |t| + t.boolean :hidden, null: false, default: false + end + end +end