ローカル環境の秘匿情報を1Passwordで一元管理することで、githubにAPI Key等を公開してしまうリスクを防ぐことができます。
準備
以下の2つをインストールしておきます。
1PasswordからAWSのアクセス情報を取得する
以下の設定をしておくと、AWS CLIだけでなく独自のプログラムからのAWSへのアクセスにも対応できます。
-
1Passwordにアクセス情報を保存する
-
~/.aws/configにcredential_processを設定する
[default]
credential_process = sh -c "op item get 'aws-credential-default' --format json --fields label=aws_access_key_id --fields label=aws_secret_access_key | jq 'map({key: .label, value: .value}) | {Version: 1, AccessKeyId:.[0].value, SecretAccessKey:.[1].value}'"
1Passwordから環境変数を取得する
-
1PasswordにAPI Keyを保存する
-
プログラム実行時に1Passwordから環境変数を設定する
OPENAI_API_KEY=$(op item get OpenAI --fields label=api-key --format json | jq -r '.value') \
python gpt.py