EC2 (Amazon Linux 2) に、 PHP8.0とComposer をインストーして、AWS-SDK 利用環境の構築を目指します。
(1) EC2 を起動します。
検証用なので、とりあえずの設定で起動します。
・t2.micro / Amazon Linux 2
・ログイン用のキーペアは新規で作成
・セキュリティーグループは新規作成 (SSH で接続できるようにしてくれます)
上記だけ設定入れて、EC2 を起動します。その後、ユーザー名を ec2user、キーペアで作成した鍵を利用して EC2 にログインします。
この後、以下の手順で PHP で AWS-SDK が使えるようにしていきます。
(2) php 8.0 インストール (8.2 とかは、別の方法が必要なようです)
(3) composer インストール (wget とか使ってもいいのかも)
(4) php 用の aws-sdk インストール
※CredentialProvider を利用するのに、smimplexml ライブラリがないとエラーになったので、それもインストールしておきます。
(5) AWS-SDK を利用して認証情報を作成します。
認証情報は、いくつかの仕組み(プロバイダー)で取得することができるようなのですが、今回は ini ファイルから読み取る仕組みとしたいと思います。
【参考】https://docs.aws.amazon.com/ja_jp/sdk-for-php/v3/developer-guide/guide_credentials_provider.html
credentials.ini ファイルは、以下のように記述しておきます。**** の部分は、IAM ユーザーの画面から、アクセスキーを設定したものを利用します。
※アクセスキーを使うことの是非はありそう?あと、この例では、credentials.ini を、PHP ファイルと同一フォルダに置いてますが、実際の運用ではきちんとセキュリティー的に問題の場所に置くのがよさそうです。Laravel とかだと、.env とかに書くのがいいのかな?
上記設定で、とりあえず、EC2 上から AWS-SDK を利用できるようになりましたので、AWS-SDK を色々利用してみたいと思います。