AWS / PHP / Python ちょいメモ

amazon web service , PHP, Python を使ったときのメモ。日本語でググってもわからなかった事を中心に。

Cloud9 の AWS Managed Temporary Credentials の動作

AWSaws-cli で操作するとき、Cloud9のコンソール使うと便利よ。

って、JAWS-UG CLI専門支部 で教えてもらって使ってます。

紹介いただいたときに AWS Managed Temporary Credentials は OFFにして使いましょうと説明もらってた意味がわかったので紹介。

OFFにしないとどうなるの?

ONのままだとIAMロール設定なしで、S3にBucket作ったり消したりできちゃうのですね。

意図せぬことが発生するので、OFFにして、IAMロール設定が吉です。

Cloud9が動作しているEC2に、IAMロールを設定してやれば、設定したIAMロールで許可してる操作のみに制限することができるので、意図しない動作を起こさないことが保証できます。

Credentialsの設定

Cloud9のIDEを起動して、設定をすることができます。

  • Cloud9 > Preference > AWS Settings > Credentials

設定ONのとき

デフォルトだと、Credentials の AWS Managed Temporary Credentials は ONです。


f:id:hidehara:20200924162447p:plain
Cloud9 > Preference > AWS Settings > Credentials


ONがなにかというと ~/.aws/credentials ファイルが自動的に作られる状態となります。

ファイルを覗いてみると、access_key と secret_key が設定されるのがわかりました。

$ cat ~/.aws/credentials
# Do not modify this file, if this file is modified it will not be updated. If the file is deleted, it will be recreated on Thu Sep 24 2020 07:31:41 GMT+0000 (Coordinated Universal Time).
# 4c752bfc78cb5124de2eee99d27de1e01040d0597676e1a783ab227f126ff5bc #

[default]
aws_access_key_id=ASIA4FEES7XXXXXXXXXX
aws_secret_access_key=3RbrJNbvLL2zNZZ81dgEXXXXXXXXXXXXXXXXXXXX
aws_session_token=IQoJb3JpZ2luXXXXXXXXXXXXXXXXXXXX.......XXXXXXXXXX
region=ap-northeast-1

設定OFFにすると

Credentials の AWS Managed Temporary Credentials を、OFFにします。

f:id:hidehara:20200924163042p:plain
Cloud9

すると、前述の ~/.aws/credentials ファイル は削除されました。


その他

最初、どうして設定したIAMロールの範囲を超えたことができるのが不思議で仕方がなかったです。

.credentials ファイルを見つけた後も、設定されてる access_key_id が見知らぬもので(IAMユーザーを検索しても出てこない!)。



AWS Managed Temporary Credentials が行ってることの理解は、こちらの記事が良さそうです!