Google フォームを Google SecOps と統合する

このドキュメントでは、Google フォームを Google Security Operations(Google SecOps)と統合する方法について説明します。

統合バージョン: 1.0

始める前に

Google SecOps で Google フォームの統合を構成する前に、次の前提条件の手順を完了します。

  1. サービス アカウントを作成します
  2. JSON キーを作成します
  3. プロジェクトに必要な API を有効にします
  4. 統合用のカスタムロールを作成します
  5. カスタムロールをユーザーに割り当てます
  6. ドメイン全体の権限をサービス アカウントに委任する

サービス アカウントを作成する

サービス アカウントを作成するには、次の操作を行います。

  1. Google Cloud コンソールで、[認証情報] ページに移動します。

    [認証情報] に移動

  2. [add_2認証情報を作成> サービス アカウント] を選択します。

  3. [サービス アカウントの詳細] で、[サービス アカウント名] フィールドに名前を入力します。

  4. 省略可: サービス アカウント ID を編集します。

  5. [完了] をクリックします。

JSON キーを作成する

JSON キーを作成する手順は次のとおりです。

  1. サービス アカウントを選択して、[キー] に移動します。
  2. [鍵を追加] > [新しい鍵を作成] の順にクリックします。
  3. キーのタイプは、JSON を選択し、[作成] をクリックします。[秘密鍵がパソコンに保存されました] ダイアログが表示され、秘密鍵のコピーがパソコンにダウンロードされます。

プロジェクトに必要な API を有効にする

  1. Google Cloud コンソールで、[API とサービス] に移動します。

    [API とサービス] に移動

  2. [API とサービスの有効化] をクリックします。

  3. プロジェクトで次の API を有効にします。

    • Admin SDK API
    • Google Forms API

統合用のカスタムロールを作成する

  1. Google 管理コンソールで、[アカウント] > [管理者ロール] に移動します。
  2. [新しいロールを作成] をクリックします。
  3. 新しいカスタムロールの名前を指定して、[続行] をクリックします。
  4. [権限の選択] ページで、[Admin API] 権限セクションに移動します。
  5. [Admin API 権限] で、次の権限を選択します。

    • 組織部門
    • ユーザー
    • グループ
  6. [続行] をクリックします。

  7. 新しいカスタムロールを作成するには、[ロールを作成] をクリックします。

カスタムの役割をユーザーに割り当てる

  1. 新しいユーザーを作成するには、[ディレクトリ> ユーザー] ページに移動します。
  2. サービス アカウントに関連付けられた新しいユーザーを追加します。
  3. 新しく作成したユーザーの設定を開きます。ユーザー アカウントのタブが開きます。
  4. [管理者ロールと権限] をクリックします。
  5. [編集] 編集をクリックします。
  6. 作成したカスタムロールを選択します。
  7. 選択したロールの切り替えを [割り当て済み] に切り替えます。

ドメイン全体の権限をサービス アカウントに委任する

  1. ドメインの Google 管理コンソールから、 メインメニュー > [セキュリティ] > [アクセスとデータ管理] > [API の制御] に移動します。
  2. [ドメイン全体の委任] ペインで、[ドメイン全体の委任を管理] を選択します。
  3. [新しく追加] をクリックします。
  4. [クライアント ID] フィールドに、前のサービス アカウントの作成手順で取得したクライアント ID を入力します。
  5. [OAuth スコープ] フィールドに、アプリケーションに必要なスコープのカンマ区切りリストを入力します。

    https://mail.google.com/,
    https://www.googleapis.com/auth/admin.directory.customer.readonly,
    https://www.googleapis.com/auth/admin.directory.domain.readonly,
    https://www.googleapis.com/auth/admin.directory.group,
    https://www.googleapis.com/auth/admin.directory.group.member,
    https://www.googleapis.com/auth/admin.directory.orgunit,
    https://www.googleapis.com/auth/admin.directory.rolemanagement.readonly,
    https://www.googleapis.com/auth/admin.directory.user,
    https://www.googleapis.com/auth/admin.directory.user.alias,
    https://www.googleapis.com/auth/apps.groups.settings,
    https://www.googleapis.com/auth/cloud-platform,
    https://www.googleapis.com/auth/forms.body.readonly,
    https://www.googleapis.com/auth/forms.responses.readonly
    
  6. [承認] をクリックします。

統合のパラメータ

Google フォームの統合には、次のパラメータが必要です。

パラメータ 説明
Delegated Email 必須

権限借用とアクセス制御に使用するメールアドレス。

Service Account JSON 必須

サービス アカウント キーの JSON ファイルの内容。

Verify SSL 必須

選択すると、統合によって Google フォームへの接続用の SSL 証明書が有効かどうかが検証されます。

デフォルトで選択されています。

Google SecOps で統合を構成する手順については、統合を構成するをご覧ください。

必要に応じて、後の段階で変更できます。統合インスタンスを構成すると、ハンドブックで使用できるようになります。複数のインスタンスの構成とサポートの詳細については、複数のインスタンスのサポートをご覧ください。

