Azure API を Google SecOps と統合する

統合バージョン: 1.0

このドキュメントでは、Azure API を Google Security Operations と統合する方法について説明します。

ユースケース

Azure API のインテグレーションは、Google SecOps の機能を使用して次のユースケースをサポートします。

  • ユニバーサル Microsoft 365 調査: カスタム HTTP リクエスト機能を使用して Microsoft Graph エンドポイントをクエリし、アナリストが単一のインターフェースから Teams、SharePoint、Exchange 全体でデータを収集できるようにします。

  • カスタム インシデント修復: 専用の「ワンクリック」アクションが利用できない場合に、ターゲットを絞った POST リクエストまたは PATCH リクエストを実行して、Azure サービス内の脅威を修復し、新たな脆弱性に迅速に対応します。

  • データ取り込みの自動化: さまざまな Azure リポジトリからセキュリティ イベントと監査ログのスケジュールされた取り込みを実行して、クラウド環境の包括的な可視性を維持します。

  • 安全なマルウェア処理: 組み込みのパスワード保護された ZIP アーカイブ機能を使用して、不審なファイルを安全にダウンロードして分析します。これにより、悪意のあるコンテンツが誤って実行されるのを防ぎます。

  • 永続的な認証管理: 更新トークン更新ジョブを使用して OAuth 2.0 トークンを自動的にローテーションし、自動化されたプレイブックとハンティング ジョブが Microsoft 365 サービスへの安全なアクセスを中断することなく維持できるようにします。

始める前に

Google SecOps で統合を構成する前に、次のものが揃っていることを確認してください。

  • Microsoft Entra ID アプリケーション: API 通信を容易にするために Microsoft Entra ID ポータルに登録されたアプリケーション。

  • クライアント ID とクライアント シークレット: アプリケーション登録から生成された有効な認証情報。

  • テナント ID: Azure Active Directory インスタンスの固有識別子。

  • リダイレクト URL: 統合パラメータで指定されたリダイレクト URI と一致する、構成済みのリダイレクト URI。

  • API 権限(スコープ): クエリを実行する Azure サービスに基づいてアプリケーションに割り当てられる特定の権限。

  • 更新トークン: 永続的な委任アクセスに必要な 90 日間有効なトークン。

  • 更新トークン更新ジョブ: トークンの有効期限切れによる統合の失敗を防ぐために使用される重要なセキュリティ自動化。

Azure API 認証の設定

Azure API 統合では、2 種類の認証がサポートされています。必要な権限のセットは、特定の API リクエストとクエリする Azure サービスによって異なります。

  • アプリケーション権限: API リクエストは、Microsoft Entra ID で構成されたアプリケーションの観点から実行されます。この設定に必要なのは、クライアント ID とクライアント シークレットのみです。

  • 委任された権限: API リクエストは、権限借用が構成されている特定のユーザーに代わって実行されます。

委任認証を確立する

委任された権限を使用するには、次の手順で初期更新トークンを手動で生成する必要があります。

  1. 統合構成で Client IDClient SecretScopeRedirect URLTenant ID を指定します。

  2. Get Authorization アクションを実行します。

  3. アクションによって生成されたリンクをブラウザで開き、リダイレクトされたリンクをコピーします。

  4. リダイレクトされたリンクを トークンを生成アクションの入力として指定します。

  5. アクションから返されたトークンをコピーし、統合構成時に Refresh Token に入力します。

更新トークンの更新を構成する

初回のリフレッシュ トークンの有効期間は 90 日間です。サービスを中断しないように、更新トークン更新ジョブを構成して、統合インスタンスの更新トークンを自動的に更新します。

統合のパラメータ

Azure API 統合には次のパラメータが必要です。

パラメータ 説明
Microsoft Login API Root

必須。

Azure API 認証に使用される Microsoft ID プラットフォーム ログイン サービスの API ルート。

デフォルト値は https://login.microsoftonline.com です。

Microsoft Graph API Root

必須。

Azure API オペレーションに使用される Microsoft Graph サービスの API ルート。

デフォルト値は https://graph.microsoft.com です。

Client ID

必須。

Azure API アカウントのクライアント ID。

Client Secret

必須。

Azure API アカウントのクライアント シークレット。

Tenant ID

必須。

Azure API アカウントのテナント ID。

Refresh Token

省略可。

Azure API アカウントへの委任アクセスに使用される更新トークン。

このトークンは 90 日間有効で、初期設定で取得されます。

Verify SSL

省略可。

選択すると、統合は Azure API サーバーに接続するときに SSL 証明書を検証します。

デフォルトで有効。

