TISC RPZ API

  • リリースバージョン: Australia
  • 更新日 2026年03月12日
  • 所要時間:16分
  • TISC RPZ API は、ドメインと IP アドレスを応答ポリシーゾーン (RPZ) 形式でエクスポートするためのエンドポイントを提供します。

    この API を使用して、ファイアウォール、DNS サーバー、または RPZ ポリシーをサポートするその他のセキュリティシステムで使用するために、フィルタリングされた脅威インテリジェンスデータを RPZ 形式で取得します。RPZ は、ドメインと IP アドレスをブロック、許可、またはリダイレクトするために使用されます。API 応答は、セキュリティワークフローへの簡単な統合を促進するために text/plain として提供されます。

    この API には、ServiceNow Store で利用可能な 脅威インテリジェンスセキュリティセンター アプリケーションが必要です。

    TISCの詳細については、「Threat Intelligence Security Center」を参照してください。

    この API は sn_sec_tisc 名前空間で実行されます。呼び出し元ユーザーには sn_sec_tisc.api_obs_read_access ロールが必要です。

    この API の現在のバージョンは v1 です。

    TISC RPZ - 投稿 /sn_sec_tisc/rpz_export

    ドメインと IP アドレスを応答ポリシーゾーン (RPZ) 形式でエクスポートします。

    注:
    エクスポートでドメインのワイルドカードエントリ (*.<domain_name>) を生成できます。ワイルドカードエントリを使用すると、ドメインのすべてのサブドメインを柔軟にブロックまたは許可できます。この機能を有効にするには、 脅威インテリジェンスセキュリティセンター のドメインレコードに移動します。[詳細] タブの [TISC タグと分類] セクションで、[分類] フィールドに入力します。
    • [ 分類を選択 ] フィールドで、[ RPZ ドメイン] を選択します。
    • [ 分類値を追加 ] フィールドで、[ ワイルドカードエントリを追加] を選択します。
    [ 追加] をクリックして、ドメインの分類を保存します。
    図 : 1. TISCのドメインレコード
    [分類] フィールドがハイライト表示された TISC のドメインレコード。

    URL 形式

    バージョニングされた URL: /api/sn_sec_tisc/{api_version}/rpz_export

    デフォルト URL: /api/sn_sec_tisc/rpz_export

    サポートされている要求パラメーター

    表 : 1. パスパラメーター
    名前 説明
    api_version オプション。アクセスするエンドポイントのバージョン。たとえば、 v1v2 などです。最新以外のエンドポイントバージョンを使用する場合にのみ、この値を指定してください。

    データタイプ:文字列

    表 : 2. クエリパラメーター
    名前 説明
    なし
    表 : 3. 要求本文パラメーター (JSON)
    名前 説明
    feed_type 必須です。エクスポートする観測事象のタイプ。
    有効な値 (大文字と小文字の区別なし):
    • IP – IP アドレス (IPv4 アドレス、IPv4 CIDR、IPv6 アドレス、および IPv6 CIDR) のみを含めます。
    • ドメイン: ドメイン名のみを含めます。
    • IP_Domain :IP アドレスとドメイン名の両方を含めます。

    データタイプ:文字列

    observable_filters 観測事象に適用するフィルター。フィルター基準に一致する観測事象のみが応答に返されます。

    データタイプ: オブジェクト

    "observable_filters": {
       "boolean_operator": "String", 
       "filters": [Array]
    }

    デフォルト:空のオブジェクト (フィルターが適用されていません)

    observable_filters.boolean_operator フィルター条件に使用するブール演算子。
    有効な値:
    • AND:すべてのフィルター条件を満たす観測事象を返します。
    • OR:少なくとも 1 つのフィルター条件を満たす観測事象を返します。

    データタイプ:文字列

    observable_filters.filters 観測事象に適用するフィルター。
    各フィルターオブジェクトは、シンプルまたは複雑にすることができます。
    • 簡易フィルターには、フィールド名、演算子、および値が含まれます。
    • 複合フィルターには、ブール演算子と単純なフィルターの配列が含まれます。ブール演算子は、単純なフィルターのアレイに適用されます。

    データタイプ:オブジェクトのアレイ

    "filters": [ 
       //Simple filter 
       { 
          "field_name": "String", 
          "operator": "String", 
          "field_value": "String" 
       }, 
       //Complex filter 
       {
          "boolean_operator": "String", 
          "filters": [
             {
    	     "field_name": "String",
    	     "operator": "String",
    	     "field_value": "String"
             }  
          ]
       }
    ]
    observable_filters.filters.field_name 観測事象のフィルタリングに使用するフィールドの名前。
    有効な値:
    • 信頼性
    • reputation
    • security_type
    • status
    • sys_created_on
    • sys_updated_on
    • タグ
    • taxonomies
    • threat_score
    • value
    • watch_list

    データタイプ:文字列

    observable_filters.filters.field_value フィールドの値。

    選択フィールドの場合、値は表示値ではなく内部値である必要があります。日付/時刻フィールドの場合、値は UTC タイムゾーンの ISO 形式である必要があります。

    注:
    ISEMPTY 演算子または ISNOTEMPTY 演算子を使用する場合、このパラメーターは必要ありません。

    データタイプ:文字列

    observable_filters.filters.operator フィルターに使用する演算子。

    演算子の詳細については、「Operators available for filters and queries」を参照してください。

    フィルターフィールドのデータタイプによって、有効な演算子が決まります。次の演算子は、データタイプごとに有効です。

    ブーリアン

    適用分野:watch_list

    • !=
    • =
    • ISEMPTY
    • ISNOTEMPTY
    選択肢

    適用フィールド:評判、security_type、ステータス

    • !=
    • =
    • ENDSWITH
    • IN
    • 高評価
    • NOT IN
    • 好きではありません
    • STARTSWITH
    日付-時刻

    適用可能なフィールド:sys_created_on、sys_updated_on

    • <
    • <=
    • >
    • >=
    • ISEMPTY
    • ISNOTEMPTY
    • ノートン
    • オン
    GlideList

    適用可能なフィールド:タグ、分類

    • IN
    • NOT IN
      注:
      フィルター条件には有効な既存の値を 1 つ使用する必要があり、空の観測事象フィールド値は一致とは見なされません。
    • ISEMPTY
    • ISNOTEMPTY
    • 高評価
      注:
      フィルター条件に単一の値を使用する必要があります。
    • 好きではありません
      注:
      フィルター条件には単一の値を使用する必要があり、空の観測事象フィールド値は一致とは見なされません。
    番号

    適用可能なフィールド:信頼性、threat_score

    • !=
    • <=
    • =
    • >=
    • ISEMPTY
    • ISNOTEMPTY
    文字列

    適用可能なフィールド:値

    • !=
    • <=
    • =
    • >=
    • ENDSWITH
    • IN
    • ISEMPTY
    • ISNOTEMPTY
    • 高評価
    • 好きではありません
    • STARTSWITH

    データタイプ:文字列

    page_size API 応答で返される観測事象の数を制限します。ページネーションに使用されます。

    データタイプ:数値

    デフォルト:1000

    最大値:10,000

    page_token 現在のページの観測事象データを取得するために使用されます。

    最初のページを取得するには、このパラメーターを省略するか、このパラメーターの値を空の文字列にする必要があります。次の要求で次のページを取得するには、応答ヘッダーの X-Next-Page-Token 値をこのパラメーターの値として使用します。

    データタイプ:文字列

    デフォルト:空の文字列

    policy 必須です。ドメインまたは IP アドレスに対して実行するアクション。
    有効な値 (大文字と小文字の区別なし):
    • NXDOMAIN – NXDOMAIN 応答 (存在しないドメイン) を返します。
    • DROP – 応答なしでクエリをサイレントドロップします。
    • NODATA – データなしの NOERROR 応答を返します。
    • PASSTHRU: クエリを通常どおりに続行できるようにします (アクションは実行されません)。
    • LOCAL-DATA :ローカルに定義された DNS データで応答します。これはシンクホール (悪意のあるドメインまたは IP を安全な内部アドレスにリダイレクトして、送信接続を監視またはブロックする) に使用できます。
    • TCP-ONLY :クライアントに TCP 経由でのクエリの再試行を強制します。

    データタイプ:文字列

    soa_email 必須です。ゾーンのアドミン連絡先メール。ユーザー名とドメインを区切るには、@ 記号の代わりにドット (.) を使用します (admin@example.com の代わりに admin.example.com. など)。このパラメーターは DNS SOA レコードに含まれています。

    データタイプ:文字列

    soa_expiry 必須です。有効期限。プライマリサーバーが到達不能になった場合に、セカンダリサーバーがゾーンデータを使用し続ける最大時間を決定します。

    データタイプ:数値

    単位:秒

    最小:0

    最大:4294967295

    soa_minimum_ttl 必須です。否定的な回答に対する最小存続時間。リゾルバーが否定的な応答をキャッシュする期間を決定します。
    注:
    このパラメーターは、有効な要求本文に常に必要ですが、ポリシーが NXDOMAIN、NODATA、または LOCAL-DATA の場合にのみ使用されます。他のポリシーの場合、このパラメーターは効果がありません。

    データタイプ:数値

    単位:秒

    最小:0

    最大:4294967295

    soa_named_server 必須です。ゾーンのプライマリネームサーバー。ドット (.) で終わる完全修飾ドメイン名 (FQDN) (ns1.example.com など) である必要がありますこのパラメーターは、DNS SOA レコードの最初のフィールドです。

    データタイプ:文字列

    soa_named_server_alt 冗長性のための代替ネームサーバー。

    データタイプ:文字列

    soa_refresh 必須です。リフレッシュ間隔。セカンダリ DNS サーバーがプライマリサーバーでゾーンの更新を確認する頻度を決定します。

    データタイプ:数値

    単位:秒

    最小:0

    最大:4294967295

    soa_retry 必須です。再試行間隔。セカンダリサーバーが失敗したゾーン転送を再試行するまでの待機時間を決定します。

    データタイプ:数値

    単位:秒

    最小:0

    最大:4294967295

    soa_ttl 必須です。RPZ レコードの存続時間 (TTL)。更新をチェックする前にリゾルバーがレコードをキャッシュする期間を決定します。

    データタイプ:数値

    単位:秒

    最小:0

    最大:4294967295

    walled_garden リダイレクトターゲットとして使用する IP アドレスまたはドメイン名。

    ウォールドガーデン (通常はセキュリティ、コンプライアンス、または情報提供の目的で、制御されたページまたはネットワークの場所) にユーザーをリダイレクトするために使用されます。

    注:
    policyLOCAL-DATA の場合は必須です。他のポリシータイプには、このパラメーターを使用しないでください。

    データタイプ:文字列

    ヘッダー

    次の要求ヘッダーと応答ヘッダーは、この HTTP アクションにのみ適用されるか、別の方法でこのアクションに適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。

    表 : 4. 要求ヘッダー
    ヘッダー 説明
    承認 応答本文のデータフォーマット。サポートされるタイプ:text/plain または application/json

    成功応答はプレーンテキストとして返され、エラー応答は JSON として返されます。

    デフォルト: text/plain

    認証 基本的な。

    API 認証と承認の詳細については、「 REST API」の「REST API セキュリティ」セクションを参照してください。

    Content-Type 要求本文のデータ形式。application/json のみをサポートします。
    表 : 5. 応答ヘッダー
    ヘッダー 説明
    x-next-page-token 次の API 要求でこの値を使用して、結果の次のページを取得します。この値を要求本文の page_token パラメーターに入力します。

    このヘッダーが存在しない場合、それ以上のページは使用できません。

    ステータスコード

    この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。

    表 : 6. ステータスコード
    ステータスコード 説明
    200 成功。要求が正常に処理されました。
    400 要求が正しくありません。不適切な要求タイプまたは誤った要求が検出されました。
    401 権限がありません。ユーザー認証情報が正しくないか、渡されていません。
    403 禁止されました。ユーザーには、指定されたレコードへのアクセス権がありません。
    429 要求が多すぎます。API 要求の数が API のレート制限を超えています。デフォルトでは、制限は 1 時間あたり 500 要求です。
    500 内部サーバーエラー要求の処理中に予期しないエラーが発生しました。応答には、エラーに関する追加情報が含まれています。

    応答本文のパラメーター (JSON)

    名前 説明
    errorCode 要求の HTTP ステータスコード。
    result 要求の詳細。このパラメーターは、要求が失敗した場合にのみ返されます。

    データタイプ: オブジェクト

    "result": {
       "error": {Object},
       "status": "String" 
    }
    result.error エラー情報。

    データタイプ: オブジェクト

    "error": {   
       "detail": "String",
       "message": "String"
    }
    result.error.detail 要求が失敗した理由に関するその他の詳細。

    データタイプ:文字列

    result.error.message 要求が失敗した理由を含むエラーメッセージ。

    データタイプ:文字列

    result.status API 要求のステータス。このパラメーターは要求が失敗した場合にのみ返されるため、使用可能な値は failure のみです。

    データタイプ:文字列

    cURL 要求

    この例では、選択したドメインを RPZ 形式でエクスポートし、ポリシーを NXDOMAIN として設定します。

    curl --location 'https://instance.service-now.com/api/sn_sec_tisc/v1/rpz_export' \ 
    --header 'Authorization: Basic YWJlbC50dXRlcjpTbm93QDEyMw==' \
    --data '{
        "policy": "nxdomain", 
        "feed_type": "DOMAIN", 
        "soa_retry": 85, 
        "soa_expiry": 1, 
        "soa_minimum_ttl": 7, 
        "soa_refresh": 3600, 
        "soa_ttl": 7678, 
        "soa_named_server": "localhost.", 
        "soa_email": "root.localhost.",
        "page_size": 100, 
        "page_token": "", 
        "observable_filters": { 
            "boolean_operator": "AND", 
            "filters": [ 
                { 
                    "field_name": "status", 
                    "operator": "=", 
                    "field_value": "active" 
                }, 
                { 
                    "boolean_operator": "OR", 
                    "filters": [ 
                        { 
                            "field_name": "threat_score", 
                            "operator": ">=", 
                            "field_value": "70" 
                        }, 
                        { 
                            "field_name": "confidence", 
                            "operator": ">=", 
                            "field_value": "50" 
                        } 
                    ] 
                } 
            ] 
        } 
    }'

    フィルター基準に一致するドメインを含む応答本文。

    $TTL 7678;  
    @ SOA localhost. root.localhost. (1759835257654 3600 85 1 7)
     IN NS localhost.  
    
    ; The following Domain records will be blocked (NXDOMAIN):
    domain autuo.xicp.net CNAME .
    microsofta.byinter.net CNAME .
    www.webserver.freetcp.com CNAME .
    mongoles.3322.org CNAME .
    imddos.my03.com CNAME .
    weile3322b.3322.org CNAME .
    *.weile3322b.3322.org CNAME .

    cURL 要求

    この例は、無効なポリシー値を使用する要求を示しています。

    curl --location 'https://instance.service-now.com/api/sn_sec_tisc/v1/rpz_export' \ 
    --header 'Authorization: Basic YWJlbC50dXRlcjpTbm93QDEyMw==' \
    --data '{
        "policy": "LocalData", 
        "feed_type": "DOMAIN", 
        "soa_retry": 85, 
        "soa_expiry": 1, 
        "soa_minimum_ttl": 7, 
        "soa_refresh": 3600, 
        "soa_ttl": 7678, 
        "soa_named_server": "localhost.", 
        "soa_email": "root.localhost.",
        "page_size": 100, 
        "page_token": "", 
        "observable_filters": { 
            "boolean_operator": "AND", 
            "filters": [ 
                { 
                    "field_name": "status", 
                    "operator": "=", 
                    "field_value": "active" 
                }, 
                { 
                    "boolean_operator": "OR", 
                    "filters": [ 
                        { 
                            "field_name": "threat_score", 
                            "operator": ">=", 
                            "field_value": "70" 
                        }, 
                        { 
                            "field_name": "confidence", 
                            "operator": ">=", 
                            "field_value": "50" 
                        } 
                    ] 
                } 
            ] 
        } 
    }'

    失敗した要求のエラー情報を含む応答本文。

    {
       "result": {
          "status": "failure",
          "error": {
             "message": "Error occurred while processing request body.",
             "detail": "Invalid policy: 'LocalData'. Supported values are: NXDOMAIN, DROP, NODATA, PASSTHRU, LOCAL-DATA, TCP-ONLY"
          }
       },
       "errorCode": 400
    }