SVN-verschlüsselter Passwortspeicher

109

Ich habe SVN auf einem Ubuntu-Computer installiert und kann mich nicht um etwas kümmern.

Immer wenn ich etwas vom Terminal auschecke, erhalte ich die folgende Fehlermeldung beim Speichern eines unverschlüsselten Passworts:

-----------------------------------------------------------------------
ATTENTION!  Your password for authentication realm:

   <[...]> Subversion Repository

can only be stored to disk
unencrypted!  You are advised to
configure your system so that
Subversion can store passwords
encrypted, if possible.  See the
documentation for details.

You can avoid future appearances of
this warning by setting the value of
the 'store-plaintext-passwords' option
to either 'yes' or 'no' in
'/home/[...]/.subversion/servers'.
-----------------------------------------------------------------------

Ich habe es ein bisschen geglotzt, aber ich konnte nichts Nützliches finden. Ich habe ein Thema gefunden, in dem es sich um ein Client-Problem handelte, nicht um ein Server-Problem, aber ich bin immer noch nicht überzeugt.

Es heißt "Konfigurieren Sie Ihr System"; was genau bedeutet das damit Der Server oder der Client? Wenn ich der Server bin, kann ich etwas dagegen tun? außer die Warnung zu verstecken (wie es heißt) ...

Vielen Dank!

treznik
quelle
1
In dieser Frage geht es darum, wie Sie die Warnung ausblenden können, wenn Sie das Kennwort nicht verschlüsseln möchten. In dieser Frage geht es darum, wie ein System so konfiguriert wird, dass das Kennwort ordnungsgemäß verschlüsselt wird.
Outis Nihil

Antworten:

44

Es ist ein Kundenproblem. Es warnt Sie, dass die für die verschiedenen Server verwendeten Anmeldeinformationen im Klartext gespeichert werden. Sie können diese Warnung ausblenden oder einen verschlüsselten Speicher verwenden, um die Kennwörter zwischenzuspeichern.

Siehe: http://blogs.collab.net/subversion/2009/07/subversion-16-security-improvements/

Francisco
quelle
14
Die verwendeten Verschlüsselungsspeicher waren GNOME Keyring oder Kwallet, aber da ich auf meinem Server keine Desktop-Oberfläche verwende, kommt eine Verschlüsselung vermutlich nicht in Frage. Richtig?
Treznik
3
Im ersten Kommentar sehen Sie, dass es eine Option zur Verwendung der Befehlszeile gibt, die nicht sicher ist, wie sie funktioniert, aber machbar erscheint.
Francisco
5
Ich kann nicht glauben, dass svn kein Hash-Pw wie htpasswd oder ähnliches bereitstellt.
d -_- b
17
@sims Hashing ist gut, wenn Sie die Richtigkeit eines Passworts überprüfen möchten. Der Client ist dabei, das Kennwort an den Server zu senden, sodass Hashing nicht ausreicht. Sie müssen es bidirektional speichern.
Notinlist
6
Sie können es erhalten, ohne es neu zu kompilieren, basierend auf ubuntuforums.org/showthread.php?t=1348567 . Setzen Sie dies einfach auf ~ / .subversion / config [auth] password-
storage
6

Durch die Verschlüsselung des Kennworts können Sie aufgrund der Berechtigungen für Betriebssystemdateien keine Nicht-Zurückweisung erzielen (andere Benutzer könnten Ihren Hash wie Sie verwenden). Die meisten Unternehmen haben jedoch ein Subversion-Setup mit ihrem Domain-Passwort oder einer Form von SSO-Passwort. Durch das Verschlüsseln des Kennworts würden Sie zumindest jemanden vor dem Zugriff auf andere Konten eines Benutzers schützen.

Ich wäre immer noch besorgt über die Verschlüsselungsstärke. Wenn das Subversion-Passwort mit anderen wichtigen Konten verknüpft ist, kann jemand die Verschlüsselungsstärke testen, um das Passwort zu knacken.

Am besten richten Sie den Subversion-Client so ein, dass gespeicherte Kennwörter deaktiviert werden und faule Entwickler jedes Mal zur Authentifizierung gezwungen werden.

Jason Lawrence
quelle
13
Ob der letztere Vorschlag "am besten" ist, hängt von anderen Faktoren ab. Was ist, wenn Entwickler angesichts eines lästigen Festschreibungs- / Aktualisierungsprozesses weniger SVN verwenden und dadurch die Granularität der Synchronisierung mit anderen gröber wird? Was ist, wenn sie damit beginnen, ihre Passwörter an anderer Stelle zu speichern und den Authentifizierungsprozess unsicher zu automatisieren?
LarsH
2

Ich speichere die Anmeldeinformationen auf einer verschlüsselten Festplatte. (Obwohl, während encfs gemountet ist, die Anmeldeinformationen für mein Konto immer noch Klartext sind)

$ ls -nl ~/.subversion/
total 20K
-rw-r--r-- 1 1000 1000 4.2K 2009-07-10 13:00 README.txt
lrwxrwxrwx 1 1000 1000   31 2009-10-14 14:31 auth -> ~/crypt/subversion/auth/
-rw-r--r-- 1 1000 1000 5.7K 2009-07-10 13:00 config
-rw-r--r-- 1 1000 1000 3.6K 2009-07-10 13:00 servers

Die Verwendung von git-svn bedeutet, dass ich die Anmeldeinformationen viel seltener benötige, sodass es möglicherweise nicht zu lästig ist, sie überhaupt nicht zu speichern.

bsb
quelle