2015-07-02 2 views
0

Нужно ли хранить ключи для среды разработки и тестирования в переменной ENV, прежде чем нажимать код на GitHub? Я понимаю, почему ключи должны быть скрыты в производстве, но не почему они должны быть скрыты при разработке или тестировании.разработка и тестирование secret_key_base в Rails 4.2.2

development: 
    secret_key_base: reallylongkey 

test: 
    secret_key_base: anotherreallylongkey 

production: 
    secret_key_base: <%= ENV["SECRET_KEY_BASE"] %> 

Если я нажимаю, что GitHub, и оставить разработку и тестирование ключей общественности, будет мое приложение будет в опасности?

ответ

1

Нет, это не так, если вы не развертываете приложение рельсов где-либо в режиме разработки или тестирования.

См. What is the use of secret_key_base in rails 4

+0

Я немного не в порядке, здесь. Ответ на этот пост гласит, что 4.2 покончил с secret_token.rb. Затем он ссылается здесь: http://guides.rubyonrails.org/upgrading_ruby_on_rails.html#config-secrets-yml, что означает, что secret_token.rb все еще существует. Однако в моем приложении он не генерируется. – sabaeus

+1

В руководстве есть несколько заметок о том, как перенести версии предыдущих рельсов. В нем также говорится: «В качестве альтернативы вы можете просто скопировать существующую secret_key_base из инициализатора secret_token.rb в secrets.yml'. Начиная с 4.2 рельсы генерируют скелетное приложение без 'secret_token.rb' и помещает секреты в' secrets.yml' для всех сред, кроме производства. В производстве вы должны предоставлять секреты через переменные среды –

Смежные вопросы