Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Aby utworzyć łącznik danych za pomocą struktury łącznika bez kodu (CCF), użyj tego dokumentu jako dodatku do dokumentacji referencyjnej interfejsu API REST usługi Microsoft Sentinel dla definicji łącznika danych . W szczególności ten dokument referencyjny rozszerza się w następującej sekcji:
-
connectorUiConfig— definiuje elementy wizualne i tekst wyświetlany na stronie łącznika danych w usłudze Microsoft Sentinel.
Aby uzyskać więcej informacji, zobacz Tworzenie łącznika bez kodu.
Definicje łącznika danych — tworzenie lub aktualizowanie
Zapoznaj się z operacją Tworzenie lub aktualizowanie w dokumentacji interfejsu API REST, aby znaleźć najnowszą stabilną lub zapoznawczą wersję interfejsu API.
update Tylko operacja wymaga etag wartości.
PUT , metoda
https://management.azure.com/subscriptions/{{subscriptionId}}/resourceGroups/{{resourceGroupName}}/providers/Microsoft.OperationalInsights/workspaces/{{workspaceName}}/providers/Microsoft.SecurityInsights/dataConnectorDefinitions/{{dataConnectorDefinitionName}}?api-version={{apiVersion}}
Parametry identyfikatora URI
Aby uzyskać więcej informacji na temat najnowszej wersji interfejsu API, zobacz Definicje łącznika danych — tworzenie lub aktualizowanie parametrów identyfikatora URI
| Nazwa | Opis |
|---|---|
| dataConnectorDefinitionName | Definicja łącznika danych musi być unikatową nazwą i jest taka sama jak name parametr w treści żądania. |
| resourceGroupName | Nazwa grupy zasobów, a nie uwzględnia wielkości liter. |
| subscriptionId | Identyfikator subskrypcji docelowej. |
| workspaceName | Nazwa obszaru roboczego, a nie identyfikator. Wzorzec wyrażenia regularnego: ^[A-Za-z0-9][A-Za-z0-9-]+[A-Za-z0-9]$ |
| wersja API | Wersja interfejsu API do użycia dla tej operacji. |
Ciało żądania
Treść żądania tworzenia definicji łącznika danych CCF za pomocą interfejsu API ma następującą strukturę:
{
"kind": "Customizable",
"properties": {
"connectorUIConfig": {}
}
}
Element dataConnectorDefinition ma następujące właściwości:
| Nazwa | Wymagane | Typ | Opis |
|---|---|---|---|
| rodzaj | Prawda | Sznurek |
Customizable w przypadku łącznika danych sondowania interfejsu API lub Static w inny sposób |
| Właściwości. connectorUiConfig | Prawda | Zagnieżdżony kod JSON connectorUiConfig |
Właściwości konfiguracji interfejsu użytkownika łącznika danych |
Konfigurowanie interfejsu użytkownika łącznika
W tej sekcji opisano opcje konfiguracji dostępne do dostosowania interfejsu użytkownika strony łącznika danych.
Poniższy zrzut ekranu przedstawia stronę przykładowego łącznika danych wyróżnioną numerami odpowiadającymi godnym uwagi obszarom interfejsu użytkownika.
Każdy z poniższych connectorUiConfig elementów sekcji potrzebnych do skonfigurowania interfejsu użytkownika odpowiada części CustomableConnectorUiConfig interfejsu API.
| (No changes needed) | Wymagane | Typ | Opis | Zrzut ekranu przedstawiający obszar godny uwagi # |
|---|---|---|---|---|
| tytuł | Prawda | ciąg | Tytuł wyświetlany na stronie łącznika danych | 1 |
| id | ciąg | Ustawia identyfikator łącznika niestandardowego dla użycia wewnętrznego | ||
| logo | ciąg | Ścieżka do pliku obrazu w formacie SVG. Jeśli żadna wartość nie jest skonfigurowana, zostanie użyte domyślne logo. | 2 | |
| wydawca | Prawda | ciąg | Dostawca łącznika | 3 |
| descriptionMarkdown | Prawda | ciąg w języku znaczników markdown | Opis łącznika z możliwością dodawania języka markdown w celu jego ulepszenia. | 4 |
| sampleQueries | Prawda | Zagnieżdżony kod JSON sampleQueries |
Wysyła zapytanie do klienta, aby zrozumieć, jak znaleźć dane w dzienniku zdarzeń. | |
| graphQueries | Prawda | Zagnieżdżony kod JSON graphQueries |
Zapytania przedstawiające pozyskiwanie danych w ciągu ostatnich dwóch tygodni. Podaj jedno zapytanie dla wszystkich typów danych łącznika danych lub inne zapytanie dla każdego typu danych. |
5 |
| graphQueriesTableName | Ustawia nazwę tabeli, do których łącznik wstawia dane. Ta nazwa może być używana w innych zapytaniach, określając {{graphQueriesTableName}} symbol zastępczy w graphQueries wartościach i lastDataReceivedQuery . |
|||
| dataTypes | Prawda | Zagnieżdżony kod JSON dataTypes |
Lista wszystkich typów danych dla łącznika oraz zapytanie służące do pobierania czasu ostatniego zdarzenia dla każdego typu danych. | 6 |
| kryteria łączności | Prawda | Zagnieżdżony kod JSON kryteria łączności |
Obiekt, który definiuje, jak sprawdzić, czy łącznik jest połączony. | 7 |
| dostępność | Zagnieżdżony kod JSON dostępność |
Obiekt, który definiuje stan dostępności łącznika. | ||
| Uprawnienia | Prawda | Zagnieżdżony kod JSON Uprawnienia |
Informacje wyświetlane w sekcji Wymagania wstępne interfejsu użytkownika zawierające listę uprawnień wymaganych do włączenia lub wyłączenia łącznika. | 8 |
| instrukcjeKroki | Prawda | Zagnieżdżony kod JSON instrukcje |
Tablica części widżetów wyjaśniających sposób instalowania łącznika i kontrolek z możliwością akcji wyświetlanych na karcie Instrukcje . | 9 |
| isConnectivityCriteriasMatchSome | logiczny | Wartość logiczna wskazująca, czy należy używać elementów "OR"(SOME) lub "AND" między elementami ConnectivityCriteria. |
Kryteria łączności
| (No changes needed) | Wymagane | Typ | Opis |
|---|---|---|---|
| Typ | Prawda | Sznurek | Jedna z dwóch następujących opcji: HasDataConnectors — ta wartość jest najlepsza w przypadku łączników danych sondowania interfejsu API, takich jak CCF. Łącznik jest uznawany za połączony z co najmniej jednym aktywnym połączeniem.isConnectedQuery — ta wartość jest najlepsza dla innych typów łączników danych. Łącznik jest traktowany jako połączony, gdy podane zapytanie zwraca dane. |
| Wartość | Prawda, gdy typ ma wartość isConnectedQuery |
Sznurek | Zapytanie określające, czy dane są odbierane w określonym przedziale czasu. Przykład: CommonSecurityLog | where DeviceVendor == \"Vectra Networks\"\n| where DeviceProduct == \"X Series\"\n | summarize LastLogReceived = max(TimeGenerated)\n | project IsConnected = LastLogReceived > ago(7d)" |
typy danych
| Wartość tablicy | Typ | Opis |
|---|---|---|
| nazwa | Sznurek | Opis zrozumiały dla zmiennejlastDataReceivedQuery, w tym obsługa zmiennej graphQueriesTableName . Przykład: {{graphQueriesTableName}} |
| lastDataReceivedQuery | Sznurek | Zapytanie KQL zwracające jeden wiersz i wskazujące ostatni raz dane odebrane lub brak danych, jeśli nie ma wyników. Przykład: {{graphQueriesTableName}}\n | summarize Time = max(TimeGenerated)\n | where isnotempty(Time) |
graphQueries
Definiuje zapytanie, które przedstawia pozyskiwanie danych w ciągu ostatnich dwóch tygodni.
Podaj jedno zapytanie dla wszystkich typów danych łącznika danych lub inne zapytanie dla każdego typu danych.
| Wartość tablicy | Typ | Opis |
|---|---|---|
| metricName | Sznurek | Zrozumiała nazwa grafu. Przykład: Total data received |
| legenda | Sznurek | Ciąg wyświetlany w legendzie po prawej stronie wykresu, w tym odwołanie do zmiennej. Przykład: {{graphQueriesTableName}} |
| baseQuery | Sznurek | Zapytanie, które filtruje odpowiednie zdarzenia, zawierające odniesienie do zmiennej. Przykład: TableName_CL | where ProviderName == "myprovider" lub {{graphQueriesTableName}} |
availability
| (No changes needed) | Wymagane | Typ | Opis |
|---|---|---|---|
| stan | Integer | Stan dostępności łącznika. Dostępne = 1 Flaga funkcji = 2 Wkrótce = 3 Wewnętrzny = 4 |
|
| isPreview | logiczny | Wartość logiczna wskazująca, czy łącznik jest w trybie podglądu. |
uprawnienia
| Wartość tablicy | Typ | Opis |
|---|---|---|
| urząd celny | Sznurek | Opisuje wszelkie uprawnienia niestandardowe wymagane dla połączenia danych w następującej składni: {"name":ciąg,"description":struna} Przykład: wartość celna jest wyświetlana w sekcji Wymagania wstępne usługi Microsoft Sentinel z niebieską ikoną informacyjną. W przykładzie usługi GitHub ta wartość jest skorelowana z wierszem Klucz osobistego tokenu interfejsu API usługi GitHub: potrzebujesz dostępu do osobistego tokenu usługi GitHub... |
| Licencje | ENUM | Definiuje wymagane licencje jako jedną z następujących wartości: OfficeIRM,OfficeATP, Office365, AadP1P2McasAatpMdatp, , , , MtpIoT Przykład: wartość licencji jest wyświetlana w usłudze Microsoft Sentinel jako : Licencja: Wymagana usługa Azure AD — wersja Premium P2 |
| resourceProvider | resourceProvider | Opisuje wszelkie wymagania wstępne dotyczące zasobu platformy Azure. Przykład: wartość resourceProvider jest wyświetlana w sekcji Wymagania wstępne usługi Microsoft Sentinel jako: Obszar roboczy: wymagane jest uprawnienie do odczytu i zapisu. Klucze: wymagane są uprawnienia do odczytu kluczy udostępnionych dla obszaru roboczego. |
| najemca | tablica wartości ENUM Przykład: "tenant": ["GlobalADmin","SecurityAdmin"] |
Definiuje wymagane uprawnienia jako co najmniej jedną z następujących wartości: "GlobalAdmin", , "SecurityAdmin", "SecurityReader""InformationProtection" Przykład: wyświetla wartość dzierżawy w Microsoft Sentinel jako: Uprawnienia dzierżawy: Wymagane Global Administrator lub Security Administrator dla dzierżawy obszaru roboczego |
Ważne
Firma Microsoft rekomenduje używanie ról z najmniejszą liczbą uprawnień. Pomaga to zwiększyć bezpieczeństwo organizacji. Administrator globalny to wysoce uprzywilejowana rola, która powinna być ograniczona do scenariuszy awaryjnych, gdy nie można użyć istniejącej roli.
dostawca zasobów
| wartość podtablicy | Typ | Opis |
|---|---|---|
| dostawca | ENUM | Opisuje dostawcę zasobów z jedną z następujących wartości: - Microsoft.OperationalInsights/workspaces - Microsoft.OperationalInsights/solutions- Microsoft.OperationalInsights/workspaces/datasources- microsoft.aadiam/diagnosticSettings- Microsoft.OperationalInsights/workspaces/sharedKeys- Microsoft.Authorization/policyAssignments |
| providerDisplayName | Sznurek | Element listy w obszarze Wymagania wstępne , który wyświetla czerwony znacznik wyboru "x" lub zielony, gdy wymaganePermissions są weryfikowane na stronie łącznika. Przykład "Workspace" |
| tekstUprawnieńDoWyświetlenia | Sznurek | Wyświetlanie tekstu dla uprawnień do odczytu, zapisu lub odczytu i zapisu , które powinny odpowiadać wartościom skonfigurowanym w wymaganychpermisjach |
| requiredPermissions | {"action":Boolowski,"delete":Boolowski,"read":Boolowski,"write":Boolowski} |
Opisuje minimalne uprawnienia wymagane dla łącznika. |
| zakres | ENUM | Opisuje zakres łącznika danych jako jedną z następujących wartości: "Subscription", , "ResourceGroup""Workspace" |
przykładoweZapytania
| wartość tablicy | Typ | Opis |
|---|---|---|
| opis | Sznurek | Opis opisowy przykładowego zapytania. Przykład: Top 10 vulnerabilities detected |
| zapytanie | Sznurek | Przykładowe zapytanie używane do pobierania danych określonego typu. Przykład: {{graphQueriesTableName}}\n | sort by TimeGenerated\n | take 10 |
Konfigurowanie innych opcji linków
Aby zdefiniować link wbudowany przy użyciu języka Markdown, użyj poniższego przykładu.
{
"title": "",
"description": "Make sure to configure the machine's security according to your organization's security policy\n\n\n[Learn more >](https://aka.ms/SecureCEF)"
}
Aby zdefiniować link jako szablon ARM, użyj poniższego przykładu jako wskazówki:
{
"title": "Azure Resource Manager (ARM) template",
"description": "1. Click the **Deploy to Azure** button below.\n\n\t[]({URL to custom ARM template})"
}
kroki instrukcji
Ta sekcja zawiera parametry, które definiują zestaw instrukcji wyświetlanych na stronie łącznika danych w usłudze Microsoft Sentinel i mają następującą strukturę:
"instructionSteps": [
{
"title": "",
"description": "",
"instructions": [
{
"type": "",
"parameters": {}
}
],
"innerSteps": {}
}
]
| Właściwość tablicy | Wymagane | Typ | Opis |
|---|---|---|---|
| tytuł | Sznurek | Definiuje tytuł instrukcji. | |
| opis | Sznurek | Definiuje zrozumiały opis instrukcji. | |
| innerSteps | Tablica | Definiuje tablicę kroków instrukcji wewnętrznych. | |
| instrukcje | Prawda | Tablica instrukcji | Definiuje tablicę instrukcji określonego typu parametru. |
instrukcje
Przedstawia grupę instrukcji z różnymi parametrami i możliwością zagnieżdżania większej liczby instrukcjiKrok w grupach. Parametry zdefiniowane tutaj odpowiadają
| Typ | Właściwość Array | Opis |
|---|---|---|
| OAuthForm | OAuthForm | Nawiązywanie połączenia za pomocą protokołu OAuth |
| Pole tekstowe | Pole tekstowe | Ta para z parametrem ConnectionToggleButton. Dostępne są 4 typy:passwordtextnumberemail |
| ConnectionToggleButton | ConnectionToggleButton | Wyzwól wdrożenie kontrolera domeny na podstawie informacji o połączeniu dostarczonych za pomocą parametrów zastępczych. Obsługiwane są następujące parametry:name :obowiązkowydisabledisPrimaryconnectLabeldisconnectLabel |
| Etykieta do kopiowania | Etykieta do kopiowania | Pokazuje pole tekstowe z przyciskiem kopiowania na końcu. Po wybraniu przycisku wartość pola zostanie skopiowana. |
| Lista rozwijana | Lista rozwijana | Wyświetla listę rozwijaną opcji do wybrania przez użytkownika. |
| Markdown | Markdown | Wyświetla sekcję tekstu sformatowaną za pomocą języka Markdown. |
| DataConnectorsGrid | DataConnectorsGrid | Wyświetla siatkę łączników danych. |
| Kontekstowy przedział czasu | Kontekstowy przedział czasu | Wyświetla okienko informacji kontekstowych. |
| InfoMessage | InfoMessage | Definiuje wbudowany komunikat informacyjny. |
| GrupaKrokówInstrukcji | GrupaKrokówInstrukcji | Przedstawia grupę instrukcji, opcjonalnie rozwiniętych lub zwijanych, w oddzielnej sekcji instrukcji. |
| InstallAgent | InstallAgent | Wyświetla link do innych części platformy Azure w celu spełnienia różnych wymagań dotyczących instalacji. |
OAuthForm
Ten składnik wymaga obecności OAuth2 typu we auth właściwości szablonu łącznika danych.
"instructions": [
{
"type": "OAuthForm",
"parameters": {
"clientIdLabel": "Client ID",
"clientSecretLabel": "Client Secret",
"connectButtonLabel": "Connect",
"disconnectButtonLabel": "Disconnect"
}
}
]
Pole tekstowe
Oto kilka przykładów Textbox typu. Te przykłady odpowiadają parametrom używanym w przykładowej auth sekcji w dokumentacji łączników danych dla struktury łączników bez kodu. Dla każdego z 4 typów każdy ma labelwartości , placeholderi name.
"instructions": [
{
"type": "Textbox",
"parameters": {
{
"label": "User name",
"placeholder": "User name",
"type": "text",
"name": "username"
}
}
},
{
"type": "Textbox",
"parameters": {
"label": "Secret",
"placeholder": "Secret",
"type": "password",
"name": "password"
}
}
]
ConnectionToggleButton
"instructions": [
{
"type": "ConnectionToggleButton",
"parameters": {
"connectLabel": "toggle",
"name": "toggle"
}
}
]
Etykieta kopiowalna
Przykład:
przykładowy kod:
{
"parameters": {
"fillWith": [
"WorkspaceId",
"PrimaryKey"
],
"label": "Here are some values you'll need to proceed.",
"value": "Workspace is {0} and PrimaryKey is {1}"
},
"type": "CopyableLabel"
}
| Wartość tablicy | Wymagane | Typ | Opis |
|---|---|---|---|
| wypełnij | ENUM | Tablica zmiennych środowiskowych używanych do wypełnienia miejsca zastępczego. Rozdziel wiele elementów zastępczych przecinkami. Przykład: {0},{1} Obsługiwane wartości: workspaceId, , workspaceNameprimaryKey, , MicrosoftAwsAccountsubscriptionId |
|
| etykieta | Prawda | Sznurek | Definiuje tekst etykiety powyżej pola tekstowego. |
| wartość | Prawda | Sznurek | Definiuje wartość, która ma być obecna w polu tekstowym, obsługuje symbole zastępcze. |
| Wiersze | Wiersze | Definiuje wiersze w obszarze interfejsu użytkownika. Domyślnie ustaw wartość 1. | |
| wideLabel | logiczny | Określa szeroką etykietę dla długich ciągów. Domyślnie ustaw wartość false. |
Rozwijana
{
"parameters": {
"label": "Select an option",
"name": "dropdown",
"options": [
{
"key": "Option 1",
"text": "option1"
},
{
"key": "Option 2",
"text": "option2"
}
],
"placeholder": "Select an option",
"isMultiSelect": false,
"required": true,
"defaultAllSelected": false
},
"type": "Dropdown"
}
| (No changes needed) | Wymagane | Typ | Opis |
|---|---|---|---|
| etykieta | Prawda | Sznurek | Definiuje tekst etykiety powyżej listy rozwijanej. |
| nazwa | Prawda | Sznurek | Definiuje unikatową nazwę listy rozwijanej. Jest to używane w konfiguracji sondowania. |
| Opcje | Prawda | Tablica | Definiuje listę opcji listy rozwijanej. |
| Symbol zastępczy | Sznurek | Definiuje tekst zastępczy listy rozwijanej. | |
| isMultiSelect | logiczny | Określa, czy można wybrać wiele opcji. Domyślnie ustaw wartość false. |
|
| Wymagane | logiczny | Jeśli truelista rozwijana jest wymagana do wypełnienia. |
|
| defaultAllSelected | logiczny | Jeśli truewszystkie opcje są domyślnie zaznaczone. |
Markdown
{
"parameters": {
"content": "## This is a Markdown section\n\nYou can use **bold** text, _italic_ text, and even [links](https://www.example.com)."
},
"type": "Markdown"
}
DataConnectorsGrid
{
"type": "DataConnectorsGrid",
"parameters": {
"mapping": [
{
"columnName": "Column 1",
"columnValue": "Value 1"
},
{
"columnName": "Column 2",
"columnValue": "Value 2"
}
],
"menuItems": [
"MyConnector"
]
}
}
| (No changes needed) | Wymagane | Typ | Opis |
|---|---|---|---|
| mapowanie | Prawda | Tablica | Definiuje mapowanie kolumn w siatce. |
| menuItems | Tablica | Definiuje elementy menu dla siatki. |
Kontekstowy przedział czasu
{
"type": "ContextPane",
"parameters": {
"isPrimary": true,
"label": "Add Account",
"title": "Add Account",
"subtitle": "Add Account",
"contextPaneType": "DataConnectorsContextPane",
"instructionSteps": [
{
"instructions": [
{
"type": "Textbox",
"parameters": {
"label": "Snowflake Account Identifier",
"placeholder": "Enter Snowflake Account Identifier",
"type": "text",
"name": "accountId",
"validations": {
"required": true
}
}
},
{
"type": "Textbox",
"parameters": {
"label": "Snowflake PAT",
"placeholder": "Enter Snowflake PAT",
"type": "password",
"name": "apikey",
"validations": {
"required": true
}
}
}
]
}
]
}
}
| (No changes needed) | Wymagane | Typ | Opis |
|---|---|---|---|
| tytuł | Prawda | Sznurek | Tytuł okienka kontekstu. |
| podtytuł | Prawda | Sznurek | Podtytuł okienka kontekstu. |
| contextPaneType | Prawda | Sznurek | Typ okienka kontekstu. |
| instrukcjeKroki | Prawda | Tablica instrukcjeKroki |
Instrukcje dotyczące okienka kontekstu. |
| etykieta | Sznurek | Etykieta okienka kontekstu. | |
| isPrimary | logiczny | Wskazuje, czy jest to podstawowe okienko kontekstu. |
InfoMessage
Oto przykład komunikatu informacyjnego wbudowanego:
Z kolei na poniższej ilustracji przedstawiono komunikat informacyjny, który nie jest wbudowany:
| Wartość tablicy | Typ | Opis |
|---|---|---|
| tekst | Sznurek | Zdefiniuj tekst do wyświetlenia w wiadomości. |
| widoczny | logiczny | Określa, czy komunikat jest wyświetlany. |
| w wierszu | logiczny | Określa sposób wyświetlania komunikatu informacyjnego. - true: (Zalecane) Wyświetla komunikat informacyjny osadzony w instrukcjach. - false: Dodaje niebieskie tło. |
GrupaKrokówInstrukcji
Oto przykład rozszerzalnej grupy instrukcji:
| Wartość tablicy | Wymagane | Typ | Opis |
|---|---|---|---|
| tytuł | Prawda | Sznurek | Definiuje tytuł kroku instrukcji. |
| opis | Sznurek | Opcjonalny tekst opisowy. | |
| canCollapseAllSections | logiczny | Określa, czy sekcja ma formę zwijanego akordeonu. | |
| noFxPadding | logiczny | Jeśli true, zmniejsza wyściółkę wysokości, aby zaoszczędzić miejsce. |
|
| Rozszerzony | logiczny | Jeśli true jest wyświetlane jako rozwinięte domyślnie. |
Aby uzyskać szczegółowy przykład, zobacz konfigurację JSON łącznika DNS systemu Windows.
InstallAgent
Niektóre typy InstallAgent są wyświetlane jako przycisk, inne są wyświetlane jako link. Oto przykłady obu tych elementów:
| Wartości tablicy | Wymagane | Typ | Opis |
|---|---|---|---|
| linkType | Prawda | ENUM | Określa typ łącza jako jedną z następujących wartości: InstallAgentOnWindowsVirtualMachineInstallAgentOnWindowsNonAzureInstallAgentOnLinuxVirtualMachineInstallAgentOnLinuxNonAzureOpenSyslogSettingsOpenCustomLogsSettingsOpenWafOpenAzureFirewall
OpenMicrosoftAzureMonitoring
OpenFrontDoors OpenCdnProfile AutomaticDeploymentCEF OpenAzureInformationProtection OpenAzureActivityLog OpenIotPricingModel OpenPolicyAssignment OpenAllAssignmentsBlade OpenCreateDataCollectionRule |
| policyDefinitionGuid | Wartość true w przypadku używania parametru OpenPolicyAssignment linkType. |
Sznurek | Dla łączników opartych na zasadach definiuje identyfikator GUID wbudowanej definicji polityki. |
| assignMode | ENUM | W przypadku łączników opartych na zasadach definiuje tryb przypisywania jako jedną z następujących wartości: Initiative, Policy |
|
| typRegułyZbieraniaDanych | ENUM | W przypadku łączników opartych na kontrolerze domeny definiuje typ reguły zbierania danych jako SecurityEvent, lub ForwardEvent. |
Przykładowa definicja łącznika danych
Poniższy przykład łączy niektóre składniki zdefiniowane w tym artykule jako format treści JSON do użycia z interfejsem API definicji łącznika tworzenia lub aktualizowania danych.
Aby uzyskać więcej przykładów przeglądu connectorUiConfig danych CCF. Nawet łączniki korzystające ze starszej wersji CCF zawierają prawidłowe przykłady tworzenia interfejsu użytkownika.
{
"kind": "Customizable",
"properties": {
"connectorUiConfig": {
"title": "Example CCF Data Connector",
"publisher": "My Company",
"descriptionMarkdown": "This is an example of data connector",
"graphQueriesTableName": "ExampleConnectorAlerts_CL",
"graphQueries": [
{
"metricName": "Alerts received",
"legend": "My data connector alerts",
"baseQuery": "{{graphQueriesTableName}}"
},
{
"metricName": "Events received",
"legend": "My data connector events",
"baseQuery": "ASIMFileEventLogs"
}
],
"sampleQueries": [
{
"description": "All alert logs",
"query": "{{graphQueriesTableName}} \n | take 10"
}
],
"dataTypes": [
{
"name": "{{graphQueriesTableName}}",
"lastDataReceivedQuery": "{{graphQueriesTableName}} \n | summarize Time = max(TimeGenerated)\n | where isnotempty(Time)"
},
{
"name": "ASIMFileEventLogs",
"lastDataReceivedQuery": "ASIMFileEventLogs \n | summarize Time = max(TimeGenerated)\n | where isnotempty(Time)"
}
],
"connectivityCriteria": [
{
"type": "HasDataConnectors"
}
],
"permissions": {
"resourceProvider": [
{
"provider": "Microsoft.OperationalInsights/workspaces",
"permissionsDisplayText": "Read and Write permissions are required.",
"providerDisplayName": "Workspace",
"scope": "Workspace",
"requiredPermissions": {
"write": true,
"read": true,
"delete": true
}
},
],
"customs": [
{
"name": "Example Connector API Key",
"description": "The connector API key username and password is required"
}
]
},
"instructionSteps": [
{
"title": "Connect My Connector to Microsoft Sentinel",
"description": "To enable the connector provide the required information below and click on Connect.\n>",
"instructions": [
{
"type": "Textbox",
"parameters": {
"label": "User name",
"placeholder": "User name",
"type": "text",
"name": "username"
}
},
{
"type": "Textbox",
"parameters": {
"label": "Secret",
"placeholder": "Secret",
"type": "password",
"name": "password"
}
},
{
"type": "ConnectionToggleButton",
"parameters": {
"connectLabel": "toggle",
"name": "toggle"
}
}
]
}
]
}
}
}