Reference til definitioner af dataconnectorer til Codeless Connector Framework

Hvis du vil oprette en dataconnector med CCF (Codeless Connector Framework), skal du bruge dette dokument som et supplement til referencedokumenterne til Microsoft Sentinel REST-API'en til dataconnectordefinitioner. Dette referencedokument udvides specifikt i følgende afsnit:

  • connectorUiConfig– definerer de visuelle elementer og den tekst, der vises på dataconnectorsiden i Microsoft Sentinel.

Du kan få flere oplysninger under Opret en kodeløs connector.

Definitioner af dataconnector – Opret eller opdater

Se handlingen Create or Update i REST API-dokumentation for at finde den nyeste stabile API-version eller prøveversions-API-version. Det er kun handlingen, update der kræver værdien etag .

PUT-metode

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

URI-parametre

Du kan få flere oplysninger om den nyeste API-version under Definitioner af dataconnector – Opret eller opdater URI-parametre

Navn Beskrivelse
dataConnectorDefinitionName Definitionen af dataconnectoren skal være et entydigt navn og er den samme som name parameteren i anmodningens brødtekst.
resourceGroupName Navnet på ressourcegruppen, hvor der ikke skelnes mellem store og små bogstaver.
subscriptionId Id'et for målabonnementet.
workspaceName Navnet på arbejdsområdet, ikke id'et.
Regex-mønster: ^[A-Za-z0-9][A-Za-z0-9-]+[A-Za-z0-9]$
api-version Den API-version, der skal bruges til denne handling.

Brødtekst i anmodning

Anmodningens brødtekst til oprettelse af en CCF-dataconnectordefinition med API'en har følgende struktur:

{
    "kind": "Customizable",
    "properties": {
        "connectorUIConfig": {}
    }
}

dataConnectorDefinition har følgende egenskaber:

Navn Påkrævet Type Beskrivelse
Form Sandt String Customizable til API-forespørgselsdataconnector eller Static på anden måde
Egenskaber. connectorUiConfig Sandt Indlejret JSON
connectorUiConfig
Konfigurationsegenskaberne for brugergrænsefladen for dataconnectoren

Konfigurer connectorens brugergrænseflade

I dette afsnit beskrives de konfigurationsindstillinger, der er tilgængelige til tilpasning af brugergrænsefladen på dataconnectorsiden.

På følgende skærmbillede vises en side med en eksempeldataconnector, der er fremhævet med tal, der svarer til bemærkelsesværdige områder af brugergrænsefladen.

Skærmbillede af en eksempelside med dataconnector med sektioner med mærkaten 1 til 9.

Hvert af følgende elementer i det afsnit, connectorUiConfig der er nødvendigt for at konfigurere brugergrænsefladen, svarer til api'ens CustomizableConnectorUiConfig-del.

Feltet Påkrævet Type Beskrivelse Skærmbillede, der er et bemærkelsesværdig område #
Titel Sandt Streng Titel, der vises på dataconnectorsiden 1
id Streng Angiver brugerdefineret connector-id for intern brug
Logo Streng Sti til billedfil i SVG-format. Hvis der ikke er konfigureret nogen værdi, bruges der et standardlogo. 2
Publisher Sandt Streng Udbyderen af connectoren 3
descriptionMarkdown Sandt streng i markdown En beskrivelse af connectoren med mulighed for at tilføje Markdown-sprog for at forbedre den. 4
sampleQueries Sandt Indlejret JSON
sampleQueries
Forespørgsler til kunden for at forstå, hvordan dataene findes i hændelsesloggen.
graphQueries Sandt Indlejret JSON
graphQueries
Forespørgsler, der præsenterer dataindtagelse i løbet af de sidste to uger.

