Sdílet prostřednictvím


Referenční informace k datovým konektorům pro platformu Připojení or Codeless

Pokud chcete vytvořit datový konektor s platformou PŘIPOJENÍ or Platform (CCP), použijte tento dokument jako doplněk k rozhraní REST API služby Microsoft Sentinel pro data Připojení orové referenční dokumentaci. Konkrétně tento referenční dokument rozšiřuje následující podrobnosti:

  • Druh datového konektoru, RestApiPollerkterý se používá pro ústřední protistranu.
  • Konfigurace autorizace
  • Možnosti konfigurace požadavků na zdroj dat a odpovědi
  • Možnosti stránkování datového proudu
  • Mapa pravidel shromažďování dat

Každá dataConnector představuje konkrétní připojení datového konektoru Microsoft Sentinelu. Jeden datový konektor může mít více připojení, která načítají data z různých koncových bodů. Konfigurace JSON vytvořená pomocí tohoto referenčního dokumentu slouží k dokončení šablony nasazení datového konektoru ÚSTŘEDNÍ PROTISTRANY.

Další informace najdete v tématu Vytvoření bezkódového konektoru pro Microsoft Sentinel.

Data Připojení ors – Vytvoření nebo aktualizace

Pokud chcete najít nejnovější stabilní verzi rozhraní API nebo verzi Preview, projděte si operaci vytvoření nebo aktualizace v dokumentaci k rozhraní REST API. Rozdíl mezi vytvořením a operací aktualizace je, že aktualizace vyžaduje hodnotu značky etag.

Metoda PUT

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

Parametry identifikátoru URI

Další informace o nejnovější verzi rozhraní API najdete v tématu Data Připojení ors – Vytvoření nebo aktualizace parametrů identifikátoru URI.

Název Popis
data Připojení orId ID datového konektoru musí být jedinečný název a je stejný jako name parametr v textu požadavku.
resourceGroupName Název skupiny prostředků, nerozlišuje se malá a velká písmena.
subscriptionId ID cílového předplatného.
workspaceName Název pracovního prostoru, nikoli ID.
Vzor regulárních výrazů: ^[A-Za-z0-9][A-Za-z0-9-]+[A-Za-z0-9]$
api-version Verze rozhraní API, která se má použít pro tuto operaci.

Text požadavku

Subjekt žádosti pro datový konektor ústřední protistrany má následující strukturu:

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

RestApiPoller představuje konektor Rozhraní API Poller bez kódu.

Název Požadováno Type Popis
Jméno True string Jedinečný název připojení odpovídající parametru URI
Druhu True string Musí být RestApiPoller
Etag Identifikátor GUID Vytváření nových konektorů nechte prázdné. V případě operací aktualizace musí etag odpovídat značkě etag (GUID) existujícího konektoru.
properties.connectorDefinitionName string Název prostředku Data Připojení orDefinition, který definuje konfiguraci uživatelského rozhraní datového konektoru. Další informace naleznete v tématu Definice Připojení or dat.
Vlastnosti.Auth True Vnořený JSON Popisuje vlastnosti ověřování pro dotazování dat. Další informace najdete v tématu Konfigurace ověřování.
Vlastnosti.Požadavek True Vnořený JSON Popisuje datovou část požadavku pro dotazování dat, jako je koncový bod rozhraní API. Další informace najdete v tématu Konfigurace požadavku.
Vlastnosti.Reakce True Vnořený JSON Popisuje objekt odpovědi a vnořenou zprávu vrácenou z rozhraní API při dotazování dat. Další informace najdete v tématu Konfigurace odpovědi.
Vlastnosti.Stránkování Vnořený JSON Popisuje datovou část stránkování při dotazování dat. Další informace najdete v tématu Konfigurace stránkování.
Vlastnosti.dcrConfig Vnořený JSON Požadované parametry při odeslání dat do pravidla shromažďování dat (DCR). Další informace najdete v tématu Konfigurace DCR.

Konfigurace ověřování

Ústřední protistrana podporuje následující typy ověřování:

Poznámka:

Implementace ÚSTŘEDNÍ PROTISTRANY OAuth2 nepodporuje přihlašovací údaje certifikátu.

Osvědčeným postupem je použít parametry v části ověřování místo pevně zakódovaných přihlašovacích údajů. Další informace najdete v tématu Zabezpečení důvěrného vstupu.

