Khôi phục mật khẩu SVN từ bộ nhớ cache cục bộ


84

có cách nào để khôi phục mật khẩu từ bộ nhớ cache cục bộ không? Mật khẩu phải được lưu trữ ở đâu đó vì tôi có thể chạy

svn co http://my.svn.server/foo

nhưng tôi đã tự đánh mất mật khẩu. Tôi có phải đặt lại mật khẩu không hay có thể (và làm cách nào) để tìm và giải mã mật khẩu? Tôi chủ yếu sử dụng CLI SVN trên windows, đôi khi chuyển sang TortoiseSVN hoặc IntelliJ Idea SVN.



6
Đây không phải là bản sao, TortoiseSVN là một phần mềm khác với svn và có khả năng lưu trữ mật khẩu theo một cách hoàn toàn khác.
Stephen Paulger

Câu trả lời:


181

Trên Windows, Subversion lưu trữ dữ liệu xác thực trong %APPDATA%\Subversion\auth. Tuy nhiên, mật khẩu được lưu trữ được mã hóa, không phải ở dạng văn bản rõ ràng.

Bạn có thể giải mã chúng, nhưng chỉ khi bạn đăng nhập vào Windows với tư cách là người dùng đã lưu dữ liệu xác thực.

Ai đó thậm chí đã viết một công cụ để giải mã chúng. Chưa bao giờ tự mình thử công cụ nên tôi không biết nó hoạt động tốt như thế nào, nhưng bạn có thể muốn thử nó:

http://www.leapbeyond.com/ric/TSvnPD/

Cập nhật: Trong TortoiseSVN 1.9 trở lên, bạn có thể làm điều đó mà không cần bất kỳ công cụ bổ sung nào:

Settings Dialog-> Saved Data, sau đó nhấp vào nút " Clear..." bên phải văn bản " Authentication Data". Một hộp thoại mới bật lên, hiển thị tất cả dữ liệu xác thực được lưu trữ mà bạn có thể chọn (các) dữ liệu xác thực để xóa. Thay vì thanh toán bù trừ, giữ ShiftCtrlnút, và sau đó double clicktrong danh sách. Một cột mới được hiển thị trong hộp thoại hiển thị rõ ràng mật khẩu.


Chương trình được liên kết cũng hoạt động với repo được tạo và quản lý thông qua Eclipse. Tên của chương trình có một chút sai lệch theo nghĩa đó.
Jens Wegar

Có, tên gây hiểu lầm. IntelliJ cũng sử dụng vị trí này theo mặc định. Có vẻ như vị trí của anh ấy dành cho tất cả các khách hàng của svn đều có thể chia sẻ.
Mike Nelson,

@Stefan - Tôi đã thử TSvnPD ở trên và có thể lấy lại mật khẩu. Cảm ơn
Jagadeesh

RÚT GỌN: Chỉ cần tải xuống exethông qua liên kết và bạn đã hoàn tất.
wonsuc

1
Mẹo Hộp thoại Cài đặt -> Dữ liệu đã Lưu, v.v ... đã phù hợp với tôi (Tôi không thể chỉ tải phần mềm tại nơi làm việc). Cảm ơn!
user1976

48

Trong ~/.subversion/auth/svn.simple/bạn sẽ tìm thấy một tệp có tên dài hệ thập lục phân. Mật khẩu ở trong đó ở dạng bản rõ.

Nếu có nhiều hơn một tệp, bạn sẽ cần tìm tệp đó tham chiếu đến máy chủ mà bạn cần mật khẩu.


10
Mật khẩu được lưu trữ trong svn.simpleđược mã hóa kể từ Subversion 1.6 .
dolmen

1
Tôi tham khảo gnome-keyring nhưng không thể thấy bất kỳ thứ gì liên quan trong keyring của tôi
Dấu hỏi

5
Nếu bạn có tham chiếu đến khóa gnome, mật khẩu của bạn có thể được lưu trữ đơn giản dưới dạng "mật khẩu mạng".
chết ba lần vào

32

Đối với những người quan tâm đến giải pháp OS X cho các ứng dụng như Intelli-J, nơi các quyền được OSX lưu trữ:

  1. Nhấn CMD + SPACE
  2. Nhập "keychain"
  3. Mở quyền truy cập chuỗi khóa
  4. Trong "Móc khóa" ở bên trái, hãy chọn "đăng nhập"
  5. Trong "Danh mục" ở bên phải, hãy chọn "Tất cả các mục"
  6. Ở trên cùng bên phải trong hộp tìm kiếm, hãy nhập URL máy chủ (ví dụ: svn.mycompany.com)
  7. Mục chuỗi khóa của bạn sẽ hiển thị nếu bạn chọn để máy Mac ghi nhớ thông tin đăng nhập của mình.
  8. Nhấp đúp vào mục đó và chọn hộp kiểm "Hiển thị mật khẩu" ở cuối hộp thoại bật lên. Bạn sẽ phải nhập thông tin đăng nhập Mac của mình để tiết lộ mật khẩu.

Dễ dàng hơn nhiều so với việc phải cố gắng giải mã mật khẩu :-)


1
Đây là một tiết kiệm! Cảm ơn bạn.
Manny

1
Wow, không biết điều này trước đây. Cám ơn rất nhiều!
drg

5

Chỉ cần sử dụng chương trình giải mã này để giải mã tên người dùng và mật khẩu được lưu trong bộ nhớ cache cục bộ của bạn.

Theo mặc định, TortoiseSVN lưu trữ thông tin đăng nhập được lưu trong bộ nhớ cache của bạn bên trong các tệp trong thư mục% APPDATA% \ Subversion \ auth \ svn.simple. Mật khẩu được mã hóa bằng cách sử dụng API bảo vệ dữ liệu của Windows, với một khóa được gắn với tài khoản người dùng của bạn. Công cụ này đọc các tệp và sử dụng API để giải mã mật khẩu của bạn

trình giải mã mật khẩu svn


Cái này là đơn giản nhất
Taha Rehman Siddiqui

1

Mật khẩu SVN của bạn trong Ubuntu (12.04) nằm trong:

~/.subversion/auth/svn.simple/

Tuy nhiên trong các phiên bản mới hơn, chúng được mã hóa, như ai đó đã đề cập trước đó. Để tìm mật khẩu gnome-keyring, tôi khuyên Bạn nên sử dụng chương trình ' gkeyring '.

Để cài đặt nó trên Ubuntu - thêm kho lưu trữ:

sudo add-apt-repository ppa:kampka/ppa
sudo apt-get update

Cài đặt nó:

sudo apt-get install gkeyring

Và chạy như sau:

gkeyring --id 15 --output=name,secret

Hãy thử các id chính khác nhau để tìm cặp khớp với những gì bạn đang tìm kiếm. Cảm ơn kampka vì sự mềm mại.


2
Trên Ubuntu, chỉ cần sử dụng tiện ích Mật khẩu và Khóa mặc định để tiết lộ tất cả mật khẩu của bạn là đủ. Tôi vô cùng ngạc nhiên khi có bao nhiêu tài khoản người dùng và mật khẩu được lưu trữ ở đó! Cũng đã giúp tìm ra mật khẩu SVN bị quên.
shadyyx
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.