Отключить хранение паролей в открытом виде svn для всех пользователей

Отключить хранение паролей в открытом виде svn для всех пользователей

По умолчанию Subversion позволяет пользователям сохранять свои пароли в виде открытого текста в ~/.subversion/auth/svn.simple. Я изучаю варианты дляхранение зашифрованных паролей в svn, но по крайней мере и как можно скорее я хочу полностью отключить возможность хранения паролей для всех наших пользователей. Мы используем Subversion 1.6.17.

Я могу отключить это в домашнем каталоге пользователя через файл конфигурации.

~/.subversion/серверы:

[global]
# Password / passphrase caching parameters:
store-passwords = no
store-plaintext-passwords = no

Однако пользователь может изменить файл конфигурации, если захочет. Разве нет общесистемного файла конфигурации svn? Несколько вариантов, которые я видел:

Опция 1

В версии 1.8-dev скрипт конфигурации Subversion принимает параметр --disable-plaintext-password-storage для обхода логики, которая хранит пароли в открытом виде и парольные фразы клиентских сертификатов.

Я предпочитаю не обновлять версию до версии, находящейся в разработке.

Вариант 2

/etc/subversion/config

Насколько мне известно, этот файл конфигурации используется только в том случае, если в домашнем каталоге пользователя еще нет файла конфигурации.

Вариант 3

Добавьте задание cron для удаления кэша аутентификации пользователя в ~/.subversion/auth/svn.simple. Таким образом, даже если они изменят свой файл конфигурации svn, наше задание cron уничтожит все сохраненные пароли. Однако даже запуск его каждую минуту не гарантирует, что наша система резервного копирования не захватит файл(ы), содержащий пароли в виде открытого текста.

Идеи?

решение1

Ты не можешь.

Что бы вы ни делали, ваши пользователи могут обойти это и сохранить свой пароль в обычном текстовом файле в любом случае. Если вы отключите эту функцию в бинарном клиенте, они загрузят или скомпилируют другой клиент. Как правило, если вы настроите неприятные меры безопасности (например, необходимость вводить пароль для каждой операции svn), ваши пользователи обойдут их способом, который ухудшит безопасность. (Например, написав скрипт-обертку, содержащую их пароль. Который они оставят доступным для чтения всем.) Так что не делайте этого.

Повторяю: вы не можете, только техническими мерами, запретить пользователям хранить свои пароли в файле. Вы можете запретить это, но если это усложнит им жизнь, они все равно это сделают.

Если вы обеспокоены кражей ноутбука или резервной копии, зашифруйте домашний каталог пользователей. Это защитит пароли и данные. Если зашифрован весь домашний каталог, пароль шифрования обычно совпадает с паролем входа в систему из соображений удобства использования. Обязательно имейте политику резервного копирования паролей (например, запечатанный конверт), так как потеря пароля шифрования необратима.

Если вы обеспокоены повторным использованием пароля, введите случайный (следовательно, уникальный) пароль, который они будут вводить один раз и навсегда в свой клиент. Конечно, предусмотрите простой процесс изменения скомпрометированных паролей.

решение2

Кстати, даже перед тем, как что-либо шифровать, я бы позаботился о правах доступа к файлам: просто из любопытства проверил свои настройки и обнаружил, что они доступны для чтения всем. Для файла, содержащего понятный пароль, это выглядит как дыра в безопасности.

Связанный контент