Penyimpanan kata sandi terenkripsi SVN

109

Saya menginstal SVN pada mesin Ubuntu dan saya tidak bisa memikirkan sesuatu.

Setiap kali saya melakukan pembayaran dari terminal, saya mendapatkan kesalahan ini tentang menyimpan kata sandi yang tidak dienkripsi:

-----------------------------------------------------------------------
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'.
-----------------------------------------------------------------------

Saya memelototinya sedikit tetapi saya tidak dapat menemukan sesuatu yang berguna. Saya menemukan satu topik di mana dikatakan bahwa ini adalah masalah klien, bukan masalah server, tetapi saya masih belum yakin.

Ia mengatakan "mengkonfigurasi sistem Anda"; apa sebenarnya yang dimaksud dengan itu? Server atau klien? Jika saya servernya, apakah ada yang bisa saya lakukan? selain menyembunyikan peringatan (seperti yang dikatakan) ...

Terima kasih!

treznik
sumber
1
Pertanyaan itu tentang bagaimana menyembunyikan peringatan jika Anda tidak ingin mengenkripsi kata sandi. Pertanyaan ini tentang bagaimana mengkonfigurasi sistem untuk mengenkripsi kata sandi dengan benar.
outis nihil

Jawaban:

44

Ini adalah masalah klien. Ini memperingatkan Anda bahwa kredensial yang digunakan untuk server yang berbeda disimpan dalam teks biasa. Anda dapat menyembunyikan peringatan itu atau menggunakan penyimpanan terenkripsi untuk menyimpan kata sandi.

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

frisco
sumber
14
Penyimpanan enkripsi yang ditampilkan adalah GNOME Keyring atau Kwallet, tetapi karena saya tidak menggunakan antarmuka desktop apa pun di server saya, saya rasa enkripsi tidak mungkin dilakukan. Baik?
treznik
3
Di komentar pertama Anda bisa melihat ada opsi untuk menggunakannya baris perintah, tidak yakin cara kerjanya tetapi tampaknya layak.
frisco
5
Saya tidak percaya svn tidak menyediakan hash pw seperti htpasswd atau serupa.
d -_- b
17
Hashing @sims bagus jika Anda ingin VERIFIKASI kebenaran kata sandi. Klien akan MENGIRIM password ke server, jadi hashing saja tidak cukup. Anda harus menyimpannya dengan cara dua arah.
Notinlist
6
Anda bisa mendapatkannya tanpa kompilasi ulang, berdasarkan ubuntuforums.org/showthread.php?t=1348567 . Cukup setel ini ke ~ / .subversion / config [auth] password-stores = gnome-keyring
fikr4n
6

Dengan mengenkripsi kata sandi, Anda tidak akan dapat mencapai non-repudiation (pengguna lain dapat menggunakan hash Anda sebagai Anda) karena izin file OS. Namun, sebagian besar perusahaan memiliki pengaturan subversi menggunakan kata sandi domain mereka atau beberapa bentuk kata sandi SSO. Dengan mengenkripsi kata sandi, Anda setidaknya akan menutupi seseorang dari mengakses akun pengguna lain.

Saya masih khawatir tentang kekuatan enkripsi. Jika kata sandi subversi ditautkan ke akun penting lainnya, seseorang mungkin menguji kekuatan enkripsi untuk memecahkan kata sandi.

Taruhan terbaik adalah mengatur klien subversi untuk mematikan kata sandi yang disimpan dan memaksa Dev yang malas untuk mengotentikasi setiap kali.

Jason Lawrence
sumber
13
Apakah proposal terakhir adalah "terbaik" tergantung pada faktor lain. Bagaimana jika devs, dihadapkan pada proses commit / update yang berat, mulai menggunakan SVN lebih sedikit, dan akibatnya, perincian sinkronisasi dengan orang lain menjadi lebih kasar? Bagaimana jika mereka memulai cara curang untuk menyimpan kata sandi mereka di tempat lain dan mengotomatiskan proses otentikasi secara tidak aman?
LarsH
2

Saya menyimpan kredensial pada disk terenkripsi. (Meskipun, saat encfs dipasang, kredensial masih berupa teks biasa ke akun saya)

$ 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

Menggunakan git-svn berarti saya lebih jarang membutuhkan kredensial, jadi mungkin tidak terlalu berat untuk tidak menyimpannya sama sekali.

bsb
sumber