모든 사용자에 대해 svn 일반 텍스트 비밀번호 스토리지 사용 안함 구성 파일이 없습니까?

기본적으로 Subversion을 사용하면 비밀번호를 일반 텍스트로 저장할 수 있습니다 ~/.subversion/auth/svn.simple. svn에 암호화 된 암호저장하는 옵션을 조사 하고 있지만 최대한 빨리 모든 사용자의 암호를 저장하는 기능을 완전히 비활성화하고 싶습니다. Subversion 1.6.17을 실행 중입니다.

구성 파일을 통해 사용자의 홈 디렉토리에서 이것을 비활성화 할 수 있습니다.

~ / .subversion / servers :

[global]
# Password / passphrase caching parameters:
store-passwords = no
store-plaintext-passwords = no

그러나 원하는 경우 구성 파일을 변경할 수 있습니다. 시스템 전체 svn 구성 파일이 없습니까? 내가 본 몇 가지 옵션 :

옵션 1

1.8-dev에서 Subversion의 configure 스크립트는 –disable-plaintext-password-storage 옵션을 허용하여 일반 텍스트 암호 및 클라이언트 인증서 암호를 저장하는 논리를 무시합니다.

개발 릴리스로 업데이트하지 않는 것이 좋습니다.

옵션 2

/etc/subversion/config

AFAIK,이 구성 파일은 사용자가 홈 디렉토리에 구성 파일이없는 경우에만 사용됩니다.

옵션 3

에서 cron 작업을 추가하여 사용자의 인증 캐시를 삭제하십시오 ~/.subversion/auth/svn.simple. 따라서 svn 구성 파일을 변경하더라도 cron 작업은 저장된 암호를 죽입니다. 그러나 1 분마다 실행한다고해서 백업 시스템이 일반 텍스트 비밀번호를 포함하는 파일을 가져 오지는 않을 것입니다.

아이디어?



답변

당신은 할 수 없습니다.

무엇을 하든지 사용자는이를 무시하고 비밀번호를 일반 텍스트 파일에 저장할 수 있습니다. 클라이언트 바이너리에서이 기능을 비활성화하면 다른 클라이언트를 다운로드하거나 컴파일합니다. 일반적으로 모든 svn 작업에 대해 암호를 입력해야하는 등 유해한 보안 조치를 설정하면 사용자는 보안을 악화시키는 방식으로이를 무시합니다. (예를 들어, 암호가 포함 된 래퍼 스크립트를 작성하면 세계에서 읽을 수있게됩니다.) 그렇게하지 마십시오.

반복해서 말하면, 기술적 수단만으로는 사용자가 암호를 파일에 저장하지 못하게 할 수 없습니다. 당신은 그것을 금지 할 수 있지만, 그것이 그들의 삶을 어렵게 만들면 어쨌든 그렇게 할 것입니다.

랩톱 또는 백업 도난이 우려되는 경우 사용자의 홈 디렉토리를 암호화하십시오. 이렇게하면 데이터뿐만 아니라 암호도 보호됩니다. 전체 홈 디렉토리가 암호화 된 경우 사용 편의성을 위해 일반적으로 암호화 비밀번호는 로그인 비밀번호와 동일합니다. 암호화 비밀번호를 잃어 버릴 경우 복구 할 수 없으므로 비밀번호 백업 정책 (예 : 봉인 된 봉투)이 있어야합니다.

비밀번호 재사용이 우려되는 경우 임의의 (따라서 고유 한) 비밀번호를 적용하십시오. 비밀번호는 한 번에 모두 클라이언트에 입력합니다. 물론 손상된 암호를 변경하는 간단한 프로세스를 수행하십시오.


답변

BTW는 암호화하기 전에도 파일 권한을 관리합니다. 호기심에서 내 설정을 확인한 결과 이것이 세계에서 읽을 수 있음을 알았습니다. 명확한 암호가 포함 된 파일의 경우 보안 허점처럼 보입니다.