Chcete-li vytvořit šablonu nasazení, která také používá parametry, musíte utéct parametry v této části s dodatečným spuštěním [. To umožňuje parametrům přiřadit hodnotu na základě interakce uživatele s konektorem. Další informace naleznete v tématu Výrazy šablony řídicí znaky.

Pokud chcete povolit zadání přihlašovacích údajů z uživatelského rozhraní, connectorUIConfig oddíl vyžaduje instructions požadované parametry. Další informace najdete v tématu Referenční informace o definicích datových konektorů pro platformu Připojení or Codeless.

Základní ověřování

Pole Požaduje se Typ
UserName True string
Heslo True string

Příklad základního ověřování pomocí parametrů definovaných v connectorUIconfig:

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

Klíč rozhraní API

Pole Požaduje se Type Popis Default value
Klíč rozhraní API True string tajný klíč uživatele
ApiKeyName string název hlavičky identifikátoru URI obsahující hodnotu ApiKey Authorization
ApiKeyIdentifier string řetězcová hodnota pro předpendí tokenu token
IsApiKeyInPostPayload boolean Odeslání tajného kódu v textu POST místo hlavičky false

Příklady ověřování APIKey:

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

Výsledkem tohoto příkladu je tajný klíč definovaný ze vstupu uživatele odeslaného v následující hlavičce: X-MyApp-Auth-Header: Bearer apikey

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

Tento příklad používá výchozí hodnoty a výsledkem je následující hlavička: Autorizace: token 123123123

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

Vzhledem k tomu, že ApiKeyName je explicitně nastavená "", je výsledkem následující hlavička: Autorizace: 123123123

OAuth2

Platforma Připojení or bez kódu podporuje udělení autorizačního kódu OAuth 2.0 a přihlašovací údaje klienta. Typ udělení autorizačního kódu používají důvěrní a veřejná klienti k výměně autorizačního kódu pro přístupový token. Jakmile se uživatel vrátí klientovi přes adresu URL přesměrování, aplikace získá autorizační kód z adresy URL a použije ho k vyžádání přístupového tokenu.

Pole Požaduje se Type Popis
Clientid True String ID klienta
ClientSecret True String Tajný klíč klienta
AuthorizationCode True when grantType = authorization_code String Pokud je authorization_code typem grantu tato hodnota pole, bude autorizační kód vrácený z ověřovací služby.
Scope True pro authorization_code typ grantu
volitelné pro client_credentials typ grantu
String Seznam oborů oddělených mezerami pro souhlas uživatele. Další informace najdete v tématu Rozsahy a oprávnění OAuth2.
Identifikátor REDIRECTURI True when grantType = authorization_code String Adresa URL pro přesměrování musí být https://portal.azure.com/TokenAuthorize/ExtensionName/Microsoft_Azure_Security_Insights
GrantType True String authorization_code nebo client_credentials
TokenEndpoint True String Adresa URL pro výměnu kódu s platným tokenem v authorization_code grantu nebo ID klienta a tajném kódu s platným tokenem v client_credentials udělení.
TokenEndpointHeaders Object Volitelný objekt hodnoty klíče pro odesílání vlastních hlaviček na server tokenů
TokenEndpointQueryParameters Object Volitelný objekt hodnoty klíče pro odesílání parametrů vlastního dotazu na server tokenů
AuthorizationEndpoint True String Adresa URL souhlasu uživatele pro authorization_code tok
AuthorizationEndpointHeaders Object Volitelný objekt hodnoty klíče pro odesílání vlastních hlaviček na server ověřování
AuthorizationEndpointQueryParameters Object Volitelný pár hodnot klíče použitý v požadavku na tok autorizačního kódu OAuth2

Tok ověřovacího kódu slouží k načítání dat jménem oprávnění uživatele a přihlašovacích údajů klienta pro načítání dat s oprávněními aplikace. Datový server uděluje přístup k aplikaci. Vzhledem k tomu, že v toku přihlašovacích údajů klienta není žádný uživatel, není potřeba žádný koncový bod autorizace, pouze koncový bod tokenu.

Příklad: Udělení ověřovacího kódu 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"
}

Příklad:

"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"
}

Konfigurace požadavku

Oddíl požadavku definuje, jak datový konektor ÚSTŘEDNÍ PROTISTRANy odesílá požadavky do vašeho zdroje dat, jako je koncový bod rozhraní API a jak často se má tento koncový bod dotazovat.

