Для приложений Rails хранение вашего файла environment.rb в вашем хранилище кажется небезопасным
Многие приложения Rails используют метод CookieStore для хранения сеансов. Безопасность этого метода зависит главным образом от безопасности секретного ключа сеанса, который определен по умолчанию в config/environment.rb:
config.action_controller.session = {
:session_key => '_some_name_session',
:secret => 'long secret key'
}
Большинство людей, включая меня, хранят этот файл в нашем репозитории SCM. Означает ли это, что если я выполняю какую-то работу в кафе (или в любом открытом беспроводном соединении) и фиксирую свой источник, кто-то может прослушать этот секрет и, возможно, начать создавать допустимые сеансы для моего приложения? Разве люди не могут прослушивать файлы, которые я фиксирую? Это похоже на довольно приличную дыру в безопасности.
2 ответа
Если вы используете протокол, отличный от https или SSH, то да, я верю в это. Если человек, управляющий вашим сервером удаленного хранилища, использует порт 80 вместо 443, я бы сел с ними и обсудил их.
Не обязательно. Если вы разговариваете с Subversion, вы можете выбрать использование адреса HTTPS, а не HTTP, и все коммуникации между вашим локальным компьютером и сервером контроля версий будут безопасными.
Я был бы очень удивлен, если бы Git и Mercurial не предлагали одинаковые способности.