概要
Lambdaでデータベースプロキシが勝手に付与される現象が発生したので、調査してみました。
結論
Lambdaの実行ロールにRDSプロキシ関連のポリシーが含まれていると、勝手に付与されるようです。
検証内容
1. 準備
RDSプロキシ
事前にRDSプロキシを作成しておきます。
作成時にIAMロールを作成するように設定をします。
RDSプロキシ作成後にIAMロールが自動で作成されます。
Lambda
適当にLambdaを新規作成します。
2. 検証結果
Lambdaの実行ロールにRDSプロキシ関連のポリシーが含まれている場合
RDSプロキシ関連のポリシーが含まれている実行ロールに変更してみます。
ロールにRDSプロキシ関連のポリシーがあることが分かります。
この場合、勝手にLambdaにデータベースプロキシが付与されます。
Lambdaの実行ロールにRDSプロキシ関連のポリシーが含まれない場合
RDSプロキシ関連のポリシーが含まれていない実行ロールに変更してみます。
ポリシーにデータベースプロキシ関連のポリシーが含まれていないことが分かります。
この場合、先ほど付与されたLambdaのデータベースプロキシの設定が外れていることを確認しました。
まとめ
Lambdaでデータベースプロキシが勝手に付与される現象が発生したので、調査しました。
公式のドキュメントなどで確認はできませんでしたが、アクセス権限にデータベースプロキシ関連のポリシーが含まれる場合に勝手に付与されるようでした。
色々なワードでググっても出てこなかったので、同じような事象が発生した人に参考になれば幸いです。