次の方法で共有


コードレス コネクタ プラットフォームのデータ コネクタ リファレンス

コードレス コネクタ プラットフォーム (CCP) を使用してデータ コネクタを作成するには、このドキュメントを Microsoft Sentinel REST API for Data Connectors リファレンス ドキュメントの補足として使用します。具体的には、このリファレンス ドキュメントでは、次の詳細について説明します。

  • データ コネクタの種類 RestApiPoller。CCP に使用されます。
  • 承認の構成
  • データ ソース要求と応答の構成オプション
  • データ ストリームのページング オプション
  • データ収集ルール マップ

それぞれ dataConnector は、Microsoft Sentinel データ コネクタの特定 の接続 を表します。 1 つのデータ コネクタに複数の接続があり、異なるエンドポイントからデータをフェッチする場合があります。 このリファレンス ドキュメントを使用して構築された JSON 構成は、CCP データ コネクタのデプロイ テンプレートを完成させるために使用されます。

詳細については、「 Microsoft Sentinel 用のコードレス コネクタを作成する」を参照してください。

データ コネクタ - 作成または更新

REST API ドキュメントの 作成または更新 操作を参照して、最新の安定した API バージョンまたはプレビュー API バージョンを見つけます。 作成操作と更新操作の違いは、更新に etag 値が必要です。

PUT メソッド

https://management.azure.com/subscriptions/{{subscriptionId}}/resourceGroups/{{resourceGroupName}}/providers/Microsoft.OperationalInsights/workspaces/{{workspaceName}}/providers/Microsoft.SecurityInsights/dataConnectors/{{dataConnectorId}}?api-version={{apiVersion}}

URI パラメーター

最新の API バージョンの詳細については、「データ コネクタ - URI パラメーターの作成または更新」を参照してください

名前 説明
dataConnectorId データ コネクタ ID は一意の名前である必要があり、要求本文nameパラメーターと同じです。
resourceGroupName リソース グループの名前。大文字と小文字は区別されません。
subscriptionId ターゲット サブスクリプションの ID。
workspaceName ID ではなく、ワークスペースの名前
正規表現パターン: ^[A-Za-z0-9][A-Za-z0-9-]+[A-Za-z0-9]$
api-version この操作に使用する API バージョン。

要求本文

CCP データ コネクタの要求本文には、次の構造があります。

{
   "name": "{{dataConnectorId}}",
   "kind": "RestApiPoller",
   "etag": "",
   "properties": {
        "connectorDefinitionName": "",
        "auth": {},
        "request": {},
        "response": {},
        "paging": "",
        "dcrConfig": ""
   }
}

RestApiPoller は、コードレス API Poller コネクタを表します。

名前 Required タイプ 説明
name True string URI パラメーターに一致する接続の一意の名前
kind True string `Default` である必要があります。
etag GUID 新しいコネクタを作成する場合は空のままにします。 更新操作の場合、etag は既存のコネクタの etag (GUID) と一致する必要があります。
properties.connectorDefinitionName string データ コネクタの UI 構成を定義する DataConnectorDefinition リソースの名前。 詳細については、「データ コネクタの定義」を参照してください
プロパティ。認証 True 入れ子の JSON データをポーリングするための認証プロパティについて説明します。 詳細については、「認証の構成」を参照してください
プロパティ。要求 True 入れ子の JSON API エンドポイントなど、データをポーリングするための要求ペイロードについて説明します。 詳細については、「要求の構成」をご覧ください。
プロパティ。応答 True 入れ子の JSON データのポーリング時に API から返される応答オブジェクトと入れ子になったメッセージについて説明します。 詳細については、「応答の構成」をご覧ください。
プロパティ。ページング 入れ子の JSON データをポーリングする際の改ページ位置の自動修正のペイロードについて説明します。 詳細については、「ページングの構成」をご覧ください。
プロパティ。dcrConfig 入れ子の JSON データがデータ収集規則 (DCR) に送信されるときに必要なパラメーター。 詳細については、DCR 構成を参照してください

