mac の keychain のパスワードを CUI から追加・取得
mac の keychain のパスワードを CUI から追加・取得
security コマンドでできるってことを https://github.com/defunkt/gist のドキュメント眺めていたら知った。
特定のパスワードを取得するには、
- security find-internet-password # web
- security find-generic-password # generic
を使って取得ができる。
$ security 2>&1 find-internet-password -gs www.hatena.ne.jp | ruby -e 'print $1 if STDIN.gets =~ /^password: "(.*)"$/'
追加は
- security add-internet-password
- security add-generic-password
でできる。
$ security add-generic-password -a foo -w bar -s testtesttest
$ security 2>&1 find-generic-password -gs testtesttest | ruby -e 'print $1 if STDIN.gets =~ /^password: "(.*)"$/'
bar
わーべんり!って思ったんだけど、これで生パスワード取得可能って危険じゃ無い?ダイアログで許可を尋ねられるけど、ログインパスワードなしで生パスワードが取得されてしまう。keychain.app のほうは生パスワード取得するときにログインパスワードを再度尋ねられ、その後知ることができるんだけど、この方法で生パスワード取得が可能だと、PCをロックしてない状態で誰かに操作されたとき keychain のパスワードがダダ漏れになってしうまうような…。 ロック解除されていた keychain だからでした…ちゃんとロックされている keychain は問題なかった!!!