EventBridgeを使用してWorkSpacesログインイベントのログを記録してみた。

2022.08.31

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

概要

この記事では、EventBridgeを使用してWorkSpacesログインイベントのログを記録してみました。ここでは、WorkSpaces へのログイン時に Lambda 関数を呼び出す EventBridge ルールを作成しました。Lambda関数は、イベントをCloudWatch Logsに記録します。

作成するリソース:

  • Directory Service
  • AWS WorkSpaces
  • Lambda 関数
  • EventBridge ルール

 

やってみた

前提条件

 

AD Connector

 

WorkSpaces

 

Lambda 関数の作成

  • 関数名を入力して、Runtimeで Node.js 16.x を選択して、Lambda 関数を作成しておきます。

 

 

  • 既存のLambdaコードを次のコードに置き換えます。
exports.handler = (event, context, callback) => {
    console.log('LogWorkSpacesLoginEvents');
    console.log('Event:', JSON.stringify(event, null, 2));
    callback(null, 'Finished');
};

 

EventBridge ルールの作成

  • EventBridge コンソールのナビゲーションペインで [Rules] を選択しておきます。
  • [Create rule]をクリックしておきます。
  • ルール名を入力し、[Rule with an event pattern]としてルールタイプを選択しておきます。

 

 

  • 次の設定でイベントパターンを定義しておきます。
    • Event source : AWS services
    • AWS service : WorkSpaces
    • Event type : WorkSpaces Access

 

 

  • ターゲットの詳細を入力しておきます。
    • Target types: AWS service
    • Target : Lambda Function
    • Function: 以前に作成したLambda関数を選択しておきます。

 

 

テストする

  • WorkSpaces にログインすると、Lambda 関数がイベントをログに記録します。

 

  • CloudWatch Logsで、イベントがログに記録されていることを確認できます。

 

まとめ

EventBridgeを使用してWorkSpacesログインイベントのログを記録してみました。イベント タイプが[All Events]および[AWS API Call via CloudTrail]で、WorkSpaces の EventBridge ルールを作成することもできます。

Reference :  WorkSpaces Login Events