SIEMと連携する

PowerSPFのデータをAPIで取得・編集する

このドキュメントでは、PowerSPFに登録されているデータをAPIで一覧を取得したり、一括登録する方法について説明します。

1. APIトークンの生成

まず、API接続に必要なベアラートークンを生成します。

  1. 左のメニューの「API設定」をクリックし、「APIトークンを管理」という画面を表示します。
  2. 「APIトークンを管理」というボタンをクリックします。
  3. 「新しいトークンを生成」というボタンをクリックします。
    • 名前を入力します。(この例では、api_token_for_control_powerspf)
    • アクセス権で、「PowerSPF」にチェックを入れます。
    • 「保存」のボタンを押します。
  4. 生成されたトークンは、1年間有効です。
    コピーして、テキストファイルとして保存しておきます。

2. ドメインIDの取得

PowerSPFでは、どのドメインのPowerSPFを操作するかを、ドメインIDを指定して操作します。
そこで、ドメインIDを取得します。

  1. 左のメニューの「ドメインの管理」をクリックし、「CSVでエキスポート」のボタンをクリックします。
    CSVファイルがダウンロードされるので、そちらを保存して開きます。
  2. CSVファイルの一列目にIdがあり、そちらにドメインIDが記載されています。
    そちらをコピーしておきます。

3. PowerSPF内の登録メカニズム一覧の取得

それでは、PowerSPFのAPIのGET関数を用いて、登録されているメカニズムの一覧を取得してみましょう。

コマンドラインでの操作

Linuxでcurlを使う場合

curl --location 'https://app.powerdmarc.com/api/v1/customers/hostedspf/<ここにホストIDを入れる>' \
--header 'Accept: application/json' \
--header 'Authorization: <ここにトークンを入れる>'
Linuxでwgetを使う場合

wget -qO- --header="Accept: application/json" \
--header="Authorization: <ここにトークン>" \
https://app.powerdmarc.com/api/v1/customers/hostedspf/<ここにホストIDを入れる>
WindowsでPowerShellを使う場合

$headers = @{
    "Accept"        = "application/json"
    "Authorization" = "<ここにトークン>"
}
Invoke-RestMethod -Uri "https://app.powerdmarc.com/api/v1/customers/hostedspf/54057" -Headers $headers
  • Postman を開き、ダウンロードしたコレクションをインポートします。
  • 「その他の操作を表示」ボタンをクリックし、「編集」を選択します。
  • Authorization セクションに移動し、認証タイプとして「Bearer Token」を選択します。
  • 生成したトークンをトークンフィールドに貼り付けて保存します。
  • Variables セクションに移動し、baseUrl 変数を追加して、現在の値に https://app.powerdmarc.com/ を設定します。
  • 最初の API リクエストを実行するには、送信したいリクエストを選択し、リクエスト URL に baseUrl 変数を追加します。
  • 開いたリクエストの Authorization セクションで、認証タイプとして「Inherit auth from parent(親から認証を継承)」を選択します。
  • このオプションは以後のリクエストにも選択しておく必要があります。
  • 選択したリクエストのパラメータ、リクエストヘッダー、リクエスト URL、およびボディが API ドキュメントに一致していることを確認します。
  • 変更を保存し、「Send」ボタンをクリックします。
  • コレクションを編集 > Authorization セクション
    コレクションを編集 > Variables セクション
    リクエスト > Authorization セクション
    リクエストヘッダー - Postman はリクエストヘッダーを自動生成します。
    Accept - application/json が含まれていることも確認してください。
    リクエストボディおよびEnvironmentsセクション
    コレクションを編集し、トークン変数を作成します。
    監査ログのエンドポイントを確認し、URL の先頭に baseUrl を設定します。
    適切なフィールドにトークン変数が追加されていることを確認してください。