アクセスキーを使わずにAWS S3とWordPressを連携する方法

EC2インスタンスでWordPressを動かす場合、 メディアファイルはS3に置く 。というのをよくやると思います。

その時、WordPressとS3の連携手段としてWP Offload S3 プラグインを使う場合、AWSのアクセスキーとシークレットキーを定義する必要があります。

アクセスキーの情報はちょうど↓このような具合に、wp-config.phpに記録するのですが、


define( 'AS3CF_AWS_ACCESS_KEY_ID', 'xxxxxxxxxxxxxxxxxxxxxxxxxxxx' ); define( 'AS3CF_AWS_SECRET_ACCESS_KEY', 'xxxxxxxxxxxxxxxxxxxxxxxxxxxx' );

この情報はMySQLのデータベースにも保存されるので、セキュリティ的にあまりよろしくない状態だったりします。

(EC2とS3の通信は、アクセスキーを使わずにIAMロールを使うのが推奨されています。)

 

アクセスキーを使わずにWordPressとS3を連携する方法

  1. S3にアクセスできるIAMロールの作成
  2. IAMロールをEC2にアタッチ
  3. wp-config.phpに次の行を記述します。

define( 'AS3CF_AWS_USE_EC2_IAM_ROLE', true );

さらにVPCエンドポイントを張ればAWSサービス内でトラフィックが閉じるので、セキュアな通信ができます。

しかも通信料金はかからない。

以上。終わり。

 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

*

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください