Как удалить предупреждение о сохранении незашифрованного пароля после записи файла в svn

Каждый раз, когда я фиксирую файл в svn, я получаю следующее сообщение:

ВНИМАНИЕ! Ваш пароль для области аутентификации:

http://domainname.com:80 "domainname.com"

может храниться только на диске незашифрованным! Рекомендуется настроить вашей системы, чтобы Subversion могла хранить зашифрованные пароли, если возможное. Подробнее см. В документации. Вы можете избежать появления в будущем этого предупреждения, установив значение опции "store-plaintext-passwords" для "да" или "нет" в "/root/.subversion/servers".


Сохранить пароль незашифрованным (да/нет)? нет

Мне не нужна эта аутентификация; как я могу избавиться от этого предупреждения?

Ответ 1

Вы не храните пароль в Subversion, потому что не ответили на вопрос, хотите ли вы сохранить этот пароль.

Я считаю, что вы хотите полностью удалить это предупреждение . Есть два способа справиться с этим:

  • Легкий, но трудный способ. Вы можете указать svn --no-auth-cache каждый раз, когда вы выполняете команду Subversion. Это легко сделать, поскольку это не требует никаких реальных действий с вашей стороны. Это сложно, потому что вам нужно делать это почти каждый раз, когда вы используете команду Subversion (особенно тот, который касается репозитория, такого как checkout и commit).

  • Трудный, но простой способ. Вы можете изменить свою конфигурацию Subversion пользователя, чтобы не спрашивать, хотите ли вы сохранить эту информацию. (BTW, почему вы работаете как root? Вам нравится жить на краю? Лучше работайте как пользователь и настройте sudo, чтобы вы могли делать нужные вам корневые файлы. Таким образом, вы можете отслеживать, кто что делает, и вы не делаете что-то, что могло бы случайно привести сервер вниз. Фактически, многие системы Unix/Linux по умолчанию больше не позволяют пользователю входить в систему как root. Вы должны сделать sudo). Это сложно, потому что вам нужно что-то сделать, но легко, потому что, как только вы это сделаете, вам больше не нужно ничего делать.

У вас есть имя файла, который вам нужно отредактировать (/root/.subversion/servers). Найдите раздел [global] и найдите строку # store-passwords = no и удалите # с начала строки. Вы также можете сделать то же самое для строки # store-plaintext-passwords = no и # store-auth-cred = no. Пока вы на нем, вы также можете удалить файлы в каталоге auth, где Subversion сохраняет свои учетные данные. Это полностью устранит уже сохраненные пароли. Более подробную информацию можно найти в строке Red Bean Руководство по Subversion.

Теперь, когда вы выполняете команду Subversion, которая касается репозитория, он запрашивает у вас имя пользователя и пароль и не спрашивает, хотите ли вы их сохранить.

Ответ 2

Здесь вы скопировали полное предупреждение. Читая его, а не просто копируя/вставляя, он ответит на ваш вопрос:

вы можете избежать будущих проявлений это предупреждение, установив значение опция "store-plaintext-passwords" либо "да", либо "нет" в '/root/.subversion/servers'.

Ответ 3

Клиент subversion запрашивает только аутентификацию, потому что сервер требует ее. Чтобы избавиться от требования аутентификации, вам придется изменить конфигурацию сервера (например, в Apache, избавиться от AuthType, AuthName и AuthUserFile). Вы можете использовать другие методы аутентификации, которые не требуют паролей (например, сертификатов клиентов).

Если вы просто хотите избавиться от незашифрованного приглашения сохранения пароля, вы можете установить store-plaintext-passwords=off (путем редактирования ~/.subversion/config), или вы можете заставить зашифрованные пароли работать, получая (в Unices) ключ GNOME или выполняемый кошелек KDE, В Windows SVN должен автоматически использовать встроенное шифрование NTFS; на Mac OS X, Keyring. Дополнительную информацию см. В разделе Client Credentials в руководстве SVN.

Вы также можете зашифровать свой домашний каталог в Unix. Затем учетные данные также будут зашифрованы (но, конечно же, доступны для любой программы, выполняемой как вы, так и root при входе в систему, подобно шифрованию NTFS).

Если вы не хотите, чтобы SVN сохранял пароли вообще, зашифрованные или нет, установите store-passwords=no в конфигурационном файле SVN.