Amazon GameLift の IAM サービスロールをセットアップする - Amazon GameLift

Amazon GameLift の IAM サービスロールをセットアップする

一部の Amazon GameLift 機能では、所有している別の AWS リソースへの制限付きアクセスを拡張する必要があります。そのためには、AWS Identity and Access Management (IAM) ロールを作成します。IAM ロールは、特定の許可があり、アカウントで作成できるもう 1 つの IAM アイデンティティです。IAM ロールは、ID が AWS で実行できることとできないことを決定する許可ポリシーを持つ AWS ID であるという点で IAM ユーザーと似ています。ただし、ユーザーは 1 人の特定の人に一意に関連付けられますが、ロールはそれを必要とする任意の人が引き受けるようになっています。また、ロールには標準の長期認証情報 (パスワードやアクセスキーなど) も関連付けられません。代わりに、ロールを引き受けると、ロールセッション用の一時的なセキュリティ認証情報が提供されます。

このトピックでは、Amazon GameLift マネージドフリートで使用できるロールを作成する方法について説明します。Amazon GameLift FleetIQ を使用して、Amazon Elastic Compute Cloud (Amazon EC2) インスタンスで、ゲームホスティングを最適化するには、「Amazon GameLift FleetIQ 用の AWS アカウント を設定する」を参照してください。

以下の手順では、カスタムアクセス許可、および Amazon GameLift にロールの引き受けを許可する信頼ポリシーを使用してロールを作成します。

カスタム IAM ロールを作成する

ステップ 1: 許可ポリシーを作成する。

JSON ポリシーエディタでポリシーを作成するには
  1. AWS Management Console にサインインして、IAM コンソール (https://console.aws.amazon.com/iam/) を開きます。

  2. 左側のナビゲーションペインで、[ポリシー] を選択します。

    初めて [ポリシー] を選択する場合には、[管理ポリシーにようこそ] ページが表示されます。[今すぐ始める] を選択します。

  3. ページの上部で、[ポリシーを作成] を選択します。

  4. [ポリシーエディタ] セクションで、[JSON] オプションを選択します。

  5. JSON ポリシードキュメントを入力するか貼り付けます。IAM ポリシー言語の詳細については、 「IAM JSON ポリシーリファレンス」を参照してください。

  6. ポリシーの検証中に生成されたセキュリティ警告、エラー、または一般的な警告を解決してから、[Next] (次へ) を選択します。

    注記

    いつでも [Visual] と [JSON] エディタオプションを切り替えることができます。ただし、[Visual] エディタで [] に変更または選択した場合、IAM はポリシーを再構成して visual エディタに合わせて最適化することがあります。詳細については、『IAM ユーザーガイド』の「ポリシーの再構成」を参照してください。

  7. (オプション)AWS Management Console でポリシーを作成または編集するときに、AWS CloudFormation テンプレートで使用できる JSON または YAML ポリシーテンプレートを生成できます。

    これを行うには、ポリシーエディタで [アクション] を選択し、次に [CloudFormation テンプレートを生成] を選択します。AWS CloudFormation の詳細については、『AWS CloudFormation ユーザーガイド』の「AWS Identity and Access Management リソースタイプリファレンス」を参照してください。

  8. ポリシーにアクセス権限を追加し終えたら、[次へ] を選択します。

  9. [確認と作成] ページで、作成するポリシーの [ポリシー名] と [説明] (オプション) を入力します。[このポリシーで定義されているアクセス許可] を確認して、ポリシーによって付与されたアクセス許可を確認します。

  10. (オプション) タグをキー - 値のペアとしてアタッチして、メタデータをポリシーに追加します。IAM でのタグの使用に関する詳細については、『IAM ユーザーガイド』の「IAM リソースにタグを付ける」を参照してください。

  11. [Create Policy (ポリシーを作成)] をクリックして、新しいポリシーを保存します。

ステップ 2: Amazon GameLift が引き受けることができるロールを作成する。

IAM ロールを作成するには
  1. IAM コンソールのナビゲーションペインで、[ロール]、[ロールを作成] を選択します。

  2. [信頼されたエンティティを選択] ページで、[カスタム信頼ポリシー] オプションを選択します。これを選択すると、[カスタム信頼ポリシー] エディタが開きます。

  3. デフォルトの JSON 構文を次の構文に置き換え、[次へ] を選択して続行します。

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "gamelift.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
  4. [アクセス許可を追加] ページで、ステップ 1 で作成したアクセス許可ポリシーを探して選択します。[次へ] を選択して続行します。

  5. [名前、確認、および作成] ページで、作成するロールの [ポリシー名][説明] (オプション) を入力します。[信頼エンティティ][追加されたアクセス許可] を確認します。

  6. [ロールを作成] を選択して新しいロールを保存します。

アクセス許可ポリシーの構文

  • Amazon GameLift がサービスロールを引き受けるためのアクセス許可

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "gamelift.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
  • デフォルトでは有効になっていない AWS リージョンへのアクセス許可

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": [ "gamelift.amazonaws.com", "gamelift.ap-east-1.amazonaws.com", "gamelift.me-south-1.amazonaws.com", "gamelift.af-south-1.amazonaws.com", "gamelift.eu-south-1.amazonaws.com" ] }, "Action": "sts:AssumeRole" } ] }