Redirect URL

省略可。

Microsoft Entra ID アプリケーションに関連付けられているリダイレクト URI。

デフォルト値は http://localhost です。

Test URL

必須。

GET リクエストを使用して Azure API への認証を検証するために使用される URL。

Scopes

必須。

Azure API 認証のスコープのカンマ区切りリスト。

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

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

操作

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

HTTP リクエストを実行する

[Execute HTTP Request] アクションを使用して、ターゲット URL に対してカスタマイズされた HTTP API リクエストを構築して実行します。

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

アクションの動作

このアクションは、非同期ポーリング、動的ペイロードの構築、ファイル管理などの複雑な動作をサポートします。

非同期ポーリング

Expected Response Values が指定されている場合、アクションは非同期モードで動作します。このモードでは、アクションはターゲット エンドポイントを繰り返しポーリングして、レスポンスの状態を追跡します(長時間実行タスクが完了するのを待つなど)。

このアクションは、パラメータで指定された JSON 条件に対してレスポンスの本文を評価し、条件が満たされるか、アクションがタイムアウトに達するまで実行を続けます。

条件ロジック

このアクションは、レスポンスの状態を追跡するための次のロジックをサポートしています。

  • 単一フィールドの一致: 特定のフィールドが単一の値に達するまでアクションが待機します。

    {
      "state": "finished"
    }
    
  • 複数の値(OR 論理): 指定されたリスト内のいずれかの値とフィールドが一致した場合、アクションの実行が停止します。これは、不要なポーリングを避けるために、「成功」と「エラー」の両方の状態で停止する場合に便利です。

    {
      "state": ["finished", "error"]
    }
    
  • 複数のフィールド(AND 論理): 指定されたすべてのフィールドがそれぞれの値と同時に一致するまで、アクションは待機します。

    {
      "state": "finished",
      "percentage": "100"
    }
    
  • 組み合わせたロジック: JSON オブジェクト内で複数の条件を組み合わせることができます。

    {
      "state": ["finished", "error"],
      "percentage": "10"
    }
    
JSON 解析の動作

条件を評価する際、アクションは次のルールに従います。

  • グローバル検索: アクションは、JSON レスポンス オブジェクト全体で指定されたキーを検索します。親オブジェクト名を付加したり、接頭辞を使用したりせずに、JSON に表示されるとおりにキー名を指定します(たとえば、"data_state""data-state" ではなく "state" を使用します)。

  • 同じキーが複数ある: レスポンスに同じ名前のキーが JSON 階層の異なるレベルで複数含まれている場合、一致するすべてのキー名が同じ期待値を満たしている場合にのみ、期待される出力が得られます。

    たとえば、JSON レスポンスで finished 状態を検索し、他の状態を無視するには、Expected Response Values のすべての state キーを finished に設定します。

    {
    "data": {
      "state": "finished"
      },
      "state": "finished"
    }
    
本文ペイロードの作成

このアクションは、Headers で指定された Content-Type ヘッダーに基づいてリクエスト本文を作成します。

これは、次の構築例で使用される Body Payload 入力です。

{
  "Id": "123123",
  "sorting": "asc"
}
  • application/x-www-form-urlencoded: アクションはペイロードを Id=123123&sorting=asc として生成します。

  • application/json: このアクションは、次の JSON ペイロードを生成します。

    {
      "Id": "123123",
      "sorting": "asc"
    }
    
  • XML: サードパーティ製品で XML が必要な場合は、Body Payload で XML 形式の入力を直接指定します。

    <?xml version="1.0" encoding="utf-8"?>
    <soap:Envelope xmlns:soap="[http://schemas.xmlsoap.org/soap/envelope/](http://schemas.xmlsoap.org/soap/envelope/)">
    <soap:Body>
      <NumberToWords xmlns="[http://www.dataaccess.com/webservicesserver/](http://www.dataaccess.com/webservicesserver/)">
        <ubiNum>500</ubiNum>
      </NumberToWords>
    </soap:Body>
    </soap:Envelope>
    
ファイル処理

このアクションは、次のファイル管理ワークフローをサポートしています。

  • ファイルをダウンロードする:

    • ファイルデータを base64 形式の JSON 結果の一部として返すには、Base64 Output を選択します。

    • ファイルを ZIP アーカイブとしてケースウォールに直接保存するには、Save To Case Wall を選択します。

  • ファイルのアップロード: ファイルをアップロードするには、ファイルを base64 エンコード文字列に変換し、Body Payload 値の一部として含めます。

    次の例は、base64 でエンコードされた文字列に変換された画像ファイルを示しています。

    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
    
  • セキュリティ: 機密性の高いファイル(マルウェアなど)の場合は、Password Protect Zip を選択します。これにより、Save To Case Wall を使用して作成された保存済み ZIP アーカイブが、パスワード infected で自動的に暗号化されます。

