From 1c57a4b92b66b91f4defd569666bed6f2d7a4428 Mon Sep 17 00:00:00 2001 From: Kamil Trzcinski Date: Fri, 3 Jul 2015 15:30:22 +0200 Subject: Encrypt variables with attr_encrypted --- db/migrate/20150703125244_add_encrypted_value_to_variables.rb | 7 +++++++ db/migrate/20150703125325_encrypt_variables.rb | 10 ++++++++++ db/schema.rb | 5 ++++- 3 files changed, 21 insertions(+), 1 deletion(-) create mode 100644 db/migrate/20150703125244_add_encrypted_value_to_variables.rb create mode 100644 db/migrate/20150703125325_encrypt_variables.rb (limited to 'db') diff --git a/db/migrate/20150703125244_add_encrypted_value_to_variables.rb b/db/migrate/20150703125244_add_encrypted_value_to_variables.rb new file mode 100644 index 0000000..0adf31a --- /dev/null +++ b/db/migrate/20150703125244_add_encrypted_value_to_variables.rb @@ -0,0 +1,7 @@ +class AddEncryptedValueToVariables < ActiveRecord::Migration + def change + add_column :variables, :encrypted_value, :text + add_column :variables, :encrypted_value_salt, :string + add_column :variables, :encrypted_value_iv, :string + end +end diff --git a/db/migrate/20150703125325_encrypt_variables.rb b/db/migrate/20150703125325_encrypt_variables.rb new file mode 100644 index 0000000..c5f9d04 --- /dev/null +++ b/db/migrate/20150703125325_encrypt_variables.rb @@ -0,0 +1,10 @@ +class EncryptVariables < ActiveRecord::Migration + def up + Variable.find_each do |variable| + variable.update(value: variable.read_attribute(:value)) unless variable.encrypted_value + end + end + + def down + end +end diff --git a/db/schema.rb b/db/schema.rb index 6b88c7f..6686465 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -177,9 +177,12 @@ ActiveRecord::Schema.define(version: 20150707134456) do add_index "tags", ["name"], name: "index_tags_on_name", unique: true, using: :btree create_table "variables", force: true do |t| - t.integer "project_id", null: false + t.integer "project_id", null: false t.string "key" t.text "value" + t.text "encrypted_value" + t.string "encrypted_value_salt" + t.string "encrypted_value_iv" end add_index "variables", ["project_id"], name: "index_variables_on_project_id", using: :btree -- cgit v1.2.1