Я делаю драгоценный камень, чтобы обернуть API. Службе требуется несколько параметров входа в систему, поэтому я создал класс Connection для инициализации, передав все значения входа и сохранив их с переменными экземпляра. Очевидно, одно из этих значений @secret_access_key
является секретным. Это не читается в приложении. Но во время тестирования gem в irb я вижу секретный ключ, отображаемый вместе со всеми другими переменными экземпляра, когда объект возвращается.
mws = MWS::Connection.new :access_key => '1', :secret_access_key => 'SECRET!!!', :merchant_id => '3', :marketplace_id => '4'
=> #<MWS::Connection:0x007fbd22acef40 @access_key="1", @merchant_id="3", @marketplace_id="4", @secret_access_key="SECRET!!!">
Я параноик, что секретный ключ будет отображаться в журналах Heroku, сообщениях об ошибках приложения или чем-то еще.
Должен ли я волноваться? Если да, то как лучше всего хранить или скрывать эту информацию?
Кроме того, я использую httparty gem для управления этим, есть ли что-то лучшее, что я могу сделать с этим камнем?