ハンドブック ブロックの構成

次の構成は、プレイブック ブロック内で Execute HTTP Request アクションを使用する方法を示しています。この例では、プレースホルダと入力接頭辞を適用する方法について説明します。

ブロック入力をプレースホルダとして使用する場合は、Input. 接頭辞([Input.comment] など)を含める必要があります。

  • Method: PUT

  • URL パス:

    https://{API_URL}/[Input.table_name]/[Input.sys_id]
    
  • ヘッダー:

    {
      "Content-type": "application/json; charset=utf-8",
      "Accept": "application/json",
      "User-Agent": "GoogleSecops"
    }
    
  • 本文のペイロード:

    {
      "work_notes": "[Input.comment]"
    }
    

アクション入力

[Execute HTTP Request] アクションには、次のパラメータが必要です。

パラメータ 説明
Method

省略可。

リクエストに使用される HTTP メソッド(動詞)。

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

  • GET
  • POST
  • PUT
  • PATCH
  • DELETE
  • HEAD
  • OPTIONS

デフォルト値は GET です。

URL Path

必須。

リクエストが実行される API エンドポイント。このパスには、必要に応じてクエリ パラメータを含めることができます。

URL Params

省略可。

URL のクエリ パラメータ。JSON オブジェクトとして指定します。

このパラメータの入力方法としては、URL Path で定義済みのクエリ パラメータに追加されるため、この方法をおすすめします。

Headers

省略可。

JSON オブジェクトとして指定された HTTP リクエストのヘッダー。

ヘッダーは、認証などの側面を制御し、Body Payload の形式を定義します(Content-Type を使用)。

Cookie

省略可。

HTTP Cookie ヘッダーに構築された Cookie。JSON オブジェクトとして提供されます。

このパラメータは、Headers で指定された Cookie 値をオーバーライドします。

Body Payload

省略可。

HTTP リクエストのコンテンツ ペイロード。JSON オブジェクトとして指定します。

リクエストの形式(JSON または form-urlencoded)は、Headers で設定された Content-Type によって決まります。

Expected Response Values

省略可。

レスポンス本文の必要な状態を定義するフィールドと値のペアを含む JSON オブジェクト。

Save To Case Wall

省略可。

選択すると、アクションによって回答データがファイルとして保存され、ケースウォールに添付されます。

ファイルは .zip 拡張子でアーカイブされます。Password Protect Zip が有効になっていない限り、この zip はパスワードで保護されません。

Password Protect Zip

省略可。

選択すると、アクションはダウンロードされた ZIP アーカイブ(Save To Case Wall を使用して作成)をパスワード(infected など)で暗号化します。

このオプションは、疑わしいファイルや悪意のある可能性があるファイルを処理する際に、誤って実行されないようにするために使用します。

デフォルトで有効。

Follow Redirects

省略可。

選択すると、アクションは HTTP リダイレクト レスポンス(301 や 302 などのステータス コード)を自動的に最終的な宛先 URL に追跡します。

デフォルトで有効。

Fail on 4xx/5xx

省略可。

選択すると、HTTP レスポンスがクライアント エラー(4xx)またはサーバー エラー(5xx)のステータス コードを返したときに、アクションがステップを明示的に失敗させます。

デフォルトで有効。

Base64 Output

省略可。

選択すると、アクションは HTTP レスポンスの本文を Base64 でエンコードされた文字列に変換します。これは、ダウンロードしたファイルの処理や保存に便利です。

エンコードされた文字列は 15 MB を超えることはできません。

Fields To Return

必須。

アクションが出力で返すフィールドのカンマ区切りのリスト。

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

  • response_data
  • redirects
  • response_code
  • response_cookies
  • response_headers
  • apparent_encoding

デフォルト値は response_data,redirects,response_code,response_cookies,response_headers,apparent_encoding です。

Request Timeout

必須。

リクエストが中止される前に、アクションがサーバーからのデータ送信を待機する最大時間(秒単位)。

デフォルト値は 120 です。

アクションの出力

[HTTP リクエストを実行] アクションは、次の出力を提供します。

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

次の例は、[Execute HTTP Request] アクションを使用したときに受信した JSON 結果の出力を示しています。