操作

アクションについて詳しくは、デスクから保留中のアクションに対応する手動アクションを実行するをご覧ください。

Ping

Ping アクションを使用して、Google フォームへの接続をテストします。

このアクションは Google SecOps エンティティに対しては実行されません。

アクション入力

なし

アクションの出力

[Ping] アクションでは、次の出力が提供されます。

アクションの出力タイプ 対象
ケースウォールのアタッチメント 利用不可
ケースウォールのリンク 利用不可
ケースウォール テーブル 利用不可
拡充テーブル 利用不可
JSON の結果 利用不可
出力メッセージ 利用可能
スクリプトの結果 利用可能
出力メッセージ

Ping アクションは、次の出力メッセージを返すことができます。

出力メッセージ メッセージの説明
Successfully connected to the Google Forms server with the provided connection parameters! アクションが成功しました。
Failed to connect to the Google Forms server! Error is ERROR_REASON

操作に失敗しました。

サーバーへの接続、入力パラメータ、または認証情報を確認してください。

スクリプトの結果

次の表に、Ping アクションを使用した場合のスクリプト結果出力の値を示します。

スクリプトの結果名
is_success True または False

コネクタ

Google SecOps でコネクタを構成する手順については、データを取り込む(コネクタ)をご覧ください。

Google フォーム - 回答コネクタ

Google フォーム - 回答コネクタを使用して、Google フォームから回答を取得します。

Google フォーム - 回答コネクタには、次のパラメータが必要です。

パラメータ 説明
Product Field Name 必須

商品名が保存されるフィールドの名前。

デフォルト値は Product Name です。

Event Field Name 必須

イベント名(サブタイプ)を特定するために使用されるフィールド名。

デフォルト値は event_type です。

Environment Field Name 省略可

環境名が保存されるフィールドの名前。

環境フィールドが見つからない場合、環境はデフォルトの環境に設定されます。

デフォルト値は "" です。

Environment Regex Pattern 省略可

Environment Field Name フィールドで見つかった値に対して実行する正規表現パターン。このパラメータを使用すると、正規表現ロジックを使用して環境フィールドを操作できます。

デフォルト値 .* を使用して、必要な未加工の Environment Field Name 値を取得します。

正規表現パターンが null か空の場合、または環境値が null の場合、最終的な環境の結果はデフォルト環境になります。

Script Timeout (Seconds) 必須

現在のスクリプトを実行している Python プロセスのタイムアウト上限(秒単位)。

デフォルト値は 300 秒です。

Delegated Email 必須

権限借用とアクセス制御に使用するメールアドレス。

Service Account JSON 必須

サービス アカウント キーの JSON ファイルの内容。

Form IDs To Track 必須

回答を追跡する Google フォーム ID のカンマ区切りのリスト。

フォームの一意の ID を取得するには、フォーム エディタ(一般公開されている回答リンクではない)でフォームを開き、ブラウザのバーに表示される完全なアドレスの /d//edit の間にある文字列をコピーします。

Alert Severity Optional

取り込まれた Google フォームの回答に基づいてコネクタが作成するすべてのアラートに割り当てる重大度レベル。

値は次のいずれかになります。

  • Informational
  • Low
  • Medium
  • High
  • Critical

デフォルト値は Low です。

Max Hours Backwards 必須

最初のコネクタ イテレーションの何時間前からレスポンスを取得するか。このパラメータは、コネクタを初めて有効にした後の最初のコネクタ イテレーション、または期限切れのコネクタ タイムスタンプのフォールバック値に適用されます。

デフォルト値は 1 時間です。

Max Responses To Fetch 必須

コネクタのイテレーションごとに処理するレスポンスの最大数。

最大数は 100 です。

Disable Overflow Optional

選択すると、アラートの作成時に Google SecOps のオーバーフロー メカニズムが無視されます。

デフォルトでは選択されていません。

Verify SSL 必須

選択すると、統合によって Google フォームへの接続用の SSL 証明書が有効かどうかが検証されます。

デフォルトでは選択されていません。

Proxy Server Address Optional

使用するプロキシ サーバーのアドレス。

Proxy Username Optional

認証に使用するプロキシのユーザー名。

Proxy Password Optional

認証に使用するプロキシ パスワード。

コネクタルール

Google フォーム - 回答コネクタはプロキシをサポートしています。

コネクタ イベント

次の例は、Google フォーム - 回答コネクタが生成した Google SecOps イベントの JSON 出力です。

{
   "responseId": "RESPONSE_ID",
   "createTime": "2024-09-05T11:43:13.892Z",
   "lastSubmittedTime": "2024-09-05T11:43:13.892123Z",
   "event_type": "Question",
   "questionId": "78099fe3",
   "textAnswers": {
       "answers": [
           {
               "value": "Option 1"
           }
       ]
   }
}

さらにサポートが必要な場合 コミュニティ メンバーや Google SecOps のプロフェッショナルから回答を得ることができます。