Я использую Active Gem/API для доставки, для которого вам необходимо иметь логин и пароль для подключения к различным почтовым службам, например. FedEx или Canada Post. В настоящее время я жестко закодирован как для каждой службы, так и для отдельного метода в контроллере. Я бы приветствовал предложения о том, как сделать это более надежно. СпасибоКак сохранить регистрационные данные для API в рубине на рельсах?
1
A
ответ
1
Вы можете сделать это в отдельном файле для всех своих паролей, а затем не проверять этот файл в каких-либо публичных репозиториях. Для этого вам необходимо изменить свой application.rb
искать файл со всеми вашими паролями:
конфигурации/application.rb
...
# Moving ENV variables into one place (config/application.yml)
config = YAML.load(File.read(File.expand_path('../application.yml', __FILE__)))
config.merge! config.fetch(Rails.env, {})
config.each do |key, value|
ENV[key] = value unless value.kind_of? Hash
end
...
module Myapp
class Application < Rails::Application
...
конфигурации/application.yml (пример значения)
## Rails
SECRET_TOKEN: 'asdfasfce336863e6asdfasdfasdf917ba42e6580fbbd42c01f19364a8f463ed377e46851360e3f282b0cdaf7b6332ed9e292c5e98e01acsasdf'
## Amazon
AWS_ACCESS_KEY_ID: 'ascdaewecaewewf'
AWS_SECRET_KEY: 'asdfasdcae/asdfac'
AWS_REDIRECT_URL: 'aws/success'
## Environment-specific
development:
MAILER_HOST: "localhost:3000"
REDISTOGO_URL: 'redis://@localhost:6379'
S3_BUCKET_NAME: "myapp-staging"
test:
MAILER_HOST: "test.local"
REDISTOGO_URL: 'redis://@localhost:6379'
S3_BUCKET_NAME: "myapp-staging"
production:
MAILER_HOST: "myapp.com"
S3_BUCKET_NAME: "myapp"
S3_BUCKET_ADDRESS: "https://myapp.s3.amazonaws.com/"
Затем вы можете получить доступ к этой информации во всем приложении через переменные среды:
ENV['AWS_ACCESS_KEY_ID']
Где бы вы ни выбрали пароль.
Это позволяет легко менять что-либо все в одном месте, и это облегчает управление тем, какие разработчики получают конфиденциальную информацию.
EDIT
Существует также хороший Railscast на него, если у вас есть подписка: http://railscasts.com/episodes/85-yaml-configuration-revised
Смежные вопросы
- 1. Как сохранить регистрационные данные приложения для Android?
- 2. Значок API в рубине на рельсах
- 3. Отношения для пользователя, чтобы сохранить «избранное» в рубине на рельсах?
- 4. Как издевается запрос в рубине на рельсах
- 5. API для ОС Android в рубине на рельсах
- 6. Как реализовать AS2 в рубине на рельсах
- 7. Как использовать rangelider.js в рубине на рельсах?
- 8. Как создать SAPI/API в рубине на рельсах?
- 9. ParamsWrapper в рубине на рельсах?
- 10. Манипулирование видео в рубине на рельсах
- 11. Просмотров в рубине на рельсах
- 12. маршрутизации в рубине на рельсах
- 13. Перенаправление в рубине на рельсах
- 14. Как установить значение для флажка в рубине на рельсах?
- 15. Как загрузить изображение в рубине на рельсах
- 16. Как использовать кэш в рубине на рельсах
- 17. , представляющий элементы в рубине на рельсах из wunderground api wrapper
- 18. сохранить изображение с ajax в рубине на рельсах
- 19. как маршрут установлен в рубине на рельсах
- 20. Как использовать Ajax в рубине на рельсах
- 21. Как работает литье в рубине на рельсах?
- 22. работает завиток на рубине на рельсах
- 23. Как реализовать хешиды в рубине на рельсах
- 24. Итерация дат в рубине на рельсах
- 25. Как использовать Ajax в рубине на рельсах?
- 26. Как использовать флажок в рубине на рельсах
- 27. Как реализовать badgeville в рубине на рельсах
- 28. Как скрыть строку в рубине на рельсах
- 29. Как написать это в рубине на рельсах?
- 30. многоязычный webapp в рубине на рельсах