====== KDE KWallet ======
* https://wiki.archlinux.org/index.php/KDE_Wallet
===== KWallet 데이터 =====
* ''~/.local/share/kwalletd'' 에 지갑 데이터가 저장돼 있음.
===== git-credential-kwallet =====
* build 의존성 ''libkf5wallet-dev''
* https://github.com/Templar-von-Midgard/git-credential-kwallet
# ubuntu 에서 설치하기
sudo apt-get install libkf5wallet-dev cmake
git clone https://github.com/Templar-von-Midgard/git-credential-kwallet.git
cd git-credential-kwallet
mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE=Release ..
cmake --build .
sudo cmake --build . --target install
ls /usr/local/bin/git-credential-kwallet
git config --global credential.helper kwallet
# dev의존성 삭제
sudo apt-get remove --autoremove libkf5wallet-dev
===== core.askPass =====
* ''GIT_ASKPASS'' 보다 우선 적용됨.
git config --global core.askPass '/usr/bin/ksshaskpass'
**경고 : [[:intellij_idea|IntelliJ IDEA]]의 경우, 모든 ASKPASS 방식에 대해 오작동하였다. credential helper, SSH Key 를 사용하거나 IntelliJ 내장 해결책을 사용해야만 했다.**
===== GIT_ASKPASS : HTTP(S)에도 적용됨. =====
* [[:git|git]] 비밀번호 저장 지원
* ''credential.helper''가 더 우선시 된다.
* [[https://oracleyue.github.io/2019/10/05/git-keyring/|Keyring supports for Git to avoid repeating passwords | Icarus's wings]]
* [[https://www.shawnwang.net/1019.html|Git – How to avoid typing your password repeatedly – Shawn's Blog]]
* [[https://wiki.archlinux.org/index.php/KDE_Wallet|kde wallet]]
* [[https://github.com/KDE/ksshaskpass|GitHub - KDE/ksshaskpass: ssh-add helper that uses KWallet and KPasswordDialog]]
* 명백하게 사용자명이 존재하는 호출을 처리하는 경우 ''https://username@githost.com'' 형태의 URL일 때 적용.
* 만일 사용자명이 존재하지 않을 경우에는 사용자명을 묻는 UI가 뜨게 되고, 이 때문에 IntelliJ 등에서는 crash 가 발생한다.
* ''~/.config/plasma-workspace/env/gitaskpass.sh'' 파일에 아래 추가하고 재시작
#!/bin/sh
export GIT_ASKPASS=/usr/bin/ksshaskpass
chmod +x ~/.config/plasma-workspace/env/gitaskpass.sh
===== SSH Passphrase : SSH 기반 git 도 해당 =====
* ssh passphrase 를 저장하려면
* 위의 ''~/.config/plasma-workspace/env/askpass.sh'' 설정의 ''SSH_ASKPASS'' 설정에 더해서
#!/bin/sh
#!/bin/sh
export SSH_ASKPASS=/usr/bin/ksshaskpass
ssh-add < /dev/null
# 필요하면 아래도 추가
# eval $(ssh-agent -s)
chmod +x ~/.config/plasma-workspace/env/askpass.sh
* 만약 ''ssh-agent''가 자동으로 실행이 안되고 있다면 ''eval $(ssh-agent -s)''도 함께 추가해준다.
* see [[linux:ssh|Linux SSH]]
===== kwalletcli =====
* http://www.mirbsd.org/kwalletcli.htm
* https://github.com/MirBSD/kwalletcli
===== 참조 =====
* [[https://youtrack.jetbrains.com/issue/IDEA-163275|Allow storing passwords using KWallet : IDEA-163275]] 확인 필요
* https://community.kde.org/KDE_Utils/ksecretsservice