はじめに
TurbonomicがAWS上(EC2/EKS)で稼働している場合、AWSとの連携方式はIAMロール方式とIAMユーザー方式の2つから選べます。
結論から言うと、IAMロール方式を強く推奨します。 ただし、IAMユーザー方式にもメリットがあるため、状況に応じて選択してください。
2つの連携方式
IAMロール方式(推奨)
EC2に「このAWSアカウントにアクセスしていいよ」という許可証(ロール)を付与する方式です。
アクセスキーの発行は不要で、AWSが自動的に認証を行ってくれます。
Turbonomic (EC2) ──── 許可証で自動認証 ────▶ AWSアカウント
IAMユーザー方式
IDとパスワードのようなもの(アクセスキー) を発行して、Turbonomicに登録する方式です。
Turbonomic (EC2) ──── ID/パスワードで認証 ────▶ AWSアカウント
比較表
| 観点 | IAMロール方式 | IAMユーザー方式 |
|---|---|---|
| セキュリティ | ◎ 一時認証情報 | △ 長期認証情報 |
| キーローテーション | 自動 | 手動対応が必要 |
| 初期設定の手軽さ | △ 信頼関係の設定が必要 | ◎ シンプル |
| マルチアカウント対応 | ◎ AssumeRoleで一元管理 | △ アカウントごとにキー管理 |
| AWSベストプラクティス | ✅ 推奨 | ⚠️ 非推奨 |
各方式のメリット
IAMロール方式のメリット
- セキュリティが高い: 一時認証情報を使用し、自動でローテーション
- 認証情報の管理が不要: アクセスキーの発行・保管・更新が不要
- マルチアカウント管理が容易: 複数アカウントへAssumeRoleで接続可能
- AWSベストプラクティス準拠: IAMロールの使用が推奨されている
IAMユーザー方式のメリット
- 設定がシンプル: IAMユーザーを作成し、アクセスキーを登録するだけ
- 信頼関係の設定が不要: AssumeRoleの信頼ポリシー設定が不要
- 素早くセットアップ可能: PoC・検証目的なら最短で連携できる
- トラブルシュートが容易: 認証の仕組みがシンプルで問題切り分けしやすい
どちらを選ぶべきか
本番環境 or セキュリティ重視?
│
├─ Yes ──▶ 【IAMロール方式】を選択 ✅
│
└─ No(PoC・検証目的)
│
└─▶ 【IAMユーザー方式】も選択肢に
└─▶ ただし本番移行時はロール方式へ切り替え推奨
IAMユーザー方式を選ぶ場合の注意点
IAMユーザー方式を選択する場合は、以下のセキュリティ対策を実施してください。
1. 最小権限の原則
読み取り専用の必要最低限の権限のみ付与します。
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"ec2:Describe*",
"rds:Describe*",
"cloudwatch:GetMetricStatistics",
"cloudwatch:ListMetrics"
],
"Resource": "*"
}
]
}
2. アクセスキーの定期ローテーション
90日以内での定期的なキー更新を運用ルールとして定めましょう。
3. 接続元IPの制限
IAMポリシーで接続元IPアドレス(TurbonomicのEC2)を制限します。
{
"Condition": {
"IpAddress": {
"aws:SourceIp": "10.0.1.100/32"
}
}
}
まとめ
| ユースケース | 推奨方式 |
|---|---|
| 本番環境 | IAMロール方式 ✅ |
| セキュリティ要件が厳格 | IAMロール方式 ✅ |
| マルチアカウント環境 | IAMロール方式 ✅ |
| PoC・検証目的 | IAMユーザー方式も可 |
基本的にはIAMロール方式を選択するのが良いです。 セキュリティ面で優位であり、AWSのベストプラクティスにも準拠しています。