こんにちは、さるまりんです。
AWSクライアントを使ってサービスにアクセスし、コマンドを実行するとき、キーやシークレットのクレデンシャル情報が必要です。
利用する際は、aws configure
を使ってプロファイルを作成し、コマンド実行時に--profile
でプロファイルを指定して呼び出すことで行います。
こんな感じです。
プロファイル作成
aws configure set aws_access_key_id "あなたのアクセスキー" --profile my-profile
aws configure set aws_secret_access_key "あなたのシークレットキー" --profile my-profile
コマンド実行時
aws --profile my-profile [実行したいコマンド]
プロファイルが必要なくなった場合は~/.aws/credentials
、~/.aws/config
から該当の箇所を削除して保存すればOKです。
credentials
[default]
aws_access_key_id = EXAMPLEID
aws_secret_access_key = EXAMPLEKEY
[my-profile] # ここを削除
aws_access_key_id = MYPROFID
aws_secret_access_key = MYPROFKEY
config
[default]
region = us-west-2
output = json
[profile my-profile] # ここを削除
region = us-east-1
output = text
ここまでしたくないこともあります。
その場合は環境変数として設定し一時的に利用することもできます。
script.sh
export AWS_ACCESS_KEY_ID="あなたのアクセスキー"
export AWS_SECRET_ACCESS_KEY="あなたのシークレット"
aws [実行したいコマンド]
こんなふうに一行で指定することで他には影響は与えずに特定のコマンドだけでクレデンシャルを利用することもできます。
AWS_ACCESS_KEY_ID="あなたのアクセスキー" AWS_SECRET_ACCESS_KEY="あなたのシークレット" aws [実行したいコマンド]
クレデンシャル情報はとても大切です。
どんなふうに利用するかはいろいろ検討しなければなりません。
安全に便利に。それをいつも考えつつ開発していきたいと思います。
読んでくださってありがとうございました。
それではまた!