Pole Požaduje se Type Popis
ApiEndpoint True String Adresa URL pro vzdálený server. Definuje koncový bod, ze které se mají načíst data.
RateLimitQPS Celé číslo Definuje počet volání nebo dotazů povolených za sekundu.
QueryWindowInMin Celé číslo Definuje dostupné okno dotazu v minutách. Minimum je 1 minuta. Výchozí hodnota je 5 minut.
HttpMethod String Definuje metodu rozhraní API: GET(výchozí) nebo POST
QueryTimeFormat String Definuje formát data a času, který koncový bod (vzdálený server) očekává. Ústřední protistrana používá aktuální datum a čas všude, kde se tato proměnná používá. Možné hodnoty jsou konstanty: UnixTimestampnebo UnixTimestampInMills jakékoli jiné platné vyjádření data a času, například: yyyy-MM-dd, MM/dd/yyyy HH:mm:ss
výchozí hodnota je ISO 8601 UTC
RetryCount Celé číslo (1...6) 1 Definuje opakované 6 pokusy, které se můžou zotavit z selhání. Výchozí hodnota je 3.
TimeoutInSeconds Celé číslo (1...180) Definuje časový limit požadavku v sekundách. Výchozí hodnota je 20
IsPostPayloadJson Logická hodnota Určuje, jestli je datová část POST ve formátu JSON. Výchozí hodnota je false
Záhlaví Object Páry klíčových hodnot, které definují hlavičky požadavku.
QueryParameters Object Páry klíčových hodnot, které definují parametry dotazu požadavku.
StartTimeAttributeName True when EndTimeAttributeName is set String Definuje název parametru dotazu pro čas zahájení dotazu. Viz příklad.
EndTimeAttributeName True when StartTimeAttributeName is set String Definuje název parametru dotazu pro koncový čas dotazu.
QueryTimeIntervalAttributeName String Pokud koncový bod vyžaduje specializovaný formát pro dotazování dat v časovém rámci, použijte tuto vlastnost s QueryTimeIntervalPrepend parametry a parametry QueryTimeIntervalDelimiter . Viz příklad.
QueryTimeIntervalPrepend True when QueryTimeIntervalAttributeName is set String Viz QueryTimeIntervalAttributeName.
QueryTimeIntervalDelimiter True when QueryTimeIntervalAttributeName is set String Viz QueryTimeIntervalAttributeName.
QueryParametersTemplate String Šablona dotazu, která se má použít při předávání parametrů v pokročilých scénářích
>příklad:"queryParametersTemplate": "{'cid': 1234567, 'cmd': 'reporting', 'format': 'siem', 'data': { 'from': '{_QueryWindowStartTime}', 'to': '{_QueryWindowEndTime}'}, '{_APIKeyName}': '{_APIKey}'}"

Pokud rozhraní API vyžaduje složité parametry, použijte queryParameters předdefinované proměnné nebo queryParametersTemplate které obsahují některé předdefinované proměnné.

integrovaná proměnná pro použití v queryParameters pro použití v queryParametersTemplate
_QueryWindowStartTime ano ano
_QueryWindowEndTime ano ano
_APIKeyName ne ano
_APIKey ne ano

Příklad StartTimeAttributeName

Podívejte se na tento příklad:

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

Dotaz odeslaný na vzdálený server je: https://www.example.com?from={QueryTimeFormat}&until={QueryTimeFormat + QueryWindowInMin}

Příklad QueryTimeIntervalAttributeName

Podívejte se na tento příklad:

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

Dotaz odeslaný na vzdálený server je: https://www.example.com?interval=time:{QueryTimeFormat}..{QueryTimeFormat + QueryWindowInMin}

Příklady požadavků s využitím rozhraní MICROSOFT Graph jako rozhraní API zdroje dat

Tento příklad dotazuje zprávy s parametrem dotazu filtru. Další informace najdete v tématu Parametry dotazu rozhraní 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 "
}

Předchozí příklad odešle GET požadavek na https://graph.microsoft.com/v1.0/me/messages?filter=receivedDateTime gt {time of request} and receivedDateTime lt 2019-09-01T17:00:00.0000000. Časové razítko se aktualizuje pokaždé queryWindowInMin .

Stejných výsledků dosáhnete v tomto příkladu:

"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}"
  }
}

