仮想通貨ブログに専念するため、たまーに更新します!仮想通貨ブログはこちら!

【aws-sdk】EC2インスタンスのプロファイル情報を取得する方法

  • URLをコピーしました!
いずみん

EC2インスタンスのプロファイル情報をaws-sdkで取得するのってどうやるのかな??
できれば具体的なソースコードも欲しいんだけど。。

こんな悩みを解決します。

  • 本記事の内容
  • 認証情報を取得する方法
  • IAMロールを利用する理由
  • aws-sdkでプロファイル情報を取得する方法
  • プロファイル情報を取得する具体的なソースコード
  • 本記事の執筆者
いずみん(@izumin_0401)

今回は、aws-sdkを使用してEC2のインスタンスプロファイル情報を取得してみます。

いずみん

すぐ読み終わるので、是非最後まで読んでみてください!

プログラミングを学びたい方必見!

オンライン特化のプログラミングスクールなら「」が超おススメ!

副業としてプログラミングを学びたい方にもおすすめのスクールです!

  • 初心者が9割以上なので挫折せずに学べる!
  • 受講者に副業の仕事を1案件以上斡旋! ※条件あり
  • オンライン完結型なので、在宅でもお仕事可!
  • プロのメンターがサポートしてくれる!

キャリアカウンセリングメンター相談無料でできるのもおすすめポイントです!

目次

前提

  • EC2にIAMロールが付与されていること
  • ライブラリ「aws-sdk」がインストールされていること

認証情報を取得する方法

AWSの認証情報を取得する方法はいくつかあります。

例えば、IAMユーザのアクセスキーを利用する方法や、今回のようにIAMロール権限を利用する方法です。

  • IAMユーザのアクセスキー・シークレットキーを利用する
  • EC2のIAMロール権限を利用する

セキュリティを考慮すると、IAMロール権限を利用するのがベストです。これに関しては後述します。

なぜIAMロールを利用するのか?

悩んでいる男の子

なんでIAMロールを利用する必要があるの?

例えば、IAMユーザのアクセスキーなどを利用する場合、キー情報をコード上で保持しなくてはなりません

仮にIAMユーザが最強の権限を持っていたとして、このキーが漏洩した場合、このキー情報を取得した人は何でもできてしまいます。

つまり、セキュリティ的に非常に危険ということです。

IAMロールは、言ってしまえばただの権限の集まりにすぎず、コード上にキー情報を持つ必要もありません。

いずみん

IAMロールを利用するのは、セキュリティ的に安全だからですね。

IAMロール権限を取得する方法

IAMロール権限を取得するには、「EC2に付与されたIAMロール権限を取得する」必要があります。

EC2ではこの情報を「インスタンスプロファイル」というファイルに保持しています。

つまり、インスタンスプロファイルから認証情報を取得できれば、その認証情報を用いてAWSのサービスを利用することができるわけです。

PHPでインスタンスプロファイル情報を取得する方法

今回はPHPで実装をしてみました。

<?php

namespace App\Facades;

use Config;
use Aws\Credentials\CredentialProvider;

/**
* AwsCredentials
*
* @SuppressWarnings(PHPMD.StaticAccess)
*
* @author K.Izumi
*/
class AwsCredentials
{
   /**
    * AWS認証情報を取得する
    *
    * NOTE:EC2のインスタンスプロファイルからIAMロールの権限を取得する
    *      IAMロールにはCognito処理にて使用するポリシーがアタッチされていること
    *
    * @return any AWS認証情報
    */
   public function get()
   {
       $profile    = CredentialProvider::instanceProfile();
       $promise    = $profile();
       $credential = $promise->wait();
       return $credential;
   }
}

上記のソースコードで、EC2のインスタンスプロファイル情報を取得することができます。

まとめ

今回は、aws-sdkを使用してEC2のインスタンスプロファイル情報を取得してみました。

分かってしまえば意外と簡単ですね。

ではまた!

  • 自由な生き方がしたいなら!

自由な生き方をするためには、稼ぐスキルを身に付けなければなりません。

当サイト「リバトレ」では稼ぐスキルに関する情報を日々発信しているので、興味のあるものから見て頂ければ嬉しいです。

稼ぐスキルを身に付けよう!!
SNSもフォローしてね!

この記事が気に入ったら
いいね または フォローしてね!

シェアするんやで!
  • URLをコピーしました!
  • URLをコピーしました!
目次