`pass` 비밀번호 관리자에서 비밀번호 내보내기


9

나는 1 년 정도 동안 pass 암호 관리자 를 사용해 왔으며 훌륭하지만 때로는 다른 암호 관리자를 테스트하고 암호를 다시 필요로합니다.

지금까지 필요에 따라 수동으로 추가했지만 다른 암호 관리자로 마이그레이션하려면 스크립트가 필요합니다. 백 (더 많지 않으면).

가능합니까? 이미 해결책이 있습니까?

지난 몇 달 동안 솔루션을 켜고 끄면서 "이 스크립트를 실행하고 붐을 내 보낸"솔루션을 찾지 못했습니다.

그런 스크립트가 있습니까? 그렇지 않다면 무엇을, 어디에서 찾아야합니까?


@ josten 그래, 나는 그것이 모든 파일을 통과하는 곳에서 무언가를 가지고 있다고 생각하고 암호를 얻고 어딘가에 저장합니다. 그렇게하는 한 가지 방법입니다. 그러나 확실하지 않은 방법
— greduan

답변:


10

비밀번호 저장소에있는 파일을 반복하여 별도의 파일에 작성하여 gpg-agent를 실행중인 경우 (암호가로드 된 경우)이를 수행 할 수 있습니다.

서브 디렉토리의 각 파일에서 경로 ( $PASSWORD_STORE_DIR) 및 .gpg확장자에서 선행 디렉토리를 제거해야 하지만 그렇지 않은 경우에는 간단합니다.

#!/usr/bin/env bash
# export passwords to external file

shopt -s nullglob globstar
prefix=${PASSWORD_STORE_DIR:-$HOME/.password-store}

for file in "$prefix"/**/*.gpg; do                           
    file="${file/$prefix//}"
    printf "%s\n" "Name: ${file%.*}" >> exported_passes
    pass "${file%.*}" >> exported_passes
    printf "\n\n" >> exported_passes
done

그것은 내가 생각했던 것에 따라 매우 간단합니다. :) 정말 빠릅니다. 각 파일의 내용 앞에 파일 이름을 추가 한 다음 각 파일 사이에 두 줄 (분리 용)을 어떻게 추가 하시겠습니까? 나는 쉘 스크립팅에별로 익숙하지 않다.
— greduan

BTW 내가 원하는 이유는 일부 암호 (즉, LastPass에서 가져 오지 않은 암호)에는 암호 자체 외에 암호에 대한 정보가 없기 때문에 암호가 무엇인지 모르는 암호가 있기 때문입니다.
— greduan

@Greduan 요청한 형식으로 인쇄하도록 업데이트되었습니다.
— jasonwryan
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.