PagerDuty アクセス認証情報を AWS Secrets Manager シークレットに保存する - Incident Manager

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

PagerDuty アクセス認証情報を AWS Secrets Manager シークレットに保存する

Incident Manager は、レスポンスプラン PagerDuty の との統合を有効にすると、次の方法で PagerDuty と連携します。

  • Incident Manager は、Incident Manager で新しいインシデントを作成する PagerDuty ときに、 で対応するインシデントを作成します。

  • で作成したページングワークフローとエスカレーションポリシー PagerDuty は、 PagerDuty 環境で使用されます。ただし、Incident Manager は PagerDuty 設定をインポートしません。

  • Incident Manager は PagerDuty、タイムラインイベントを、最大 2,000 個のメモを含む のインシデントへのメモとして発行します。

  • Incident Manager で関連する PagerDuty インシデントを解決するときに、インシデントを自動的に解決することを選択できます。

Incident Manager を と統合するには PagerDuty、まず PagerDuty 認証情報 AWS Secrets Manager を含むシークレットを に作成する必要があります。これにより、Incident Manager はサービスと通信できます PagerDuty。その後、Incident Manager で作成したレスポンスプランに PagerDuty サービスを含めることができます。

Secrets Manager で作成するこのシークレットには、適切なJSON形式で以下が含まれている必要があります。

  • PagerDuty アカウントからのAPIキー。一般アクセスRESTAPIキーまたはユーザートークンRESTAPIキーを使用できます。

  • PagerDuty サブドメインからの有効なユーザーの E メールアドレス。

  • サブドメインをデプロイした PagerDuty サービスリージョン。

    注記

    PagerDuty サブドメイン内のすべてのサービスは、同じサービスリージョンにデプロイされます。

前提条件

Secrets Manager でシークレットを作成する前に、次の要件を満たしていることを確認してください。

KMS キー

() で作成したカスタマーマネージドキーを使用して、作成したシークレットを暗号化する必要があります AWS Key Management Service AWS KMS。このキーは、 PagerDuty 認証情報を保存するシークレットを作成するときに指定します。

重要

Secrets Manager には、 でシークレットを暗号化するオプションがありますが AWS マネージドキー、この暗号化モードはサポートされていません。

カスタマーマネージドキーは次の要件を満たしている必要があります。

  • [キーのタイプ]: [対称] を選択します。

  • [キーの使用法]: [暗号化および復号化] を選択します。

  • リージョン: レスポンスプランを複数の にレプリケートする場合は AWS リージョン、必ずマルチリージョンキー を選択してください。

     

キーポリシー

対応計画を設定するユーザーには、キーのリソースベースのポリシーの kms:GenerateDataKey および kms:Decrypt に対するアクセス許可が必要です。ssm-incidents.amazonaws.com サービスプリンシパルには、キーのリソースベースポリシーの kms:GenerateDataKey および kms:Decrypt に対するアクセス許可が必要です。

次のポリシーは、これらのアクセス許可を示しています。各 を置き換える user input placeholder 独自の情報。