認証の構成

CCP では、次の認証の種類がサポートされています。

Note

CCP OAuth2 の実装では、証明書の資格情報はサポートされていません。

ベスト プラクティスとして、資格情報をハードコーディングする代わりに、認証セクションのパラメーターを使用します。 詳細については、「セキュリティで保護された機密入力」を参照してください

パラメーターも使用するデプロイ テンプレートを作成するには、このセクションのパラメーターを余分に開始してエスケープする [必要があります。 これによりパラメータは、コネクタとのユーザー操作に基づいて値を割り当てることができます。 詳細については、テンプレート式のエスケープ文字に関するページを参照してください。

UI から資格情報を入力できるようにするには、 connectorUIConfig セクションに必要なパラメーターが必要 instructions です。 詳細については、コードレス コネクタ プラットフォームのデータ コネクタ定義リファレンスを参照してください

基本認証

フィールド 必須 Type
UserName True string
Password True string

次で定義されているパラメーターを使用した基本認証の connectorUIconfig例:

"auth": {
    "type": "Basic",
    "UserName": "[[parameters('username')]",
    "Password": "[[parameters('password')]"
}

APIKey

フィールド 必須 タイプ 説明 規定値
ApiKey True string ユーザー シークレット キー
ApiKeyName string ApiKey 値を含む Uri ヘッダーの名前 Authorization
ApiKeyIdentifier string トークンの先頭に追加する文字列値 token
IsApiKeyInPostPayload boolean ヘッダーの代わりに POST 本文でシークレットを送信する false

APIKey 認証の例:

"auth": {
    "type": "APIKey",
    "ApiKey": "[[parameters('apikey')]",
    "ApiKeyName": "X-MyApp-Auth-Header",
    "ApiKeyIdentifier": "Bearer"
}

この例では、次のヘッダーで送信されたユーザー入力から定義されたシークレットが作成されます: X-MyApp-Auth-Header: Bearer apikey

"auth": { 
    "type": "APIKey",
    "ApiKey": "123123123",
}

この例では、既定値を使用し、結果として Authorization : token 123123123

"auth": { 
    "type": "APIKey",
    "ApiKey": "123123123",
    "ApiKeyName": ""
}

ApiKeyName 明示的に ""設定されているため、結果は次のヘッダーになります: Authorization: 123123123

OAuth2

コードレス コネクタ プラットフォームでは、OAuth 2.0 承認コードの付与とクライアント資格情報がサポートされています。 認証コード付与の種類は、認証コードをアクセストークンと交換するために、機密クライアントおよびパブリッククライアントによって使用されます。 ユーザーがリダイレクト URL 経由でクライアントに戻った後、アプリケーションは URL から認証コードを取得し、それを使用してアクセス トークンを要求します。

フィールド 必須 タイプ 説明
Clientid True String クライアント ID
ClientSecret True String クライアント シークレット
AuthorizationCode true の場合 grantType = authorization_code String 許可の種類がこのフィールド値の authorization_code 場合、認証サービスから返される承認コードになります。
スコープ 許可の種類の authorization_code 場合は True
許可の種類の client_credentials 省略可能
String ユーザーの同意のためのスコープのスペース区切りの一覧。 詳細については、「OAuth2 のスコープとアクセス許可」を参照してください
RedirectUri true の場合 grantType = authorization_code String リダイレクトの URL。次の URL である必要があります。 https://portal.azure.com/TokenAuthorize/ExtensionName/Microsoft_Azure_Security_Insights
GrantType True String authorization_code または client_credentials
TokenEndpoint True String 有効なトークン authorization_code を持つコードを grant に交換する URL、またはクライアント ID とシークレットを grant の有効なトークンと client_credentials 交換する URL。
TokenEndpointHeaders Object トークン サーバーにカスタム ヘッダーを送信するオプションのキー値オブジェクト
TokenEndpointQueryParameters Object トークン サーバーにカスタム クエリ パラメーターを送信するオプションのキー値オブジェクト
AuthorizationEndpoint True String フローに対するユーザーの同意の authorization_code URL
AuthorizationEndpointHeaders Object カスタム ヘッダーを認証サーバーに送信するオプションのキー値オブジェクト
AuthorizationEndpointQueryParameters Object OAuth2 承認コード フロー要求で使用されるオプションのキー値ペア

認証コード フローは、ユーザーのアクセス許可に代わってデータをフェッチするためのものであり、クライアント資格情報はアプリケーションのアクセス許可を使用してデータをフェッチするためのフローです。 データ サーバーは、アプリケーションへのアクセスを許可します。 クライアント資格情報フローにはユーザーがないため、承認エンドポイントは必要なく、トークン エンドポイントのみが必要です。

例: OAuth2 認証コードの付与

"auth": {
    "type": "OAuth2",
    "ClientId": "[parameters('appId')]",
    "ClientSecret": "[parameters('appSecret')]",
    "tokenEndpoint": "https://login.microsoftonline.com/{{tenantId}}/oauth2/v2.0/token",
    "authorizationEndpoint": "https://login.microsoftonline.com/{{tenantId}}/oauth2/v2.0/authorize",
    "authorizationEndpointHeaders": {},
    "authorizationEndpointQueryParameters": {
        "prompt": "consent"
    },
    "redirectUri": "https://portal.azure.com/TokenAuthorize/ExtensionName/Microsoft_Azure_Security_Insights",
    "tokenEndpointHeaders": {
        "Accept": "application/json",
        "Content-Type": "application/x-www-form-urlencoded"
    },
    "TokenEndpointQueryParameters": {},
    "scope": "openid offline_access some_scope",
    "grantType": "authorization_code"
}

例:

"auth": {
    "type": "OAuth2",
    "ClientId": "[parameters('appId')]",
    "ClientSecret": "[parameters('appSecret')]",
    "tokenEndpoint": "https://login.microsoftonline.com/{{tenantId}}/oauth2/v2.0/token",
    "tokenEndpointHeaders": {
        "Accept": "application/json",
        "Content-Type": "application/x-www-form-urlencoded"
    },
    "TokenEndpointQueryParameters": {},
    "scope": "openid offline_access some_scope",
    "grantType": "client_credentials"
}

要求の構成

要求セクションでは、API エンドポイントなど、CCP データ コネクタがデータ ソースに要求を送信する方法と、そのエンドポイントをポーリングする頻度を定義します。

フィールド 必須 タイプ 説明
ApiEndpoint True String リモート サーバーの URL。 データのプル元のエンドポイントを定義します。
RateLimitQPS Integer 1 秒あたりに許可される呼び出しまたはクエリの数を定義します。
QueryWindowInMin Integer 使用可能なクエリ ウィンドウを分単位で定義します。 最小値は 1 分です。 既定値は 5 分です。
HttpMethod String API メソッド GET(既定) または POST
QueryTimeFormat String エンドポイント (リモート サーバー) で想定される日付と時刻の形式を定義します。 CCP では、この変数が使用されている場所であれば常に現在の日付と時刻が使用されます。 指定できる値は、定数です。UnixTimestampまたは、UnixTimestampInMills日付時刻のその他の有効な表現 (例: yyyy-MM-ddMM/dd/yyyy HH:mm:ss
既定値は ISO 8601 UTC
RetryCount 整数 (1...6) 1障害からの復旧を6許可する再試行を定義します。 既定値は 3 です。
TimeoutInSeconds 整数 (1...180) 要求のタイムアウトを秒単位で定義します。 既定値は 20 です
IsPostPayloadJson Boolean ポスト ペイロードが JSON 形式であるかどうかを判断します。 既定値は false です
ヘッダー Object 要求ヘッダーを定義するキー値ペア。
QueryParameters Object 要求クエリ パラメーターを定義するキー値ペア。
StartTimeAttributeName True の場合 EndTimeAttributeName に設定します。 String クエリの開始時刻のクエリ パラメーター名を定義します。 を参照してください。
EndTimeAttributeName True の場合 StartTimeAttributeName に設定します。 String クエリの終了時刻のクエリ パラメーター名を定義します。
QueryTimeIntervalAttributeName String エンドポイントで時間枠内のデータに対してクエリを実行するための特殊な形式が必要な場合は、パラメーターと共にこのプロパティをQueryTimeIntervalPrependQueryTimeIntervalDelimiter使用します。 を参照してください。
QueryTimeIntervalPrepend True の場合 QueryTimeIntervalAttributeName に設定します。 String QueryTimeIntervalAttributeName」を参照してください。
QueryTimeIntervalDelimiter True の場合 QueryTimeIntervalAttributeName に設定します。 String QueryTimeIntervalAttributeName」を参照してください。
QueryParametersTemplate String 高度なシナリオでパラメーターを渡すときに使用するクエリ テンプレート。
br>次に例を示します。 "queryParametersTemplate": "{'cid': 1234567, 'cmd': 'reporting', 'format': 'siem', 'data': { 'from': '{_QueryWindowStartTime}', 'to': '{_QueryWindowEndTime}'}, '{_APIKeyName}': '{_APIKey}'}"

API に複雑なパラメーターが必要な場合は、組み込みの変数を queryParameters 使用するか queryParametersTemplate 、組み込み変数を含めます。

組み込み変数 で使用する場合 queryParameters で使用する場合 queryParametersTemplate
_QueryWindowStartTime はい はい
_QueryWindowEndTime はい はい
_APIKeyName no はい
_APIKey no はい

StartTimeAttributeName の例

以下に例を示します。

  • StartTimeAttributeName = from
  • EndTimeAttributeName = until
  • ApiEndpoint = https://www.example.com

リモート サーバーに送信されるクエリは次のとおりです。 https://www.example.com?from={QueryTimeFormat}&until={QueryTimeFormat + QueryWindowInMin}

QueryTimeIntervalAttributeName の例

以下に例を示します。

  • QueryTimeIntervalAttributeName = interval
  • QueryTimeIntervalPrepend = time:
  • QueryTimeIntervalDelimiter = ..
  • ApiEndpoint = https://www.example.com

リモート サーバーに送信されるクエリは次のとおりです。 https://www.example.com?interval=time:{QueryTimeFormat}..{QueryTimeFormat + QueryWindowInMin}

Microsoft Graph をデータ ソース API として使用する要求の例

この例では、フィルター クエリ パラメーターを使用してメッセージを照会します。 詳細については、「Microsoft Graph API クエリ パラメーター」を参照してください

"request": {
  "apiEndpoint": "https://graph.microsoft.com/v1.0/me/messages",
  "httpMethod": "Get",
  "queryTimeFormat": "yyyy-MM-ddTHH:mm:ssZ",
  "queryWindowInMin": 10,
  "retryCount": 3,
  "rateLimitQPS": 20,
  "headers": {
    "Accept": "application/json",
    "User-Agent": "Example-app-agent"
  },
  "QueryTimeIntervalAttributeName": "filter",
  "QueryTimeIntervalPrepend": "receivedDateTime gt ",
  "QueryTimeIntervalDelimiter": " and receivedDateTime lt "
}

前の例では、要求https://graph.microsoft.com/v1.0/me/messages?filter=receivedDateTime gt {time of request} and receivedDateTime lt 2019-09-01T17:00:00.0000000GET . タイムスタンプは毎回 queryWindowInMin 更新されます。

この例では、同じ結果が得られます。

"request": {
  "apiEndpoint": "https://graph.microsoft.com/v1.0/me/messages",
  "httpMethod": "Get",
  "queryTimeFormat": "yyyy-MM-ddTHH:mm:ssZ",
  "queryWindowInMin": 10,
  "retryCount": 3,
  "rateLimitQPS": 20,
  "headers": {
    "Accept": "application/json",
  },
  "queryParameters": {
    "filter": "receivedDateTime gt {_QueryWindowStartTime} and receivedDateTime lt {_QueryWindowEndTime}"
  }
}

もう 1 つのオプションは、データ ソースで 2 つのクエリ パラメーター (開始時刻に 1 つ、終了時刻に 1 つ) が必要な場合です。

例:

"request": {
  "apiEndpoint": "https://graph.microsoft.com/v1.0/me/calendarView",
  "httpMethod": "Get",
  "queryTimeFormat": "yyyy-MM-ddTHH:mm:ssZ",
  "queryWindowInMin": 10,
  "retryCount": 3,
  "rateLimitQPS": 20,
  "headers": {
    "Accept": "application/json",
  },
  "StartTimeAttributeName": "startDateTime",
  "EndTimeAttributeName": "endDateTime",
}

これにより、次の要求が GET 送信されます。 https://graph.microsoft.com/me/calendarView?startDateTime=2019-09-01T09:00:00.0000000&endDateTime=2019-09-01T17:00:00.0000000

複雑なクエリの場合は、次を使用します QueryParametersTemplate。 次の例では、本文にパラメーターを POST 含む要求を送信します。

例:

request: {
  "apiEndpoint": "https://graph.microsoft.com/v1.0/me/messages",
  "httpMethod": "POST",
  "queryTimeFormat": "yyyy-MM-ddTHH:mm:ssZ",
  "queryWindowInMin": 10,
  "retryCount": 3,
  "rateLimitQPS": 20,
  "headers": {
    "Accept": "application/json",
  },
  "isPostPayloadJson": true,
  "queryParametersTemplate": "{\"query":"TableName | where createdTimestamp between (datetime({_QueryWindowStartTime}) .. datetime({_QueryWindowEndTime}))\"}"
}

応答の構成

次のパラメーターを使用して、データ コネクタの応答処理を定義します。

フィールド 必須 タイプ 説明
EventsJsonPaths True 文字列の一覧 応答の JSON 内のメッセージへのパスを定義します。 JSPON パス式で、JSON 構造体の要素または要素のセットへのパスを指定します。
SuccessStatusJsonPath String 応答の JSON 内の成功メッセージへのパスを定義します。 このパラメーターを定義するときは、 SuccessStatusValue パラメーターも定義する必要があります。
SuccessStatusValue String 応答の JSON 内の成功メッセージ値へのパスを定義します。
IsGzipCompressed Boolean 応答が gzip ファイルで圧縮されているかどうかを判断します
format True String json または csv または xml
CompressionAlgo String 圧縮アルゴリズム(または multi-gzip deflate. gzip 圧縮アルゴリズムの場合は、このパラメーターの値をTrue設定する代わりに構成IsGzipCompressedするだけです。
CsvDelimiter String 応答形式が CSV で、既定の CSV 区切り記号を変更する場合 ","
HasCsvBoundary Boolean CSV データに境界があるかどうかを示す
HasCsvHeader Boolean CSV データにヘッダーがあるかどうかを示します。既定値は True
CsvEscape String フィールド境界のエスケープ文字。既定値は "

たとえば、ヘッダー id,name,avg を含む CSV と、スペースを含むデータの行には 1,"my name",5.5 、フィールドの境界が " 必要です。
ConvertChildPropertiesToArray Boolean リモート サーバーが、各プロパティにデータが含まれるイベントのリストの代わりにオブジェクトを返す特殊なケース。

Note

CSV 形式の種類は、RFC4180仕様によって解析されます。

応答構成の例

要求されたデータがプロパティ に含まれる、JSON 形式のサーバー応答が必要です。 応答プロパティ の状態 は、値が success.

"response": {
  "EventsJsonPaths ": ["$.value"],
  "format": "json",
  "SuccessStatusJsonPath": "$.status",
  "SuccessStatusValue": "success",
  "IsGzipCompressed: true
 }

この例で想定される応答は、ヘッダーのない CSV を準備します。

"response": {
  "EventsJsonPaths ": ["$"],
  "format": "csv",
  "HasCsvHeader": false
 }

ページングの構成

データ ソースが応答ペイロード全体を一度に送信できない場合、CCP データ コネクタは、応答 ページでデータの一部を受信する方法を認識する必要があります。 選択するページングの種類は次のとおりです。

ページングの種類 decision factor
API 応答には、次のページと前のページへのリンクがありますか?
API 応答には、次のページと前のページのトークンまたはカーソルがありますか?
API 応答は、ページング時にスキップするオブジェクトの数のパラメーターをサポートしていますか?

LinkHeader または PersistentLinkHeader の構成

最も一般的なページングの種類は、サーバー データ ソース API がデータの次のページと前のページに URL を提供する場合です。 リンク ヘッダーの仕様の詳細については、RFC 5988 を参照してください

LinkHeader ページングは、API 応答に次のいずれかが含まれていることを意味します。

  • Link HTTP 応答ヘッダー
  • または、応答本文からリンクを取得する JSON パス。

PersistentLinkHeader ページングのプロパティ LinkHeaderは、リンク ヘッダーがバックエンド ストレージに保持される点を除き、プロパティと同じです。 このオプションを使用すると、クエリ ウィンドウ間のページング リンクが有効になります。 たとえば、一部の API ではクエリの開始時刻や終了時刻がサポートされていません。 代わりに、サーバー側 カーソルをサポートします。 永続的なページの種類は、サーバー側 のカーソルを記憶するために使用できます。 詳細については、「カーソルとは」を参照してください

Note

PersistentLinkHeader を使用するコネクタに対して実行できるクエリは 1 つだけで、サーバー側 カーソルでの競合状態を回避できます。 これは待機時間に影響する可能性があります。

フィールド 必須 タイプ 説明
LinkHeaderTokenJsonPath False String このプロパティを使用して、応答本文の値を取得する場所を示します。

たとえば、データ ソースから次の JSON が返された場合LinkHeaderTokenJsonPath{ nextPage: "foo", value: [{data}]}次のようになります。$.nextPage
PageSize False Integer ページあたりのイベントの数
PageSizeParameterName False String ページ サイズのクエリ パラメーター名

次に例をいくつか示します。

Paging: {
  "pagingType": "LinkHeader",
  "linkHeaderTokenJsonPath" : "$.metadata.links.next"
}
Paging: {
 "pagingType" : "PersistentLinkHeader", 
 "pageSizeParameterName" : "limit", 
 "pageSize" : 500 
}

NextPageUrl の構成

NextPageUrl ページングとは、API 応答が応答本文に複雑なリンクを含むのに LinkHeader似ていますが、URL がヘッダーではなく応答本文に含まれていることを意味します。

フィールド 必須 タイプ 説明
PageSize False Integer ページあたりのイベントの数
PageSizeParameterName False String ページ サイズのクエリ パラメーター名
NextPageUrl False String コネクタが Coralogix API 用の場合のみ
NextPageUrlQueryParameters False オブジェクト キーの値のペア – 次のページの各要求にカスタム クエリ パラメーターを追加する
NextPageParaName False String 要求の次のページ名を決定します。
HasNextFlagJsonPath False String HasNextPage フラグ属性へのパスを定義します。
NextPageRequestHeader False String 要求の次のページ ヘッダー名を決定します。
NextPageUrlQueryParametersTemplate False String コネクタが Coralogix API 用の場合のみ

例:

Paging: {
 "pagingType" : "NextPageUrl", 
  "nextPageTokenJsonPath" : "$.data.repository.pageInfo.endCursor", 
  "hasNextFlagJsonPath" : "$.data.repository.pageInfo.hasNextPage", 
  "nextPageUrl" : "https://api.github.com/graphql", 
  "nextPageUrlQueryParametersTemplate" : "{'query':'query{repository(owner:\"xyz\")}" 
}

NextPageToken または PersistentToken の構成

NextPageToken 改ページでは、現在のページの状態を表すトークン (ハッシュまたはカーソル) が使用されます。 トークンは API 応答に含まれており、クライアントは次の要求にトークンを追加して次のページをフェッチします。 この方法は、サーバーが要求間の正確な状態をメインする必要がある場合によく使用されます。

PersistentToken 改ページでは、サーバー側を保持するトークンが使用されます。 サーバーは、クライアントによって取得された最後のトークンを記憶し、後続の要求で次のトークンを提供します。 クライアントは、後で新しい要求を行った場合でも、中断した場所を続行します。

フィールド 必須 タイプ 説明
PageSize False Integer ページあたりのイベントの数
PageSizeParameterName False string ページ サイズのクエリ パラメーター名
NextPageTokenJsonPath False string 応答本文の次のページ トークンの JSON パス。
NextPageTokenResponseHeader False string 空の場合 NextPageTokenJsonPath は、次のページのこのヘッダー名にトークンを使用します。
NextPageParaName False string 要求の次のページ名を決定します。
HasNextFlagJsonPath False string 応答に残っている ページが増えているかどうかを判断するときに、HasNextPage フラグ属性へのパスを定義します。
NextPageRequestHeader False string 要求の次のページ ヘッダー名を決定します。

例 :

Paging: {
 "pagingType" : "NextPageToken", 
 "nextPageRequestHeader" : "ETag", 
 "nextPageTokenResponseHeader" : "ETag" 
}
Paging: {
 "pagingType" : "PersistentToken", 
    "nextPageParaName" : "gta", 
    "nextPageTokenJsonPath" : "$.alerts[-1:]._id" 
}

オフセットの構成

Offset pagination は、スキップするページ数と、要求のページごとに取得するイベントの数の制限を指定します。 クライアントは、データ セットから特定の範囲の項目をフェッチします。

フィールド 必須 タイプ 説明
PageSize False Integer ページあたりのイベントの数
PageSizeParameterName False String ページ サイズのクエリ パラメーター名
OffsetParaName False String 次の要求クエリ パラメーター名。 CCP は、各要求のオフセット値を計算します (取り込まれたすべてのイベント + 1)

例:

Paging: {
   
       "pagingType": "Offset", 
        "offsetParaName": "offset" 
 }

DCR の構成

フィールド 必須 タイプ 説明
DataCollectionEndpoint True String DCE (データ収集エンドポイント) 例: https://example.ingest.monitor.azure.com
DataCollectionRuleImmutableId True String DCR の変更できない ID。 DCR 作成応答を表示するか、DCR API を使用して検索します
StreamName True string この値は DCR で定義されています (プレフィックスは streamDeclaration Custom で始まる必要があります)

CCP データ コネクタの例

CCP データ コネクタ JSON のすべてのコンポーネントの一例を次に示します。

{
   "kind": "RestApiPoller",
   "properties": {
      "connectorDefinitionName": "ConnectorDefinitionExample",
      "dcrConfig": {
           "streamName": "Custom-ExampleConnectorInput",
           "dataCollectionEndpoint": "https://example-dce-sbsr.location.ingest.monitor.azure.com",
           "dataCollectionRuleImmutableId": "dcr-32_character_hexadecimal_id"
            },
      "dataType": "ExampleLogs",
      "auth": {
         "type": "Basic",
         "password": "[parameters('username')]",
         "userName": "[parameters('password')]"
      },
      "request": {
         "apiEndpoint": "https://rest.contoso.com/example",
         "rateLimitQPS": 10,
         "queryWindowInMin": 5,
         "httpMethod": "GET",
         "queryTimeFormat": "UnixTimestamp",
         "startTimeAttributeName": "t0",
         "endTimeAttributeName": "t1",
         "retryCount": 3,
         "timeoutInSeconds": 60,
         "headers": {
            "Accept": "application/json",
            "User-Agent": "Example-app-agent"
         } 
      },
      "paging": {
         "pagingType": "LinkHeader"
      },
      "response": {
         "eventsJsonPaths": ["$"]
      }
   }
}