Další možností je, když zdroj dat očekává 2 parametry dotazu, jeden pro počáteční čas a jeden pro koncový čas.

Příklad:

"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",
}

Tím se GET odešle žádost na adresu https://graph.microsoft.com/me/calendarView?startDateTime=2019-09-01T09:00:00.0000000&endDateTime=2019-09-01T17:00:00.0000000

Pro složité dotazy použijte QueryParametersTemplate. Tento další příklad odešle POST požadavek s parametry v textu.

Příklad:

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}))\"}"
}

Konfigurace odpovědi

Definujte zpracování odpovědí datového konektoru s následujícími parametry:

Pole Požaduje se Type Popis
EventsJsonPaths True Seznam řetězců Definuje cestu ke zprávě ve formátu JSON odpovědi. Výraz cesty JSON určuje cestu k elementu nebo sadě elementů ve struktuře JSON.
SuccessStatusJsonPath String Definuje cestu ke zprávě o úspěchu ve formátu JSON odpovědi. Při definování tohoto parametru SuccessStatusValue by měl být také definován parametr.
SuccessStatusValue String Definuje cestu k hodnotě úspěšné zprávy ve formátu JSON odpovědi.
IsGzipCompressed Logická hodnota Určuje, zda je odpověď komprimována v souboru gzip.
format True String jsonnebo csvxml
CompressionAlgo String Algoritmus komprese, buď multi-gzip nebo deflate. Pro algoritmus komprese gzip stačí nakonfigurovat IsGzipCompressedTrue místo nastavení hodnoty pro tento parametr.
CsvDelimiter String Pokud je formát odpovědi CSV a chcete změnit výchozí oddělovač sdíleného svazku clusteru ","
HasCsvBoundary Logická hodnota Označuje, jestli data CSV mají hranici.
HasCsvHeader Logická hodnota Označuje, jestli data CSV obsahují záhlaví, výchozí hodnota je True
CsvEscape String Řídicí znak pro hranici pole, výchozí hodnota je "

Například sdílený svazek clusteru se záhlavími a řádkem dat obsahujícími mezery id,name,avg , například 1,"my name",5.5 vyžaduje " hranici pole.
ConvertChildPropertiesToArray Logická hodnota Speciální případ, kdy vzdálený server vrátí objekt místo seznamu událostí, ve kterých každá vlastnost obsahuje data.

Poznámka:

Typ formátu CSV se analyzuje podle specifikace RFC4180 .

Příklady konfigurace odpovědí

Očekává se odpověď serveru s formátem JSON s požadovanými daty v hodnotě vlastnosti. Stav vlastnosti odpovědi označuje příjem dat pouze v případě, že je successhodnota .

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

Očekávaná odpověď v tomto příkladu se připraví na sdílený svazek clusteru bez hlavičky.

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

Konfigurace stránkování

Pokud zdroj dat nemůže odeslat celou datovou část odpovědi najednou, musí datový konektor ústřední protistrany vědět, jak přijímat části dat na stránkách odpovědí. Typy stránkování, ze které si můžete vybrat, jsou:

Typ stránkování rozhodovací faktor
Obsahuje odpověď rozhraní API odkazy na další a předchozí stránky?
Má odpověď rozhraní API token nebo kurzor na další a předchozí stránky?
Podporuje odpověď rozhraní API parametr pro počet objektů, které se mají při stránkování přeskočit?

Konfigurace LinkHeaderu nebo PersistentLinkHeaderu

Nejběžnějším stránkovacím typem je, že rozhraní API zdroje dat serveru poskytuje adresy URL na další a předchozí stránky dat. Další informace o specifikaci hlavičky odkazu naleznete v dokumentu RFC 5988.

LinkHeader stránkování znamená, že odpověď rozhraní API zahrnuje:

  • hlavička Link odpovědi HTTP
  • nebo cestu JSON, která načte odkaz z textu odpovědi.

PersistentLinkHeader stránkování má stejné vlastnosti jako LinkHeaderv back-endovém úložišti s výjimkou záhlaví odkazu. Tato možnost umožňuje stránkování odkazů napříč okny dotazů. Některá rozhraní API například nepodporují časy spuštění dotazu nebo koncové časy. Místo toho podporují kurzor na straně serveru. Trvalé typy stránek lze použít k zapamatu kurzoru na straně serveru. Další informace naleznete v tématu Co je kurzor?.

