Parameter Store イベントに基づき、通知を設定またはアクションをトリガーする - AWS Systems Manager

Parameter Store イベントに基づき、通知を設定またはアクションをトリガーする

このセクションのトピックでは、Amazon EventBridge および Amazon Simple Notification Service (Amazon SNS) を使用して、AWS Systems Manager のパラメータに変更があったことの通知を受け取る方法について説明します。パラメータまたはパラメータラベルのバージョンが作成、更新、または削除されたときに通知する EventBridge ルールを作成できます。イベントは、ベストエフォートベースで出力されます。パラメータの有効期限切れ、期限切れ間近、または指定された期間中に変更されていないなど、パラメータポリシーに関する変更またはステータスに関する通知を受信することができます。

注記

パラメータポリシーは、高度なパラメータ階層を使用するパラメータに利用できます。料金が適用されます。詳細については、「パラメータポリシーの割り当て」および「パラメータ層の管理」を参照してください。

本セクションのトピックでは、特定のパラメータイベントに対してターゲット上で他のアクションを開始する方法も説明しています。たとえば、有効期限が切れたか、削除された場合に、そのパラメータを自動的に再作成する AWS Lambda 関数を実行することができます。また、データベースパスワードが更新された際に Lambda 関数を起動する通知をセットアップすることもできます。Lambda 関数は、データベース接続のリセットまたは新しいパスワードでの再接続を強制できます。EventBridge は、Run Command コマンドの実行と Automation の実行、およびその他多くの AWS のサービスでのアクションもサポートしています。Run Command と Automation はどちらも AWS Systems Manager の機能です。詳細については、「Amazon EventBridge ユーザーガイド」を参照してください。

開始する前に

作成したルールのターゲットアクションを指定するために必要なリソースを作成します。例えば、作成したルールが通知の送信用である場合は、まず Amazon SNS トピックを作成します。詳細については、Amazon Simple Notification Service デベロッパーガイドの「Amazon SNS の使用開始」を参照してください。

パラメータ用の EventBridge を設定する

このトピックでは、 の 1 つ以上のパラメータに発生したイベントに基づき、ターゲットを呼び出す EventBridge ルールを作成する方法について説明します AWS アカウント