{ "Version": "2012-10-17", "Id": "key-consolepolicy-3", "Statement": [ { "Sid": "Enable IAM user permissions", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::account-id:root" }, "Action": "kms:*", "Resource": "*" }, { "Sid": "Allow creator of response plan to use the key", "Effect": "Allow", "Principal": { "AWS": "IAM_ARN_of_principal_creating_response_plan" }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey*" ], "Resource": "*" }, { "Sid": "Allow Incident Manager to use the key", "Effect": "Allow", "Principal": { "Service": "ssm-incidents.amazonaws.com" }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey*" ], "Resource": "*" } ] }

新しいカスタマーマネージドキーの作成については、「 AWS Key Management Service デベロッパーガイド」の「対称暗号化KMSキーの作成」を参照してください。 AWS KMS キーの詳細については、AWS KMS 「 の概念」を参照してください。

既存のカスタマーマネージドキーが上記の要件をすべて満たしている場合は、ポリシーを編集してこれらのアクセス許可を追加できます。カスタマーマネージドキーのポリシーの更新については、「AWS Key Management Service デベロッパーガイド」の「キーポリシーの変更」を参照してください。

ヒント

条件キーを指定してアクセスをさらに制限できます。例えば、次のポリシーでは、米国東部 (オハイオ) リージョン (us-east-2) でのみ Secrets Manager からのアクセスを許可します。

{ "Sid": "Enable IM Permissions", "Effect": "Allow", "Principal": { "Service": "ssm-incidents.amazonaws.com" }, "Action": ["kms:Decrypt", "kms:GenerateDataKey*"], "Resource": "*", "Condition": { "StringEquals": { "kms:ViaService": "secretsmanager.us-east-2.amazonaws.com" } } }
GetSecretValue アクセス許可

レスポンスプランを作成する IAM ID (ユーザー、ロール、またはグループ) には、 アクセスIAM許可 が必要ですsecretsmanager:GetSecretValue

PagerDuty アクセス認証情報を AWS Secrets Manager シークレットに保存するには
  1. 「 ユーザーガイド」のAWS Secrets Manager 「シークレットの作成」の「ステップ 3a」の手順に従います。 AWS Secrets Manager

  2. ステップ 3bの [キーと値のペア] で、次の操作を行います。

    • [プレーンテキスト] タブを選択します。

    • ボックスのデフォルトの内容を次のJSON構造に置き換えます。

      { "pagerDutyToken": "pagerduty-token", "pagerDutyServiceRegion": "pagerduty-region", "pagerDutyFromEmail": "pagerduty-email" }
    • 貼り付けたJSONサンプルで、placeholder values 以下のように設定します。

      • pagerduty-token: PagerDuty アカウントからの一般アクセスRESTAPIキーまたはユーザートークンRESTAPIキーの値。

        関連情報については、PagerDuty ナレッジベースAPI「アクセスキー」を参照してください。

      • pagerduty-region: PagerDuty サブドメインをホストする PagerDuty データセンターのサービスリージョン。

        関連情報については、PagerDuty ナレッジベースの「サービスリージョン」を参照してください。

      • pagerduty-email: PagerDuty サブドメインに属するユーザーの有効な E メールアドレス。

        関連情報については、ナレッジベース の「ユーザーを管理する」を参照してください。 PagerDuty

      次の例は、必要な PagerDuty認証情報を含む完了したJSONシークレットを示しています。

      { "pagerDutyToken": "y_NbAkKc66ryYEXAMPLE", "pagerDutyServiceRegion": "US", "pagerDutyFromEmail": "JohnDoe@example.com" }
  3. ステップ 3c の [暗号化キー] で、前の「前提条件」セクションに記載されている要件を満たす、作成したカスタマーマネージドキーを選択します。

  4. ステップ 4c の [リソースのアクセス許可] で、次の操作を行います。

    • [リソースのアクセス許可] を展開します。

    • [アクセス許可の編集] を選択します。

    • ポリシーボックスのデフォルトの内容を次のJSON構造に置き換えます。

      { "Effect": "Allow", "Principal": { "Service": "ssm-incidents.amazonaws.com" }, "Action": "secretsmanager:GetSecretValue", "Resource": "*" }
    • [Save] を選択します。

  5. 対応計画を複数の AWS リージョンに複製した場合は、ステップ 4d の [シークレットをレプリケート] で次の操作を行います。

    • [シークレットをレプリケート] を展開します。

    • AWS リージョン で、対応計画を複製したリージョンを選択します。

    • [暗号化キー] には、「前提条件」セクションの下に記載されている要件を満たす、このリージョンで作成した、またはこのリージョンに複製したカスタマーマネージドキーを選択します。

    • 追加の ごとに AWS リージョン、リージョンの追加を選択し、リージョン名とカスタマーマネージドキーを選択します。

  6. AWS Secrets Manager 「 ユーザーガイド」のAWS Secrets Manager 「シークレットを作成する」の残りのステップを完了します。

Incident Manager インシデントワークフローに PagerDuty サービスを追加する方法については、「」トピックの PagerDuty 「サービスをレスポンスプランに統合する」を参照してください対応計画の作成

関連情報

PagerDuty および ( オペレーションと移行ブログ) を使用してインシデント対応を自動化する方法 AWS Systems Manager Incident ManagerAWS クラウド

「AWS Secrets Manager ユーザーガイド」の「AWS Secrets Managerのシークレット暗号化と復号