AWS EC2でSecrets Managerの権限エラーを解決する方法

aws-ec2-secrets-manager-error
  • URLをコピーしました!

AWS EC2RDSPostgreSQLを連携してビューを作成しようとした際に、次のエラーが発生した場合の解決策を紹介します。

目次

問題の原因

このエラーは、EC2のロールに「Secrets Managerからシークレットを取得する権限」が付与されていないことが原因です。
これにより、必要なデータを取得できず、その結果プログラム内でエラーが発生しています。

解決策

IAMロールの確認

一番初めに、EC2インスタンスに付与されているIAMロールを確認します。
下記の手順で確認できます。

  1. AWSマネジメントコンソールにログイン
  2. IAMダッシュボードに移動
  3. 相当するロールを選択
  4. 「Permissions」タブで「Secrets Managerの権限」が付与されているかを確認

ポリシーの追加

Secrets Managerの権限がない場合、「許可を編集」をクリックし、下記のポリシーを追加します。

ARNは、実際のSecrets ManagerシークレットのARNに置き換えてください。

Secrets Managerからの取得コード

権限設定を確認したら、Secrets Managerからシークレットを取得する部分を確認します。
以下はNode.jsのコード例です。

このコードを使用することで、Secrets Managerからシークレットを取得できます。

まとめ

この記事では、AWS EC2インスタンスからSecrets Managerエラーを解決する手順を紹介しました。
エラーの原因を求めるだけではなく、実際のコードや権限設定に関する解説も含めています。
問題解決の参考になれば幸いです。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

CAPTCHA


目次