Systems Manager 用に EventBridge パラメータを設定するには

  1. Amazon EventBridge コンソール (https://console.aws.amazon.com/events/) を開きます。

  2. ナビゲーションペインで、[Rules (ルール)] を選択し、[Create rule (ルールの作成)] を選択します。

    -または-

    EventBridge ホームページが最初に開く場合は、[Create rule ( ルールの作成)] を選択します。

  3. ルールの名前と説明を入力します。

    ルールには、同じリージョン内および同じイベントバス上の別のルールと同じ名前を付けることはできません。

  4. [Define pattern (パターンの定義)] で、[Event pattern (イベントパターン)] を選択します。

  5. [イベントマッチングパターン] で、[カスタムパターン] を選択します。

  6. [イベントパターン] の場合、ボックスに次の内容を貼り付けます。

    { "source": [ "aws.ssm" ], "detail-type": [ "Parameter Store Change" ], "detail": { "name": [ "parameter-1-name", "/parameter-2-name/level-2", "/parameter-3-name/level-2/level-3" ], "operation": [ "Create", "Update", "Delete", "LabelParameterVersion" ] } }
  7. アクションを行うパラメータやオペレーションの内容を変更します。

    たとえば、以下の内容は、Oncall/Project/Teamlead という名前のいずれかのパラメータが更新されるとアクションが行われることを意味します。

    { "source": [ "aws.ssm" ], "detail-type": [ "Parameter Store Change" ], "detail": { "name": [ "/Oncall", "/Project/Teamlead" ], "operation": [ "Update" ] } }
  8. [Save] を選択します。

  9. [Select event bus (イベントバスの選択)] で、このルールに関連付けるイベントバスを選択します。このルールを自分の AWS アカウント から一致するイベントで開始する場合は、[AWS default event bus] を選択します。アカウントの AWS サービスがイベントを発行すると、常にアカウントのデフォルトのイベントバスに移動します。

  10. [ターゲットの選択] で、ターゲットタイプとサポートされているリソースを選択します。たとえば、[SNS トピック] を選択した場合は、[トピック] に対して選択を行います。[CodePipeline] を選択した場合は、[パイプライン ARN] を選択します。

  11. [入力の設定] を展開し、オプションを選択します。次に、選択したターゲットタイプに必要なその他の設定詳細を入力します。

  12. (オプション) ルールに1 つ以上のタグを入力します。詳細については、Amazon EventBridge ユーザーガイドの「Amazon EventBridge リソースのタグ付け」を参照してください 。

  13. [Create] を選択します。

パラメータポリシー用の EventBridge を設定する

このトピックでは、 の 1 つ以上のパラメータポリシーに発生したイベントに基づき、ターゲットを呼び出す EventBridge ルールを作成する方法について説明します AWS アカウント 詳細パラメータを作成する際、パラメータの失効日、パラメータの有効期限の失効前に通知を受信するタイミング、パラメータが変更されていないことを示す通知を送信するまでの時間を指定します。次の手順を使用して、これらのイベントの通知を設定します。詳細については、「パラメータポリシーの割り当て」および「パラメータ層の管理」を参照してください。

Systems Manager パラメータポリシー用に EventBridge を設定するには

  1. Amazon EventBridge コンソール (https://console.aws.amazon.com/events/) を開きます。

  2. ナビゲーションペインで、[Rules (ルール)] を選択し、[Create rule (ルールの作成)] を選択します。

    -または-

    Amazon EventBridge ホームページが最初に開く場合は、[ルールの作成] を選択します。

  3. ルールの名前と説明を入力します。

    ルールには、同じリージョン内および同じイベントバス上の別のルールと同じ名前を付けることはできません。

  4. [Define pattern (パターンの定義)] で、[Event pattern (イベントパターン)] を選択します。

  5. [イベントマッチングパターン] で、[カスタムパターン] を選択します。

  6. [イベントパターン] の場合、ボックスに次の内容を貼り付けます。

    { "source": [ "aws.ssm" ], "detail-type": [ "Parameter Store Policy Action" ], "detail": { "parameter-name": [ "parameter-1-name", "/parameter-2-name/level-2", "/parameter-3-name/level-2/level-3" ], "policy-type": [ "Expiration", "ExpirationNotification", "NoChangeNotification" ] } }
  7. アクションを行うパラメータやポリシータイプの内容を変更します。たとえば、以下の内容は、OncallDuties という名前のパラメータが失効し、削除された場合にアクションが行われることを意味します。

    { "source": [ "aws.ssm" ], "detail-type": [ "Parameter Store Policy Action" ], "detail": { "parameter-name": [ "/OncallDuties" ], "policy-type": [ "Expiration" ] } }
  8. [Save] を選択します。

  9. [Select event bus (イベントバスの選択)] で、このルールに関連付けるイベントバスを選択します。このルールを自分の AWS アカウント から一致するイベントで開始する場合は、[AWS default event bus] を選択します。アカウントの AWS サービスがイベントを発行すると、常にアカウントのデフォルトのイベントバスに移動します。

  10. [ターゲットの選択] で、ターゲットタイプとサポートされているリソースを選択します。たとえば、[SNS トピック] を選択した場合は、[トピック] に対して選択を行います。[CodePipeline] を選択した場合は、[パイプライン ARN] を選択します。

  11. [入力の設定] を展開し、オプションを選択します。次に、選択したターゲットタイプに必要なその他の設定詳細を入力します。

  12. (オプション) ルールに1 つ以上のタグを入力します。詳細については、Amazon EventBridge ユーザーガイドの「Amazon EventBridge リソースのタグ付け」を参照してください 。

  13. [Create] を選択します。

関連情報