소개
git-credential-keepassxc는 Git과 쉘 스크립트가 KeePassXC를 자격 증명 저장소로 사용할 수 있도록 도와주는 Git 자격 증명 헬퍼입니다. KeePassXC와 연동하여 사용자 이름과 비밀번호 등을 안전하게 관리하며, Rust로 개발된 오픈소스 도구입니다. 이 프로그램은 명령줄 인터페이스를 통해 자격 증명을 가져오고 저장하며, KeePassXC의 그룹 기능을 활용해 자격 증명을 필터링할 수 있습니다.
상세정보
자격 증명 가져오기 및 저장
이 도구는 Git의 자격 증명 헬퍼 인터페이스를 구현하여, Git이 사용자 이름과 비밀번호를 요청할 때 KeePassXC에서 해당 정보를 가져오거나 새로 저장할 수 있습니다. 표준 입력으로 자격 증명 요청을 받고, 같은 형식으로 응답을 반환합니다.
KeePassXC 그룹 기반 필터링
사용자는 --group 옵션을 반복하여 특정 그룹의 자격 증명만 필터링할 수 있습니다. 또는 --git-groups 옵션을 사용해 git-credential-keepassxc configure로 생성된 Git 전용 그룹만을 대상으로 자격 증명을 필터링할 수 있습니다. 여러 데이터베이스를 사용할 때는 동일한 그룹 이름을 사용하는 것이 권장됩니다.
고급 필터링: KPH 필드 활용
KeePassXC의 고급 문자열 필드를 이용해 특정 항목을 숨길 수 있습니다. 도구에서 반환하지 않도록 하려면, 해당 항목의 고급 필드에 KPH: git (콜론 뒤 공백 포함) 값을 false로 설정해야 합니다. 이 기능은 store 작업 시 원치 않는 항목 업데이트를 방지하는 데 중요합니다.
YubiKey를 통한 암호화 (선택 기능)
yubikey 기능을 활성화하면, KeePassXC와의 통신에 사용되는 키를 YubiKey의 HMAC-SHA1 챌린지-응답 방식으로 암호화할 수 있습니다. encrypt challenge-response 명령으로 키를 암호화하고, decrypt 명령으로 복호화할 수 있습니다. 이는 스크립트에서 무인 인증 시 보안을 강화하는 데 유용합니다.
발신자 제한 (strict-caller 기능)
strict-caller 기능을 사용하면 특정 실행 파일만 이 도구를 호출할 수 있도록 제한할 수 있습니다. 먼저 caller me로 현재 셸을 허용 목록에 추가한 후, caller add로 Git 실행 파일 등을 추가해야 합니다. 이 기능을 사용할 때는 반드시 먼저 발신자를 추가한 후에 데이터베이스를 설정해야 하며, 그렇지 않으면 도구를 실행할 수 없습니다.
최신 버전·업데이트
현재 버전은 0.14.3이며, 크레이트.io에서 cargo install-update git-credential-keepassxc 명령으로 최신 버전으로 업데이트할 수 있습니다. 기능을 지속적으로 유지하려면 cargo-update 크레이트를 설치하고, 설치 시 사용한 기능을 지정하여 업데이트할 수 있습니다.
제한 사항·확인 사항
strict-caller 기능을 사용할 경우, 반드시 먼저 caller me로 현재 실행 중인 셸을 허용 목록에 추가한 후에 configure 명령을 실행해야 합니다. 그렇지 않으면 도구가 자신을 호출하지 못해 오류가 발생하며, 이후에는 caller clear로 제한을 해제해야만 다시 사용할 수 있습니다. 또한, 이 도구는 KeePassXC와의 통신을 위해 keepassxc-protocol을 사용하므로, KeePassXC가 이 프로토콜을 지원하는 버전 이상이어야 합니다.
시스템 요구사항
별도의 시스템 요구사항이 등록되지 않았습니다.


