デフォルトの設定が最も適切で、最もお勧めなんですね。長旅でしたがコレが答えです。APIを叩きたい場合、これは適切に権限を絞ったIAMユーザを作成し、そのユーザに対する永続キーを利用するしかありません。そんな中でもセキュリティに気を遣う場合(これは正直ちょっとやり過ぎ感は否めないですが)、こんな実装もあります。STSSessionCredentialsProvider永続キーから一時キーを得るAWSCredentialsProviderです。*3におけるGetSessionTokenというアクションを使います。ホント単純に、一時キーを発行してくれるだけのアクションです。この仕組みを使って、永続キーはGetSessionTokenアクションの実行専用とし、実用的なAPIを叩くのは一時キーだけにする、という方針で、多少セキュアになるかもなぁ、という。1時間後に無効に...というようなことを中でやってくれるのがSTSSessionCredentialsProviderです。一回得たキーが有効期限切れを起こしても、自動更新してくれます。あーんまり強烈な効果は感じられない実装ですが。要するに、システムは永続キーを使っちゃダメです。最低でも、永続キーをハードコーディングしないようにシステムを作りましょう。