{
   "response_data": {
       "data": {
           "relationships": {
               "comment": [
                   {
                       "name": "example_resource_name",
                       "description": "Description of the object to which the comment belongs."
                   },
                   {
                       "name": "example_user_role",
                       "description": "Description of the user role associated with the comment."
                   }
               ]
           }
       }
   },
   "redirects": [],
   "response_code": 200,
   "cookies": {},
   "response_headers": {
       "Content-Type": "application/json",
       "X-Cloud-Trace-Context": "REDACTED_TRACE_ID",
       "Date": "REDACTED_DATE_TIME",
       "Server": "REDACTED_SERVER_NAME",
       "Content-Length": "REDACTED_VALUE"
   },
   "apparent_encoding": "ascii"
}
出力メッセージ

[Execute HTTP Request] アクションは、次の出力メッセージを返すことがあります。

出力メッセージ メッセージの説明

Successfully executed API request.

Successfully executed API request, but the status code 4xx_OR_5xx was returned. Please check the request or try again later.

アクションが成功しました。
Failed to execute API request. Error: ERROR_REASON

操作に失敗しました。

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

スクリプトの結果

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

スクリプトの結果名
is_success true または false

承認の取得

認証を取得アクションを使用して OAuth フローを開始し、委任認証に必要なアクセスコードを含むリンクを取得します。

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

アクション入力

[Get Authorization] アクションには、次のパラメータが必要です。

パラメータ 説明
Oauth Scopes

必須。

アクセス トークンと更新トークンのアクセスレベルを定義する権限(スコープ)のカンマ区切りのリスト。

デフォルト値は user.read, offline_access です。

アクションの出力

[Get Authorization] アクションは次の出力を提供します。

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

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

出力メッセージ メッセージの説明

Authorization URL generated successfully. To obtain a URL with access code,Please navigate to the link below as the user that you want to run the integration with., to get a URL with access code. Provide the URL with the access code should be provided next in the Generate Token action.

アクションが成功しました。
Failed to generate the authorization URL! Error is ERROR_REASON

操作に失敗しました。

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

スクリプトの結果

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

スクリプトの結果名
is_success true または false

トークンを生成

トークンを生成アクションを使用して、委任認証に必要な永続的な更新トークンを取得します。

このトークンは、Get Authorization アクションから受け取った認証 URL を使用して生成されます。

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

アクション入力

[Generate Token] アクションには、次のパラメータが必要です。

パラメータ 説明
Authorization URL

必須。

認証の取得アクションから受信した認証コードを含む、リダイレクトされた完全な URL。この URL は、リフレッシュ トークンのリクエストと生成に使用されます。

アクションの出力

[トークンを生成] アクションは、次の出力を提供します。

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

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

出力メッセージ メッセージの説明

Successfully fetched the refresh token: TOKEN_VALUE. Enter this token in the integration configuration to enable the integration to authenticate with delegated permissions on behalf of the user that performed the configuration steps. Note: We strongly recommend you configure the "Refresh Token Renewal Job" after you generate the initial refresh token so the job automatically renews and keeps the token valid.

アクションが成功しました。
Failed to get the refresh token! Error is ERROR_REASON

操作に失敗しました。

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

スクリプトの結果

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

スクリプトの結果名
is_success true または false

Ping

Ping アクションを使用して、Azure API への接続をテストします。

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

アクション入力

なし。

アクションの出力

Ping アクションは次の出力を提供します。

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

次の例は、Ping アクションを使用した場合に受信する JSON 結果の出力例を示しています。

{
    "endpoint": "https://api.example-cloud-provider.com/v1.0/health"
}
出力メッセージ

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

出力メッセージ メッセージの説明

Successfully tested connectivity.

アクションが成功しました。
Failed to test connectivity. ERROR_REASON

操作に失敗しました。

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

スクリプトの結果

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

スクリプトの結果名
is_success true または false

ジョブ

ジョブの詳細については、 新しいジョブを構成する 高度なスケジューリングをご覧ください。

更新トークンの更新ジョブ

更新トークン更新ジョブを使用して、統合用に構成された更新トークンを定期的に更新します。

デフォルトでは、更新トークンは 90 日ごとに有効期限が切れます。更新トークンを最新の状態に保つため、このジョブを 7 日または 14 日ごとに自動的に実行するように構成することをおすすめします。

求人のパラメータ

更新トークン更新ジョブには、次のパラメータが必要です。

パラメータ 説明
Integration Environments

省略可。

ジョブが更新トークンを更新する統合環境名のカンマ区切りリスト。

各環境名は二重引用符で囲む必要があります。

ご不明な点がございましたら、コミュニティ メンバーや Google SecOps のプロフェッショナルから回答を得ることができます。