Quantcast
Channel: Vimタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 5608

macOS Keychainを使ってdotfile内のsecretsを管理しよう

$
0
0

背景

VimのプラグインでたまにAPI Tokenを必要とするのがあります。いちいちそのプラグインを使うたびにTokenをパスワードマネージャーからコピペするなんて、面倒くさすぎる!しかもdotfileにsecretsをそのまま書き込んだらどこにもアップロードできなくなります。ググったら良さげな方法が見つかったのでシェアしておきます。また他にいい方法を知ってる人がいたらコメお願いします。

KeychainにSecretsを追加

まずはコマンドラインからKeychainに必要なSecretsを追加しましょう。(自分は試してないですが多分GUIからでもできると思います)

security add-generic-password -a "$USER" -s 'Qiita Api Token' -w '321hogehoge123'

-sでSecretの名前を決めます。これはのちに必要になるのでメモっておきましょう。-aのargumentでどのアカウントに追加するかを指定できます。そして-wが実際のToken(か何かしらのString)になります。

Secretsを環境変数に定義する

そしたらどこでも使えるように、自分の使っているshell(zsh, bash, fish...etc)のenvironment variableにexportしましょう。自分はZSHを使っていたので、このようにしました。

~/.zshrc
export QIITA_API_TOKEN=$(security find-generic-password -s"Qiita Api Token -w")

find-generic-passwordのコマンドは-sでSecretの名前(先ほどメモした"Qiita Api Token")を指定します。-wはどうやらパスワード以外のメタデータを除外するオプションっぽいです。

.vimrcから読み込む

Environment variableは.vimrcからアクセスできるので、

~/.vimrc
letg:some_plugin={ user:'hoge', password: $QIITA_API_TOKEN }

ってな感じで安全にdotfileからSecretsを読み込めます。以上です!

良かったところ、改善して欲しいところ、もしよかったら感想コメント残してください!ありがとうございました。

参考記事:

https://coderwall.com/p/5ck85g/storing-secrets-in-the-macos-keychain


Viewing all articles
Browse latest Browse all 5608

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>