目次
なぜRDSの権限も絞るの?
前回はS3の権限を charakatsu-media バケットだけに絞りました。今回はRDSの権限も同じように最小権限に見直します。
あわせて読みたい


AWSのIAMロールを最小権限に絞る方法【S3バケット単位で制限する】
AWSのEC2インスタンスにはIAMロールをアタッチして、S3などのサービスへのアクセス権限を与えることができます。 ただし最初に設定した AmazonS3FullAccess は「全部のS…
EC2からRDSに対してやっていることは接続するだけです。なのに AmazonRDSFullAccess がついていると、RDSの削除や設定変更まで「できる」状態になっています。
使わない権限は持たない。これが最小権限の原則です。
今回やったこと
- RDS接続に必要な権限だけのカスタムポリシーを作成
AmazonRDSFullAccessを削除
手順① カスタムポリシーを作る
IAMコンソール →「ロール」→ EC2-S3-Backup-Role を開く。
「許可を追加」→「インラインポリシーを作成」をクリック。
「JSON」タブを選んで、既存のテキストを全部消してから以下を貼り付けます。
json
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"rds:DescribeDBInstances",
"rds:DescribeDBClusters"
],
"Resource": "*"
}
]
}
「次へ」→ポリシー名を入力します。
charakatsu-rds-policy
「ポリシーの作成」で完了!
手順② AmazonRDSFullAccessを削除する
「AmazonRDSFullAccess」の右側の「削除」→「デタッチ」で確定。
変更前・変更後の比較
| 変更前 | 変更後 |
|---|---|
| AmazonRDSFullAccess(RDS全操作) | charakatsu-rds-policy(参照のみ) |
| charakatsu-s3-policy | charakatsu-s3-policy(そのまま) |
| AmazonEC2ReadOnlyAccess | AmazonEC2ReadOnlyAccess(そのまま) |
ハマったポイント
特になし!S3のときと手順が同じなのでスムーズにできました。
まとめ
AmazonRDSFullAccessを削除してcharakatsu-rds-policyに差し替え- EC2からRDSへの接続に必要な権限だけに絞ることができた
- これでEC2-S3-Backup-Roleの権限整理が完了
次回はPolicy Simulatorを使って、設定した権限が正しく動いているか確認します。