Poznámka:

Pro konektor s PersistentLinkHeaderem může běžet jenom jeden dotaz, aby se zabránilo konfliktům časování na straně serveru. To může mít vliv na latenci.

Pole Požaduje se Type Popis
LinkHeaderTokenJsonPath False String Pomocí této vlastnosti můžete určit, kde získat hodnotu v textu odpovědi.

Pokud například zdroj dat vrátí následující kód JSON: { nextPage: "foo", value: [{data}]}LinkHeaderTokenJsonPath$.nextPage
Pagesize False Celé číslo Kolik událostí na stránku
PageSizeParameterName False String Název parametru dotazu pro velikost stránky

Několik příkladů:

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

Konfigurace nextPageUrl

NextPageUrl stránkování znamená, že odpověď rozhraní API obsahuje složitý odkaz v textu odpovědi podobnému LinkHeader, ale adresa URL je součástí textu odpovědi místo hlavičky.

Pole Požaduje se Type Popis
Pagesize False Celé číslo Kolik událostí na stránku
PageSizeParameterName False String Název parametru dotazu pro velikost stránky
NextPageUrl False String Pouze pokud je konektor pro rozhraní Coralogix API
NextPageUrlQueryParameters False Páry hodnot klíče objektu – přidání vlastního parametru dotazu do každého požadavku na další stránku
NextPageParaName False String Určuje název další stránky v požadavku.
HasNextFlagJsonPath False String Definuje cestu k atributu příznaku HasNextPage.
NextPageRequestHeader False String Určuje název záhlaví další stránky v požadavku.
NextPageUrlQueryParametersTemplate False String Pouze pokud je konektor pro rozhraní Coralogix API

Příklad:

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\")}" 
}

Konfigurace NextPageTokenu nebo PersistentTokenu

NextPageToken stránkování používá token (hash nebo kurzor), který představuje stav aktuální stránky. Token je součástí odpovědi rozhraní API a klient ho připojí k dalšímu požadavku, který načte další stránku. Tato metoda se často používá, když server potřebuje udržovat přesný stav mezi požadavky.

PersistentToken stránkování používá token, který zachovává serverovou stranu. Server si pamatuje poslední token načtený klientem a v následných požadavcích poskytne další token. Klient pokračuje tam, kde skončil, i když později provede nové žádosti.

Pole Požaduje se Type Popis
Pagesize False Celé číslo Kolik událostí na stránku
PageSizeParameterName False string Název parametru dotazu pro velikost stránky
NextPageTokenJsonPath False string Cesta JSON pro další token stránky v textu odpovědi
NextPageTokenResponseHeader False string Pokud NextPageTokenJsonPath je prázdný, použijte token v tomto názvu záhlaví pro další stránku.
NextPageParaName False string Určuje název další stránky v požadavku.
HasNextFlagJsonPath False string Definuje cestu k atributu příznaku HasNextPage při určování, zda jsou v odpovědi ponechány více stránek.
NextPageRequestHeader False string Určuje název záhlaví další stránky v požadavku.

Příklady:

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

Konfigurace posunu

Offset stránkování určuje počet stránek, které se mají přeskočit, a omezení počtu událostí, které se mají načíst na stránku v požadavku. Klienti načítají z datové sady konkrétní rozsah položek.

Pole Požaduje se Type Popis
Pagesize False Celé číslo Kolik událostí na stránku
PageSizeParameterName False String Název parametru dotazu pro velikost stránky
OffsetParaName False String Název dalšího parametru dotazu požadavku. Ústřední protistrana vypočítá hodnotu posunu pro každou žádost (všechny ingestované události + 1)

Příklad:

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

Konfigurace DCR

Pole Požaduje se Type Popis
DataCollectionEndpoint True String DCE (koncový bod shromažďování dat), například: https://example.ingest.monitor.azure.com.
DataCollectionRuleImmutableId True String Neměnné ID DCR. Najděte ji zobrazením odpovědi na vytvoření DCR nebo pomocí rozhraní API DCR.
Název streamu True string Tato hodnota je definovaná streamDeclaration v DCR (předpona musí začínat na custom-).

Příklad datového konektoru PRO ÚSTŘEDNÍ PROTISTRANU

Tady je příklad všech součástí JSON datového konektoru ÚSTŘEDNÍ PROTISTRANy.

{
   "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": ["$"]
      }
   }
}