Angiv enten én forespørgsel for alle dataconnectorens datatyper eller en anden forespørgsel for hver datatype.
5
graphQueriesTableName Angiver navnet på den tabel, som connectoren indsætter data i. Dette navn kan bruges i andre forespørgsler ved at angive {{graphQueriesTableName}} pladsholder i graphQueries og lastDataReceivedQuery værdier.
Datatyper Sandt Indlejret JSON
Datatyper
En liste over alle datatyper for din connector og en forespørgsel, der henter tidspunktet for den sidste hændelse for hver datatype. 6
connectivityCriteria Sandt Indlejret JSON
connectivityCriteria
Et objekt, der definerer, hvordan du kontrollerer, om forbindelsen er tilsluttet. 7
Tilgængelighed Indlejret JSON
Tilgængelighed
Et objekt, der definerer connectorens tilgængelighedsstatus.
Tilladelser Sandt Indlejret JSON
Tilladelser
De oplysninger, der vises under afsnittet Forudsætninger i brugergrænsefladen, som viser de tilladelser, der kræves for at aktivere eller deaktivere connectoren. 8
instructionSteps Sandt Indlejret JSON
Instruktioner
En matrix af widgetdele, der forklarer, hvordan du installerer connectoren, og kontrolelementer, der kan handles på, og som vises under fanen Instruktioner . 9
isConnectivityCriteriasMatchSome Boolesk En boolesk værdi, der angiver, om der skal bruges 'OR'(SOME) eller 'AND' mellem ConnectivityCriteria-elementer.

connectivityCriteria

Feltet Påkrævet Type Beskrivelse
Type Sandt String En af de to følgende indstillinger: HasDataConnectors – denne værdi er bedst til API-forespørgselsdataconnectors, f.eks. CCF. Connectoren anses for at være forbundet med mindst én aktiv forbindelse.

isConnectedQuery – denne værdi er bedst til andre typer dataconnectors. Connectoren anses for at være forbundet, når den angivne forespørgsel returnerer data.
Værdi Sand, når typen er isConnectedQuery String En forespørgsel, der bestemmer, om der modtages data inden for en bestemt tidsperiode. For eksempel: CommonSecurityLog | where DeviceVendor == \"Vectra Networks\"\n| where DeviceProduct == \"X Series\"\n | summarize LastLogReceived = max(TimeGenerated)\n | project IsConnected = LastLogReceived > ago(7d)"

Datatyper

Matrixværdi Type Beskrivelse
Navn String En relevant beskrivelse aflastDataReceivedQuery , herunder understøttelse af variablen graphQueriesTableName .

Eksempel: {{graphQueriesTableName}}
lastDataReceivedQuery String En KQL-forespørgsel, der returnerer én række, og angiver det sidste tidspunkt for modtagelse af data eller ingen data, hvis der ikke er nogen resultater.

Eksempel: {{graphQueriesTableName}}\n | summarize Time = max(TimeGenerated)\n | where isnotempty(Time)

graphQueries

Definerer en forespørgsel, der viser dataindtagelse i løbet af de sidste to uger.

Angiv enten én forespørgsel for alle dataconnectorens datatyper eller en anden forespørgsel for hver datatype.

Matrixværdi Type Beskrivelse
metricName String Et sigende navn til grafen.

Eksempel: Total data received
Legende String Den streng, der vises i forklaringen til højre for diagrammet, herunder en variabelreference.

Eksempel: {{graphQueriesTableName}}
baseQuery String Den forespørgsel, der filtrerer efter relevante hændelser, herunder en variabelreference.

Eksempel: TableName_CL | where ProviderName == "myprovider" eller {{graphQueriesTableName}}

Tilgængelighed

Feltet Påkrævet Type Beskrivelse
Status Heltal Connectorens tilgængelighedsstatus.
Tilgængelig = 1
Funktionsflag = 2
Kommer snart = 3
Intern = 4
isPreview Boolesk En boolesk værdi, der angiver, om connectoren er i eksempelvisning.

Tilladelser

Matrixværdi Type Beskrivelse
Told String Beskriver de brugerdefinerede tilladelser, der kræves til din dataforbindelse, i følgende syntaks:
{
"name":Streng,
"description":Streng
}

Eksempel: Toldværdien vises i afsnittet Microsoft Sentinel forudsætninger med et blåt ikon med oplysninger. I GitHub-eksemplet korrelerer denne værdi med den personlige tokennøgle til GitHub API: Du skal have adgang til det personlige GitHub-token...
Licenser ENUM Definerer de nødvendige licenser som en af følgende værdier: OfficeIRM,OfficeATP, Office365, AadP1P2, Mcas, Aatp, Mdatp, , MtpIoT

Eksempel: Licensværdien vises i Microsoft Sentinel som: Licens: Påkrævet Azure AD Premium P2
resourceProvider resourceProvider Beskriver eventuelle forudsætninger for din Azure ressource.

