Я использую RoR, размещенный в Heroku, и я хотел бы хранить файлы на s3 с помощью paperclip. Мой исходный код размещен на github и доступен для чтения в мире. Какова наилучшая практика держать ключи в тайне от остального мира?
Paperclip предполагает, что ключи доступа хранятся в файле конфигурации (или в коде), поэтому, например, у меня есть:
file: config/s3.yml
access_key_id: my_access_key_id
secret_access_key: my_very_secret_key
bucket: bucket_name
Heroku работает, передавая код локальному git, а затем нажимая его на Heroku.
Поскольку я также использую github, я нажимаю тот же код на github. Это значит, что я тоже нажимаю на секретные ключи.
В настоящее время я использую общедоступную учетную запись github, поэтому, если я заплатил github, я мог бы решить половину проблемы, но все же я недоволен секретными ключами, лежащими в файле конфигурации в коде. Я не знаю, есть ли для этого лучшая практика.
Какова наилучшая практика хранения ключей в тайне и по-прежнему с использованием вышеупомянутого списка библиотек и сервисов?
Кстати, я только начинал с ror и heroku на прошлой неделе, поэтому меня можно считать новым, пожалуйста, будьте внимательны;) Спасибо!