Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Als u een gegevensconnector wilt maken met het Codeless Connector Framework (CCF), gebruikt u dit document als aanvulling op de referentiedocumenten Microsoft Sentinel REST API for Data Connector Definitions. In dit referentiedocument wordt de volgende sectie uitgebreid:
-
connectorUiConfig- definieert de visuele elementen en tekst die worden weergegeven op de gegevensconnectorpagina in Microsoft Sentinel.
Zie Een connector zonder code maken voor meer informatie.
Definities van gegevensconnector - Maken of bijwerken
Raadpleeg de bewerking Maken of Bijwerken in de REST API-documenten om de nieuwste stabiele of preview-API-versie te vinden. Alleen voor de update bewerking is de etag waarde vereist.
PUT-methode
https://management.azure.com/subscriptions/{{subscriptionId}}/resourceGroups/{{resourceGroupName}}/providers/Microsoft.OperationalInsights/workspaces/{{workspaceName}}/providers/Microsoft.SecurityInsights/dataConnectorDefinitions/{{dataConnectorDefinitionName}}?api-version={{apiVersion}}
URI-parameters
Zie Definities van gegevensconnector - URI-parameters maken of bijwerken voor meer informatie over de nieuwste API-versie
| Naam | Beschrijving |
|---|---|
| dataConnectorDefinitionName | De definitie van de gegevensconnector moet een unieke naam hebben en dezelfde is als de name parameter in de aanvraagbody. |
| resourceGroupName | De naam van de resourcegroep, niet hoofdlettergevoelig. |
| subscriptionId | De id van het doelabonnement. |
| workspaceName | De naam van de werkruimte, niet de id. Regex-patroon: ^[A-Za-z0-9][A-Za-z0-9-]+[A-Za-z0-9]$ |
| api-versie | De API-versie die voor deze bewerking moet worden gebruikt. |
Aanvraagtekst
De aanvraagbody voor het maken van een CCF-gegevensconnectordefinitie met de API heeft de volgende structuur:
{
"kind": "Customizable",
"properties": {
"connectorUIConfig": {}
}
}
dataConnectorDefinition heeft de volgende eigenschappen:
| Naam | Vereist | Type | Beschrijving |
|---|---|---|---|
| Soort | Waar | Tekenreeks |
Customizable voor API polling-gegevensconnector of Static anderszins |
| Eigenschappen. connectorUiConfig | Waar | Geneste JSON connectorUiConfig |
De ui-configuratie-eigenschappen van de gegevensconnector |
De gebruikersinterface van uw connector configureren
In deze sectie worden de configuratieopties beschreven die beschikbaar zijn om de gebruikersinterface van de gegevensconnectorpagina aan te passen.
In de volgende schermopname ziet u een voorbeeldpagina voor gegevensconnector, gemarkeerd met getallen die overeenkomen met belangrijke gebieden van de gebruikersinterface.
Elk van de volgende elementen van de connectorUiConfig sectie die nodig is om de gebruikersinterface te configureren, komt overeen met het gedeelte CustomizableConnectorUiConfig van de API.
| Veld | Vereist | Type | Beschrijving | Schermopname van opmerkelijk gebied # |
|---|---|---|---|---|
| Titel | Waar | tekenreeks | Titel die wordt weergegeven op de pagina van de gegevensconnector | 1 |
| in | tekenreeks | Hiermee stelt u de id van de aangepaste connector in voor intern gebruik | ||
| Logo | tekenreeks | Pad naar afbeeldingsbestand in SVG-indeling. Als er geen waarde is geconfigureerd, wordt een standaardlogo gebruikt. | 2 | |
| Publisher | Waar | tekenreeks | De provider van de connector | 3 |
| beschrijvingMarkdown | Waar | tekenreeks in markdown | Een beschrijving voor de connector met de mogelijkheid om markdown-taal toe te voegen om deze te verbeteren. | 4 |
| sampleQueries | Waar | Geneste JSON sampleQueries |
Query's voor de klant om te begrijpen hoe de gegevens in het gebeurtenislogboek kunnen worden gevonden. | |
| graphQueries | Waar | Geneste JSON graphQueries |
Query's met gegevensopname in de afgelopen twee weken. Geef één query op voor alle gegevenstypen van de gegevensconnector of een andere query voor elk gegevenstype. |
5 |
| graphQueriesTableName | Hiermee stelt u de naam in van de tabel waaraan de connector gegevens invoegt. Deze naam kan in andere query's worden gebruikt door een tijdelijke aanduiding in graphQueries en lastDataReceivedQuery op te {{graphQueriesTableName}} geven. |
|||
| Datatypes | Waar | Geneste JSON Datatypes |
Een lijst met alle gegevenstypen voor uw connector en een query om de tijd van de laatste gebeurtenis voor elk gegevenstype op te halen. | 6 |
| connectivityCriteria | Waar | Geneste JSON connectivityCriteria |
Een object dat definieert hoe u kunt controleren of de connector is verbonden. | 7 |
| Beschikbaarheid | Geneste JSON Beschikbaarheid |
Een object dat de beschikbaarheidsstatus van de connector definieert. | ||
| Machtigingen | Waar | Geneste JSON Machtigingen |
De informatie die wordt weergegeven in de sectie Vereisten van de gebruikersinterface, waarin de machtigingen worden vermeld die nodig zijn om de connector in of uit te schakelen. | 8 |
| instructionSteps | Waar | Geneste JSON Instructies |
Een matrix met widgetonderdelen waarin wordt uitgelegd hoe u de connector installeert en besturingselementen die kunnen worden uitgevoerd op het tabblad Instructies . | 9 |
| isConnectivityCriteriasMatchSome | Booleaanse waarde | Een booleaanse waarde die aangeeft of u 'OR'(SOME) of 'AND' moet gebruiken tussen ConnectivityCriteria-items. |
connectivityCriteria
| Veld | Vereist | Type | Beschrijving |
|---|---|---|---|
| Type | Waar | Tekenreeks | Een van de twee volgende opties: HasDataConnectors - deze waarde is het beste voor API-pollinggegevensconnectors, zoals de CCF. De connector wordt beschouwd als verbonden met ten minste één actieve verbinding.isConnectedQuery – deze waarde is het meest geschikt voor andere typen gegevensconnectors. De connector wordt beschouwd als verbonden wanneer de opgegeven query gegevens retourneert. |
| Waarde | Waar wanneer het type is isConnectedQuery |
Tekenreeks | Een query om te bepalen of gegevens binnen een bepaalde periode worden ontvangen. Bijvoorbeeld:CommonSecurityLog | where DeviceVendor == \"Vectra Networks\"\n| where DeviceProduct == \"X Series\"\n | summarize LastLogReceived = max(TimeGenerated)\n | project IsConnected = LastLogReceived > ago(7d)" |
Datatypes
| Matrixwaarde | Type | Beschrijving |
|---|---|---|
| Naam | Tekenreeks | Een zinvolle beschrijving voor delastDataReceivedQuery, inclusief ondersteuning voor de graphQueriesTableName variabele. Voorbeeld: {{graphQueriesTableName}} |
| lastDataReceivedQuery | Tekenreeks | Een KQL-query die één rij retourneert en de laatste keer aangeeft dat gegevens zijn ontvangen, of geen gegevens als er geen resultaten zijn. Voorbeeld: {{graphQueriesTableName}}\n | summarize Time = max(TimeGenerated)\n | where isnotempty(Time) |
graphQueries
Definieert een query die gegevensopname over de afgelopen twee weken weergeeft.
Geef één query op voor alle gegevenstypen van de gegevensconnector of een andere query voor elk gegevenstype.
| Matrixwaarde | Type | Beschrijving |
|---|---|---|
| metricName | Tekenreeks | Een duidelijke naam voor uw grafiek. Voorbeeld: Total data received |
| Legende | Tekenreeks | De tekenreeks die wordt weergegeven in de legenda rechts van de grafiek, inclusief een variabele verwijzing. Voorbeeld: {{graphQueriesTableName}} |
| baseQuery | Tekenreeks | De query die filtert op relevante gebeurtenissen, inclusief een variabele verwijzing. Voorbeeld: TableName_CL | where ProviderName == "myprovider" of {{graphQueriesTableName}} |
Beschikbaarheid
| Veld | Vereist | Type | Beschrijving |
|---|---|---|---|
| Status | Geheel getal | De beschikbaarheidsstatus van de connector. Beschikbaar = 1 Functievlag = 2 Binnenkort beschikbaar = 3 Intern = 4 |
|
| isPreview | Booleaanse waarde | Een Booleaanse waarde die aangeeft of de connector zich in de preview-modus bevindt. |
Machtigingen
| Matrixwaarde | Type | Beschrijving |
|---|---|---|
| Douane | Tekenreeks | Beschrijft alle aangepaste machtigingen die zijn vereist voor uw gegevensverbinding, in de volgende syntaxis: {"name":tekenreeks,"description":tekenreeks} Voorbeeld: de douanewaarde wordt weergegeven in Microsoft Sentinel sectie Vereisten met een blauw informatiepictogram. In het GitHub-voorbeeld correleert deze waarde met de regel Persoonlijke tokensleutel van GitHub API: U hebt toegang nodig tot het persoonlijke GitHub-token... |
| Licenties | ENUM | Definieert de vereiste licenties als een van de volgende waarden: OfficeIRM,OfficeATP, Office365, AadP1P2, Mcas, Aatp, Mdatp, , MtpIoT Voorbeeld: De waarde voor licenties wordt in Microsoft Sentinel weergegeven als: Licentie: vereist Azure AD Premium P2 |
| resourceProvider | resourceProvider | Hierin worden eventuele vereisten voor uw Azure-resource beschreven. Voorbeeld: De waarde resourceProvider wordt in Microsoft Sentinel sectie Vereisten weergegeven als: Werkruimte: lees- en schrijfmachtiging is vereist. Sleutels: leesmachtigingen voor gedeelde sleutels voor de werkruimte zijn vereist. |
| Huurder | matrix van ENUM-waarden Voorbeeld: "tenant": ["GlobalADmin","SecurityAdmin"] |
Definieert de vereiste machtigingen als een of meer van de volgende waarden: "GlobalAdmin", "SecurityAdmin", "SecurityReader", , "InformationProtection" Voorbeeld: geeft de tenantwaarde in Microsoft Sentinel weer als: Tenantmachtigingen: Vereist Global Administrator of Security Administrator voor de tenant van de werkruimte |
Belangrijk
Microsoft raadt u aan rollen te gebruiken met de minste machtigingen. Dit helpt bij het verbeteren van de beveiliging voor uw organisatie. Globale beheerder is een zeer bevoorrechte rol die moet worden beperkt tot scenario's voor noodgevallen wanneer u een bestaande rol niet kunt gebruiken.
resourceProvider
| submatrixwaarde | Type | Beschrijving |
|---|---|---|
| Provider | ENUM | Beschrijft de resourceprovider, met een van de volgende waarden: - Microsoft.OperationalInsights/workspaces - Microsoft.OperationalInsights/solutions- Microsoft.OperationalInsights/workspaces/datasources- microsoft.aadiam/diagnosticSettings- Microsoft.OperationalInsights/workspaces/sharedKeys- Microsoft.Authorization/policyAssignments |
| providerDisplayName | Tekenreeks | Een lijstitem onder Vereisten dat een rood 'x' of groen vinkje weergeeft wanneer de requiredPermissions worden gevalideerd op de connectorpagina. Voorbeeld "Workspace" |
| permissionsDisplayText | Tekenreeks | Tekst weergeven voor lees-, schrijf- of lees- en schrijfmachtigingen die moeten overeenkomen met de waarden die zijn geconfigureerd in requiredPermissions |
| requiredPermissions | {"action":Booleaanse waarde,"delete":Booleaanse waarde,"read":Booleaanse waarde,"write":Booleaanse waarde} |
Hierin worden de minimale machtigingen beschreven die vereist zijn voor de connector. |
| Scope | ENUM | Beschrijft het bereik van de gegevensconnector als een van de volgende waarden: "Subscription", "ResourceGroup", "Workspace" |
sampleQueries
| matrixwaarde | Type | Beschrijving |
|---|---|---|
| Beschrijving | Tekenreeks | Een zinvolle beschrijving voor de voorbeeldquery. Voorbeeld: Top 10 vulnerabilities detected |
| query | Tekenreeks | Voorbeeldquery die wordt gebruikt om de gegevens van het gegevenstype op te halen. Voorbeeld: {{graphQueriesTableName}}\n | sort by TimeGenerated\n | take 10 |
Andere koppelingsopties configureren
Als u een inlinekoppeling wilt definiëren met markdown, gebruikt u het volgende voorbeeld.
{
"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)"
}
Als u een koppeling wilt definiëren als een ARM-sjabloon, gebruikt u het volgende voorbeeld als richtlijn:
{
"title": "Azure Resource Manager (ARM) template",
"description": "1. Click the **Deploy to Azure** button below.\n\n\t[]({URL to custom ARM template})"
}
instructionSteps
Deze sectie bevat parameters die de set instructies definiëren die worden weergegeven op de pagina van de gegevensconnector in Microsoft Sentinel en heeft de volgende structuur:
"instructionSteps": [
{
"title": "",
"description": "",
"instructions": [
{
"type": "",
"parameters": {}
}
],
"innerSteps": {}
}
]
| Matrixeigenschap | Vereist | Type | Beschrijving |
|---|---|---|---|
| Titel | Tekenreeks | Definieert een titel voor uw instructies. | |
| Beschrijving | Tekenreeks | Definieert een zinvolle beschrijving voor uw instructies. | |
| innerSteps | Array | Definieert een matrix met interne instructiestappen. | |
| Instructies | Waar | Matrix met instructies | Definieert een matrix met instructies van een specifiek parametertype. |
Instructies
Geeft een groep instructies weer, met verschillende parameters en de mogelijkheid om meer instructies te nestenStappen in groepen. Parameters die hier zijn gedefinieerd, komen overeen
| Type | Matrixeigenschap | Beschrijving |
|---|---|---|
| OAuthForm | OAuthForm | Verbinding maken met OAuth |
| Textbox | Textbox | Dit koppelt met ConnectionToggleButton. Er zijn vier typen beschikbaar:passwordtextnumberemail |
| ConnectionToggleButton | ConnectionToggleButton | Activeer de implementatie van de DCR op basis van de verbindingsgegevens die via tijdelijke parameters worden verstrekt. De volgende parameters worden ondersteund:name :VerplichtdisabledisPrimaryconnectLabeldisconnectLabel |
| CopyableLabel | CopyableLabel | Toont een tekstveld met een kopieerknop aan het einde. Wanneer de knop is geselecteerd, wordt de waarde van het veld gekopieerd. |
| Dropdown | Dropdown | Geeft een vervolgkeuzelijst weer met opties waaruit de gebruiker kan kiezen. |
| Markdown | Markdown | Geeft een sectie met tekst weer die is opgemaakt met Markdown. |
| DataConnectorsGrid | DataConnectorsGrid | Geeft een raster met gegevensconnectors weer. |
| ContextPane | ContextPane | Hiermee wordt een deelvenster met contextuele informatie weergegeven. |
| InfoMessage | InfoMessage | Definieert een inline-informatiebericht. |
| InstructionStepsGroup | InstructionStepsGroup | Geeft een groep instructies weer, optioneel uitgevouwen of samenvouwbaar, in een afzonderlijke sectie met instructies. |
| InstallAgent | InstallAgent | Geeft een koppeling weer naar andere delen van Azure om aan verschillende installatievereisten te voldoen. |
OAuthForm
Dit onderdeel vereist dat het OAuth2 type aanwezig is in de auth eigenschap van de gegevensconnectorsjabloon.
"instructions": [
{
"type": "OAuthForm",
"parameters": {
"clientIdLabel": "Client ID",
"clientSecretLabel": "Client Secret",
"connectButtonLabel": "Connect",
"disconnectButtonLabel": "Disconnect"
}
}
]
Textbox
Hier volgen enkele voorbeelden van het Textbox type. Deze voorbeelden komen overeen met de parameters die worden gebruikt in de voorbeeldsectie auth in Naslaginformatie over gegevensconnectors voor het Codeless Connector Framework. Voor elk van de vier typen heeft labelelk , placeholderen 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"
}
}
]
CopyableLabel
Voorbeeld:
Voorbeeldcode:
{
"parameters": {
"fillWith": [
"WorkspaceId",
"PrimaryKey"
],
"label": "Here are some values you'll need to proceed.",
"value": "Workspace is {0} and PrimaryKey is {1}"
},
"type": "CopyableLabel"
}
| Matrixwaarde | Vereist | Type | Beschrijving |
|---|---|---|---|
| fillWith | ENUM | Matrix met omgevingsvariabelen die worden gebruikt om een tijdelijke aanduiding te vullen. Scheid meerdere tijdelijke aanduidingen met komma's. Bijvoorbeeld:{0},{1} Ondersteunde waarden: workspaceId, workspaceName, primaryKey, MicrosoftAwsAccount, , subscriptionId |
|
| Label | Waar | Tekenreeks | Hiermee definieert u de tekst voor het label boven een tekstvak. |
| Waarde | Waar | Tekenreeks | Definieert de waarde die in het tekstvak moet worden weergegeven, ondersteunt tijdelijke aanduidingen. |
| Rijen | Rijen | Hiermee definieert u de rijen in het gebruikersinterfacegebied. Stel standaard in op 1. | |
| wideLabel | Booleaanse waarde | Hiermee bepaalt u een breed label voor lange tekenreeksen. Stel standaard in op false. |
Dropdown
{
"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"
}
| Veld | Vereist | Type | Beschrijving |
|---|---|---|---|
| Label | Waar | Tekenreeks | Hiermee definieert u de tekst voor het label boven de vervolgkeuzelijst. |
| Naam | Waar | Tekenreeks | Definieert de unieke naam voor de vervolgkeuzelijst. Dit wordt gebruikt in polling-configuratie. |
| Opties | Waar | Array | Definieert de lijst met opties voor de vervolgkeuzelijst. |
| Tijdelijke aanduiding | Tekenreeks | Hiermee definieert u de tijdelijke tekst voor de vervolgkeuzelijst. | |
| isMultiSelect | Booleaanse waarde | Bepaalt of meerdere opties kunnen worden geselecteerd. Stel standaard in op false. |
|
| Vereist | Booleaanse waarde | Als true, moet de vervolgkeuzelijst worden ingevuld. |
|
| defaultAllSelected | Booleaanse waarde | Als true, zijn alle opties standaard geselecteerd. |
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"
]
}
}
| Veld | Vereist | Type | Beschrijving |
|---|---|---|---|
| Toewijzing | Waar | Array | Hiermee definieert u de toewijzing van kolommen in het raster. |
| menuItems | Array | Definieert de menu-items voor het raster. |
ContextPane
{
"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
}
}
}
]
}
]
}
}
| Veld | Vereist | Type | Beschrijving |
|---|---|---|---|
| Titel | Waar | Tekenreeks | De titel voor het contextvenster. |
| Ondertitel | Waar | Tekenreeks | De ondertitel voor het contextvenster. |
| contextPaneType | Waar | Tekenreeks | Het type van het contextvenster. |
| instructionSteps | Waar | Array instructionSteps |
De instructiestappen voor het contextvenster. |
| Label | Tekenreeks | Het label voor het contextvenster. | |
| isPrimary | Booleaanse waarde | Geeft aan of dit het primaire contextvenster is. |
InfoMessage
Hier volgt een voorbeeld van een inline-informatiebericht:
In de volgende afbeelding ziet u daarentegen een informatiebericht dat niet inline is:
| Matrixwaarde | Type | Beschrijving |
|---|---|---|
| Tekst | Tekenreeks | Definieer de tekst die in het bericht moet worden weergegeven. |
| Zichtbaar | Booleaanse waarde | Bepaalt of het bericht wordt weergegeven. |
| Inline | Booleaanse waarde | Bepaalt hoe het informatiebericht wordt weergegeven. - true: (Aanbevolen) Geeft het informatiebericht weer dat is ingesloten in de instructies. - false: Voegt een blauwe achtergrond toe. |
InstructionStepsGroup
Hier volgt een voorbeeld van een uitbreidbare instructiegroep:
| Matrixwaarde | Vereist | Type | Beschrijving |
|---|---|---|---|
| Titel | Waar | Tekenreeks | Hiermee definieert u de titel voor de instructiestap. |
| Beschrijving | Tekenreeks | Optionele beschrijvende tekst. | |
| canCollapseAllSections | Booleaanse waarde | Bepaalt of de sectie een samenvouwbare accordeon is of niet. | |
| noFxPadding | Booleaanse waarde | Als true, vermindert de opvulling in hoogte om ruimte te besparen. |
|
| Uitgebreid | Booleaanse waarde | If true, wordt standaard weergegeven als uitgevouwen. |
Zie de configuratie-JSON voor de Windows DNS-connector voor een gedetailleerd voorbeeld.
InstallAgent
Sommige InstallAgent-typen worden weergegeven als een knop, andere als koppeling. Hier volgen voorbeelden van beide:
| Matrixwaarden | Vereist | Type | Beschrijving |
|---|---|---|---|
| linkType | Waar | ENUM | Bepaalt het koppelingstype als een van de volgende waarden: InstallAgentOnWindowsVirtualMachineInstallAgentOnWindowsNonAzureInstallAgentOnLinuxVirtualMachineInstallAgentOnLinuxNonAzureOpenSyslogSettingsOpenCustomLogsSettingsOpenWafOpenAzureFirewall
OpenMicrosoftAzureMonitoring
OpenFrontDoors OpenCdnProfile AutomaticDeploymentCEF OpenAzureInformationProtection OpenAzureActivityLog OpenIotPricingModel OpenPolicyAssignment OpenAllAssignmentsBlade OpenCreateDataCollectionRule |
| policyDefinitionGuid | True bij gebruik van OpenPolicyAssignment linkType. |
Tekenreeks | Voor op beleid gebaseerde connectors definieert u de GUID van de ingebouwde beleidsdefinitie. |
| assignMode | ENUM | Voor op beleid gebaseerde connectors definieert u de toewijzingsmodus als een van de volgende waarden: Initiative, Policy |
|
| dataCollectionRuleType | ENUM | Voor DCR-connectors definieert u het type regeltype voor gegevensverzameling als SecurityEvent, of ForwardEvent. |
Voorbeeld van gegevensconnectordefinitie
In het volgende voorbeeld worden enkele onderdelen samengebracht die in dit artikel zijn gedefinieerd als een JSON-hoofdtekstindeling voor gebruik met de definitie-API voor gegevensconnector maken of bijwerken.
Bekijk andere CCF-gegevensconnectors voor meer voorbeeldenconnectorUiConfig. Zelfs connectors die gebruikmaken van de verouderde CCF hebben geldige voorbeelden van het maken van de gebruikersinterface.
{
"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"
}
}
]
}
]
}
}
}