Eksempel: Værdien resourceProvider vises i afsnittet Microsoft Sentinel Forudsætninger som:
Arbejdsområde: Der kræves læse- og skrivetilladelse.
Nøgler: Læsetilladelser til delte nøgler for arbejdsområdet er påkrævet.
Lejer matrix af ENUM-værdier
Eksempel:

"tenant": [
"GlobalADmin",
"SecurityAdmin"
]
Definerer de påkrævede tilladelser som en eller flere af følgende værdier: "GlobalAdmin", "SecurityAdmin", , "SecurityReader""InformationProtection"

Eksempel: viser lejerværdien i Microsoft Sentinel som: Lejertilladelser: Kræver Global Administrator eller Security Administrator er i arbejdsområdets lejer

Vigtigt!

Microsoft anbefaler, at du bruger roller med færrest tilladelser. Dette hjælper med at forbedre sikkerheden for din organisation. Global administrator er en yderst privilegeret rolle, der bør være begrænset til nødsituationer, når du ikke kan bruge en eksisterende rolle.

resourceProvider

undermatrixværdi Type Beskrivelse
Udbyder ENUM Beskriver ressourceudbyderen med en af følgende værdier:
- Microsoft.OperationalInsights/workspaces
- Microsoft.OperationalInsights/solutions
- Microsoft.OperationalInsights/workspaces/datasources
- microsoft.aadiam/diagnosticSettings
- Microsoft.OperationalInsights/workspaces/sharedKeys
- Microsoft.Authorization/policyAssignments
providerDisplayName String Et listeelement under Forudsætninger , der viser et rødt "x" eller grønt flueben, når de nødvendige tilladelser valideres på connectorsiden. Eksempel "Workspace"
permissionsDisplayText String Vis tekst for tilladelserne Læs, Skriv eller Læs og Skriv , der skal svare til de værdier, der er konfigureret i påkrævede tilladelser
requiredPermissions {
"action":Boolesk,
"delete":Boolesk,
"read":Boolesk,
"write":Boolesk
}
Beskriver de minimumtilladelser, der kræves til connectoren.
Omfanget ENUM Beskriver dataconnectorens omfang som en af følgende værdier: "Subscription", , "ResourceGroup""Workspace"

sampleQueries

matrixværdi Type Beskrivelse
Beskrivelse String En meningsfuld beskrivelse af eksempelforespørgslen.

Eksempel: Top 10 vulnerabilities detected
Forespørgsel String Eksempelforespørgsel, der bruges til at hente datatypens data.

Eksempel: {{graphQueriesTableName}}\n | sort by TimeGenerated\n | take 10

Hvis du vil definere et indbygget link ved hjælp af Markdown, skal du bruge følgende eksempel.

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

Hvis du vil definere et link som en ARM-skabelon, skal du bruge følgende eksempel som vejledning:

{
   "title": "Azure Resource Manager (ARM) template",
   "description": "1. Click the **Deploy to Azure** button below.\n\n\t[![Deploy To Azure](https://aka.ms/deploytoazurebutton)]({URL to custom ARM template})"
}

instructionSteps

Dette afsnit indeholder parametre, der definerer det sæt instruktioner, der vises på din dataconnectorside i Microsoft Sentinel og har følgende struktur:

"instructionSteps": [
    {
        "title": "",
        "description": "",
        "instructions": [
        {
            "type": "",
            "parameters": {}
        }
        ],
        "innerSteps": {}
    }
]
Matrixegenskab Påkrævet Type Beskrivelse
Titel String Definerer en titel til dine instruktioner.
Beskrivelse String Definerer en meningsfuld beskrivelse af dine instruktioner.
innerSteps Array Definerer en matrix af indre instruktionstrin.
Instruktioner Sandt Matrix af instruktioner Definerer en matrix af instruktioner af en bestemt parametertype.

Instruktioner

Viser en gruppe instruktioner med forskellige parametre og mulighed for at indlejre flere instruktionerTrin i grupper. Parametre, der er defineret her, svarer til

