ฉันจะทำให้การโค่นล้มรีเซ็ตรหัสผ่าน / ผู้ใช้ที่เก็บไว้และจดจำข้อมูลรับรองความถูกต้องของฉันได้อย่างไร


14

พื้นหลัง: ฉันเคยมีทุกอย่างทำงานได้ดีในการติดตั้งใหม่ของฉัน:

$ svn co https://domain:443/ test1
Error validating server certificate for 'https://domain:443':
 - The certificate is not issued by a trusted authority. Use the
   fingerprint to validate the certificate manually!
Certificate information:
 - Hostname: **REMOVED**
 - Valid: **REMOVED**
 - Issuer: **REMOVED**
 - Fingerprint: **checked with issuer and REMOVED**
(R)eject, accept (t)emporarily or accept (p)ermanently? p
Authentication realm: <https://domain:443> Subversion repository
Password for 'nicdumz-machine-hostname':
Authentication realm: <https://domain:443> Subversion repository
Username: nicdumz
Password for 'nicdumz':

# proceeds to checkout correctly

$ svn co https://domain:443/ test2

# checkouts nicely, without asking for my password.

เมื่อถึงจุดหนึ่งฉันจำเป็นต้องกระทำสิ่งต่าง ๆ โดยใช้บัญชีอื่น ดังนั้นฉันก็ทำอย่างนั้น

$ svn ci --username other.user
Authentication realm: <https://domain:443> Subversion repository
Password for 'other.user':

# works fine

แต่ตั้งแต่นั้นมาทุกครั้งที่ฉันต้องการคอมมิชชันเป็น 'nicdumz' (ผู้ใช้เริ่มต้น repos ทั้งหมดถูกเช็กเอาต์กับผู้ใช้นั้น) มันจะแจ้งให้ฉันใส่รหัสผ่าน:

$ svn ci
Authentication realm: <https://domain:443> Subversion repository
Password for 'nicdumz':

เฮ้มาเลยทำไม :) สิ่งเดียวกันนี้เกิดขึ้นถ้าฉันต้องการเช็คเอาต์ใหม่เนื่องจากการเข้าถึงแบบอ่านได้รับการคุ้มครองด้วย

ดังนั้นฉันจึงพยายามแก้ไขปัญหาด้วยตัวเอง ฉันอ่านรอบ ๆ ~ / .svversion / auth เก็บข้อมูลประจำตัวดังนั้นฉันจึงลบมันออกจากทาง:

$ cd ~/.subversion
$ mv auth oldauth
$ mkdir auth

ดูเหมือนว่าจะทำงานในตอนแรกเพราะ svn ลืมเกี่ยวกับการตรวจสอบใบรับรอง:

$ svn co https://domain:443/ test3
Error validating server certificate for 'https://domain:443':
 - The certificate is not issued by a trusted authority. Use the
   fingerprint to validate the certificate manually!
Certificate information:
 - Hostname: **REMOVED**
 - Valid: **REMOVED**
 - Issuer: **REMOVED**
 - Fingerprint: **checked with issuer and REMOVED**
(R)eject, accept (t)emporarily or accept (p)ermanently? p
Authentication realm: <https://domain:443> Subversion repository
Password for 'nicdumz-machine-hostname':
Authentication realm: <https://domain:443> Subversion repository
Username: nicdumz
Password for 'nicdumz':

# proceeds to checkout correctly

$ svn up
Authentication realm: <https://domain:443> Subversion repository
Password for 'nicdumz':

อะไร? สิ่งนี้เกิดขึ้นได้อย่างไร?

หากคุณมีข้อเสนอแนะเพื่อตรวจสอบเพิ่มเติมเกี่ยวกับพฤติกรรมนี้ฉันสนใจมาก หากฉันถูกต้องไม่มีทางที่จะทำ verbose svn upหรืออะไรทำนองนั้นดังนั้นฉันไม่แน่ใจว่าฉันควรไปตรวจสอบ โอ้และสำหรับสิ่งที่คุ้มค่า:

$ svn --version
svn, version 1.6.6 (r40053)
   compiled Oct 26 2009, 06:19:08

Copyright (C) 2000-2009 CollabNet.
Subversion is open source software, see http://subversion.tigris.org/
This product includes software developed by CollabNet (http://www.Collab.Net/).

The following repository access (RA) modules are available:

* ra_neon : Module for accessing a repository via WebDAV protocol using Neon.
  - handles 'http' scheme
  - handles 'https' scheme
* ra_svn : Module for accessing a repository using the svn network protocol.
  - with Cyrus SASL authentication
  - handles 'svn' scheme
* ra_local : Module for accessing a repository on local disk.
  - handles 'file' scheme
* ra_serf : Module for accessing a repository via WebDAV protocol using serf.
  - handles 'http' scheme
  - handles 'https' scheme

คำตอบ:


14

ฉันมีปัญหาเดียวกันและฉันลบไดเรกทอรีรับรองความถูกต้อง จากนั้นฉันก็:

svn --username xxx update

ซึ่งขอรหัสผ่านจากฉัน แต่นั่นก็เป็นเช่นนั้น ทั้งหมดที่ฉันสามารถพูดได้คือการลบไดเรกทอรีรับรองความถูกต้องทำงานให้ฉัน คุณมีตัวเลือกที่เหมาะสมในไฟล์เซิร์ฟเวอร์ของคุณหรือไม่ คือ (ฉันคิดว่า):

store-passwords = yes
store-plaintext-passwords = yes

ใน[global]ส่วน ฉันไม่แน่ใจ 100% แต่อาจช่วยได้

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.