翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
ゲームセッション配置のイベン通知を設定
イベント通知を使用して、個々のプレイスメントリクエストのステータスをモニタリングできます。プレイスメントアクティビティが多いすべてのゲームにイベント通知を設定することをおすすめします。
イベント通知を設定するためには二つのオプションがあります。
-
キューを使用して Amazon Simple Notification Service (Amazon SNS) トピックに対して Amazon GameLift にイベント通知をパブリッシュさせます。
-
自動的にパブリッシュされる Amazon EventBridge イベントとイベント管理ツール一式を使用します。
Amazon GameLift から生成されるゲームセッションプレイスメントイベントのリストについては、「ゲームセッションプレイスメントイベント」を参照してください。
SNS トピックの設定
Amazon GameLift を使用して、ゲームセッションキューで生成されたすべてのイベントを 1 つのトピックにパブリッシュします。
Amazon GameLift イベント通知用 SNS トピックのセットアップ
AWS Management Console にサインインし、Amazon SNS コンソール (https://console.aws.amazon.com/sns/v3/home
) を開きます。 -
SNS [トピック] ページから [トピックを作成] を選択し、トピックを作成する手順に従います。
-
[アクセスポリシー] で、以下の作業を行います。
-
[詳細設定] 方法を選択します。
-
JSON オブジェクトの次の太字のセクションを既存のポリシーに追加します。
{ "Version": "2008-10-17", "Id": "__default_policy_ID", "Statement": [ { "Sid": "__default_statement_ID", "Effect": "Allow", "Principal": { "AWS": "*" }, "Action": [ "SNS:GetTopicAttributes", "SNS:SetTopicAttributes", "SNS:AddPermission", "SNS:RemovePermission", "SNS:DeleteTopic", "SNS:Subscribe", "SNS:ListSubscriptionsByTopic", "SNS:Publish" ], "Resource": "arn:aws:sns:
your_region
:your_account
:your_topic_name
", "Condition": { "StringEquals": { "AWS:SourceAccount": "your_account
" } } }, { "Sid": "__console_pub_0", "Effect": "Allow", "Principal": { "Service": "gamelift.amazonaws.com" }, "Action": "sns:Publish", "Resource": "arn:aws:sns:your_region
:your_account
:your_topic_name
", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:gamelift:your_region
:your_account
:gamesessionqueue/your_queue_name
" } } } ] } -
(オプション) リソースポリシーに条件を追加して、トピックにアクセス制御を追加します。
-
-
[Create topic] (トピックの作成) を選択します。
-
SNS トピックを作成したら、キューの作成時にそのトピックをキューに追加するか、既存のキューを編集して追加します。
サーバー側の暗号化を使用して SNS トピックをセットアップする
サーバー側の暗号化 (SSE) では、機密データを暗号化されたトピックに保存できます。SSE は、AWS Key Management Service (AWS KMS) のマネージドキーを使用して、Amazon SNS トピック内のメッセージの内容を保護します。Amazon SNS によるサーバー側の暗号化の詳細については、Amazon Simple Storage Service 開発者ガイドの「保管時の暗号化」を参照してください。
サーバー側の暗号化を使用して SNS トピックを設定する方法については、以下のトピックを確認してください。
-
AWS Key Management Service デベロッパーガイドの「キーの作成」。
-
Amazon Simple Notification Service 開発者ガイドの「トピックの SSE を有効にする」
KMS キーを作成するときは、次の KMS キーポリシーを使用します。
{ "Effect": "Allow", "Principal": { "Service": "gamelift.amazonaws.com" }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": "*", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:gamelift:
your_region
:your_account
:gamesessionqueue/your_queue_name
" }, "StringEquals": { "kms:EncryptionContext:aws:sns:topicArn": "arn:aws:sns:your_region
:your_account
:your_sns_topic_name
" } } }
EventBridge をセットアップする
Amazon GameLift は、すべてのゲームセッションプレイスメントイベントを EventBridge に自動的に投稿します。EventBridge を使用すると、処理するためにイベントをターゲットにルーティングするルールを設定できます。例えば、イベント PlacementFulfilled
を、ゲームセッションに接続する前のタスクを処理する AWS Lambda 関数にルーティングするルールを設定できます。Eventbridge の詳細については、Amazon EventBridge ユーザーガイドの Amazon EventBridge とはを参照してください。
Amazon GameLift キューで使用する EventBridge ルールの例を以下に示します。
Amazon GameLift のすべてのキューからのイベントにマッチします
{ "source": [ "aws.gamelift" ], "detail-type": [ "GameLift Queue Placement Event" ] }
特定のキューからのイベントに一致します
{ "source": [ "aws.gamelift" ], "detail-type": [ "GameLift Queue Placement Event" ], "resources": [ "arn:aws:gamelift:
your_region
:your_account
:gamesessionqueue/your_queue_name
" ] }