Type Matrixegenskab Beskrivelse
OAuthForm OAuthForm Opret forbindelse med OAuth
Tekstboks Tekstboks Dette parrer med ConnectionToggleButton. Der er 4 tilgængelige typer:
  • password
  • text
  • number
  • email
  • Forbindelse Til/fra-knap Forbindelse Til/fra-knap Udløs installationen af DCR baseret på de forbindelsesoplysninger, der er angivet via pladsholderparametre. Følgende parametre understøttes:
  • name :Obligatorisk
  • disabled
  • isPrimary
  • connectLabel
  • disconnectLabel
  • CopyableLabel CopyableLabel Viser et tekstfelt med en kopiknap i slutningen. Når knappen er valgt, kopieres feltets værdi.
    Dropdown Dropdown Viser en rulleliste med indstillinger, som brugeren kan vælge imellem.
    Markdown Markdown Viser en sektion med tekst, der er formateret med Markdown.
    DataConnectorsGrid DataConnectorsGrid Viser et gitter med dataforbindelser.
    Kontekstrude Kontekstrude Viser en rude med kontekstoplysninger.
    InfoMeddelelse InfoMeddelelse Definerer en meddelelse med indbyggede oplysninger.
    InstructionStepsGroup InstructionStepsGroup Viser en gruppe instruktioner, eventuelt udvidet eller kan skjules, i en separat vejledningssektion.
    InstallAgent InstallAgent Viser et link til andre dele af Azure for at opnå forskellige installationskrav.
    OAuthForm

    Denne komponent kræver, at typen OAuth2 findes i auth egenskaben for dataconnectorskabelonen.

    "instructions": [
    {
      "type": "OAuthForm",
      "parameters": {
        "clientIdLabel": "Client ID",
        "clientSecretLabel": "Client Secret",
        "connectButtonLabel": "Connect",
        "disconnectButtonLabel": "Disconnect"
      }          
    }
    ]
    
    Tekstboks

    Her er nogle eksempler på typen Textbox . Disse eksempler svarer til de parametre, der bruges i eksempelafsnittet auth i Reference til dataconnectors for Codeless Connector Framework. For hver af de fire typer har labelhver af dem , placeholderog 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"
      }
    }
    ]
    
    Forbindelse Til/fra-knap
    "instructions": [
    {
      "type": "ConnectionToggleButton",
      "parameters": {
        "connectLabel": "toggle",
        "name": "toggle"
      }          
    }
    ]
    
    CopyableLabel

    Eksempel:

    Skærmbillede af en knap til kopieringsværdi i et felt.

    Eksempelkode:

    {
        "parameters": {
            "fillWith": [
                "WorkspaceId",
                "PrimaryKey"
                ],
            "label": "Here are some values you'll need to proceed.",
            "value": "Workspace is {0} and PrimaryKey is {1}"
        },
        "type": "CopyableLabel"
    }
    
    Matrixværdi Påkrævet Type Beskrivelse
    fillWith ENUM Matrix af miljøvariabler, der bruges til at udfylde en pladsholder. Adskil flere pladsholdere med kommaer. For eksempel: {0},{1}

    Understøttede værdier: workspaceId, workspaceName, primaryKey, MicrosoftAwsAccount, subscriptionId
    Etiket Sandt String Definerer teksten til etiketten over et tekstfelt.
    Værdi Sandt String Definerer den værdi, der skal vises i tekstfeltet, understøtter pladsholdere.
    Rækker Rækker Definerer rækkerne i brugergrænsefladen. Som standard indstillet til 1.
    wideLabel Boolesk Bestemmer en bred etiket for lange strenge. Angiv som standard til false.
    {
      "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"
    }
    
    Feltet Påkrævet Type Beskrivelse
    Etiket Sandt String Definerer teksten til etiketten over rullelisten.
    Navn Sandt String Definerer det entydige navn på rullelisten. Dette bruges i forespørgselskonfigurationen.
    Muligheder Sandt Array Definerer listen over indstillinger for rullelisten.
    Pladsholder String Definerer pladsholderteksten for rullelisten.
    isMultiSelect Boolesk Bestemmer, om der kan vælges flere indstillinger. Angiv som standard til false.
    Kræves Boolesk Hvis true, skal rullelisten udfyldes.
    defaultAllSelected Boolesk Hvis true, vælges alle indstillinger som standard.
    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"
        ]
      }
    }
    
    
    Feltet Påkrævet Type Beskrivelse
    Kortlægning Sandt Array Definerer tilknytningen af kolonner i gitteret.
    menuElementer Array Definerer menupunkterne for gitteret.
    Kontekstrude
    {
      "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
                  }
                }
              }
            ]
          }
        ]
      }
    }
    
    Feltet Påkrævet Type Beskrivelse
    Titel Sandt String Titlen på kontekstruden.
    Undertitel Sandt String Undertitlen på kontekstruden.
    contextPaneType Sandt String Kontekstrudens type.
    instructionSteps Sandt Array
    instructionSteps
    Instruktionstrinnene for kontekstruden.
    Etiket String Navnet på kontekstruden.
    isPrimary Boolesk Angiver, om dette er den primære kontekstrude.
    InfoMeddelelse

    Her er et eksempel på en meddelelse med indbyggede oplysninger:

    Skærmbillede af en meddelelse med indbyggede oplysninger.

    I modsætning hertil viser følgende billede en oplysningsmeddelelse, der ikke er indbygget:

    Skærmbillede af en oplysningsmeddelelse, der ikke er indbygget.

    Matrixværdi Type Beskrivelse
    Tekst String Definer den tekst, der skal vises i meddelelsen.
    Synlige Boolesk Bestemmer, om meddelelsen vises.
    Inline Boolesk Bestemmer, hvordan oplysningsmeddelelsen vises.

    - true: (Anbefales) Viser oplysningsmeddelelsen integreret i vejledningen.
    - false: Tilføjer en blå baggrund.
    InstructionStepsGroup

    Her er et eksempel på en instruktionsgruppe, der kan udvides:

    Skærmbillede af en udvidelsesbar, ekstra instruktionsgruppe.

    Matrixværdi Påkrævet Type Beskrivelse
    Titel Sandt String Definerer titlen på instruktionstrinnet.
    Beskrivelse String Valgfri beskrivende tekst.
    canCollapseAllSections Boolesk Bestemmer, om sektionen er en harmonika, der kan skjules, eller ej.
    noFxPadding Boolesk Hvis true, reduceres højdeudfyldningen for at spare plads.
    Udvidet Boolesk Hvis truevises som udvidet som standard.

    Du kan finde et detaljeret eksempel i konfigurations-JSON til Windows DNS-connectoren.

    InstallAgent

    Nogle InstallAgent-typer vises som en knap, andre vises som et link. Her er eksempler på begge:

    Skærmbillede af et link, der er tilføjet som en knap.

    Skærmbillede af et link, der er tilføjet som indbygget tekst.

    Matrixværdier Påkrævet Type Beskrivelse
    linkType Sandt ENUM Bestemmer linktypen som en af følgende værdier:

    InstallAgentOnWindowsVirtualMachine
    InstallAgentOnWindowsNonAzure
    InstallAgentOnLinuxVirtualMachine
    InstallAgentOnLinuxNonAzure
    OpenSyslogSettings
    OpenCustomLogsSettings
    OpenWaf
    OpenAzureFirewall OpenMicrosoftAzureMonitoring
    OpenFrontDoors
    OpenCdnProfile
    AutomaticDeploymentCEF
    OpenAzureInformationProtection
    OpenAzureActivityLog
    OpenIotPricingModel
    OpenPolicyAssignment
    OpenAllAssignmentsBlade
    OpenCreateDataCollectionRule
    policyDefinitionGuid True, når linkType bruges OpenPolicyAssignment . String For politikbaserede connectors definerer GUID'et for den indbyggede politikdefinition.
    assignMode ENUM For politikbaserede connectors definerer tildelingstilstanden som en af følgende værdier: Initiative, Policy
    dataCollectionRuleType ENUM I forbindelse med DCR-baserede connectors defineres typen af regeltype for dataindsamling som enten SecurityEvent, eller ForwardEvent.

    Eksempel på definition af dataconnector

    I følgende eksempel samles nogle af de komponenter, der er defineret i denne artikel som et JSON-brødtekstformat, som skal bruges sammen med API'en til definition af opret eller opdater dataconnector.

    Du kan få flere eksempler på gennemgangen connectorUiConfig af andre CCF-dataconnectors. Selv connectorer, der bruger den ældre CCF, har gyldige eksempler på oprettelsen af brugergrænsefladen.

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