Azure naslaginformatie over storage-blobgegevensconnector voor het connectorframework zonder code

Als u een Azure Storage Blob-gegevensconnector wilt maken met het Codeless Connector Framework (CCF), gebruikt u deze verwijzing naast het artikel Microsoft Sentinel REST API voor gegevensconnectors.

Elk dataConnector vertegenwoordigt een specifieke verbinding van een Microsoft Sentinel-gegevensconnector. Eén gegevensconnector kan meerdere verbindingen hebben, waarmee gegevens van verschillende eindpunten worden opgehaald. De JSON-configuratie die is gebouwd met behulp van dit referentiedocument, wordt gebruikt om de implementatiesjabloon voor de CCF-gegevensconnector te voltooien.

Zie Een connector zonder code maken voor Microsoft Sentinel voor meer informatie.

De Azure Storage Blob CCF-gegevensconnector bouwen

Vereenvoudig de ontwikkeling van het verbinden van uw Azure Storage Blob-gegevensbron met een voorbeeldsjabloon voor de implementatie van een Storage Blob CCF-gegevensconnector. Zie Connector StorageBlob CCF-sjabloon voor meer informatie.

Nu de meeste secties van de implementatiesjabloon zijn ingevuld, hoeft u alleen de eerste twee onderdelen te bouwen, de uitvoertabel en de DCR. Zie de secties Definitie van uitvoertabel en DCR (Data Collection Rule) voor meer informatie.

Gegevensconnectors - Maken of bijwerken

Raadpleeg de bewerking Maken of Bijwerken in de REST API-documenten om de nieuwste stabiele of preview-API-versie te vinden. Het verschil tussen de bewerking maken en bijwerken is dat de update de etag-waarde vereist.

PUT-methode

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

URI-parameters

Zie Gegevensconnectors - URI-parameters maken of bijwerken voor meer informatie over de nieuwste API-versie.

Naam Beschrijving
dataConnectorId De gegevensconnector-id moet een unieke naam zijn en moet gelijk zijn aan 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 aanvraagtekst voor een StorageAccountBlobContainer CCF-gegevensconnector heeft de volgende structuur:

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

StorageAccountBlobContainer

StorageAccountBlobContainer vertegenwoordigt een CCF-gegevensconnector waar de verwachte nettoladingen voor uw Azure Storage Blob-gegevensbron al zijn geconfigureerd. Het configureren van uw producent voor het verzenden van gegevens naar Storage Blob moet afzonderlijk worden uitgevoerd.

Naam Vereist Type Beschrijving
Naam Waar tekenreeks De unieke naam van de verbinding die overeenkomt met de URI-parameter
Soort Waar tekenreeks Moet StorageAccountBlobContainer
etag GUID Laat leeg voor het maken van nieuwe connectors. Voor updatebewerkingen moet de etag overeenkomen met de etag (GUID) van de bestaande connector.
Eigenschappen. connectorDefinitionName tekenreeks De naam van de DataConnectorDefinition-resource die de ui-configuratie van de gegevensconnector definieert. Zie Definitie van gegevensconnector voor meer informatie.
Eigenschappen. Auth Waar Geneste JSON Beschrijft de referenties voor het opnemen van Azure Storage Blob-gegevens. Zie Verificatieconfiguratie voor meer informatie.
Eigenschappen. Verzoek Waar Geneste JSON Beschrijft de Azure Storage-wachtrijen die gebeurtenissen binnen het bereik van blobs ontvangen. Zie Aanvraagconfiguratie voor meer informatie.
Eigenschappen. dcrConfig Geneste JSON Vereiste parameters wanneer de gegevens worden verzonden naar een regel voor gegevensverzameling (DCR). Zie DCR-configuratie voor meer informatie.
Eigenschappen. Reactie Waar Geneste JSON Beschrijft het antwoordobject en het geneste bericht dat door de API wordt geretourneerd bij het ophalen van de gegevens. Zie antwoordconfiguratie voor meer informatie.

Verificatieconfiguratie

De Azure Storage Blob-connector is afhankelijk van een service-principal die is gemaakt in uw tenant die is gekoppeld aan een door Microsoft beheerde multitenanttoepassing (blauwdruk service-principal). De tenantbeheerder moet toestemming verlenen om deze service-principal te maken. De ARM-sjabloon biedt de mogelijkheid om te bevestigen of de service-principal die is gekoppeld aan de toepassing al bestaat in uw tenant en zo niet, biedt een optie om de service-principal te maken met toestemming van de gebruiker.

Het VOORBEELD van een ARM-sjabloon bevat bewerkingen voor het toepassen van alle benodigde op rollen gebaseerde toegang op het opslagaccount om blobs te lezen en bij te dragen aan wachtrijen. Zorg ervoor dat de sjabloon en de gebruikte service-principals zijn gekoppeld aan de toepassing voor uw omgeving en dat toestemming voor tenantbeheerders is verleend.

De volgende tabel bevat de toepassings-id's per Azure omgeving:

Azure-omgeving ApplicationId
AzureCloud 4f05ce56-95b6-4612-9d98-a45c8cc33f9f

Voorbeeld van StorageAccountBlobContainer-verificatie:

"auth": {
    "type": "ServicePrincipal"
}

Aanvraagconfiguratie

In de sectie aanvraag worden de Azure Storage-wachtrijen beschreven die berichten ontvangen die zijn gemaakt met blob-gebeurtenissen.

Veld Vereist Type Beschrijving
QueueUri Waar Tekenreeks De URI van de Azure Storage-wachtrij die gebeurtenissen ontvangt die door blob zijn gemaakt.
DlqUri Waar Tekenreeks De URI van de wachtrij met lege brieven voor mislukte berichten.

Voorbeeld van StorageAccountBlobContainer-aanvraag:

"request": {
    "QueueUri": "[[concat('https://', variables('storageAccountName'), '.queue.core.windows.net/', variables('queueName'))]",
    "DlqUri": "[[concat('https://', variables('storageAccountName'), '.queue.core.windows.net/', variables('dlqName'))]"
}

Antwoordconfiguratie

Definieer de reactieafhandeling van uw gegevensconnector met de volgende parameters:

Veld Vereist Type Beschrijving
EventsJsonPaths Waar Lijst met tekenreeksen Hiermee definieert u het pad naar het bericht in de antwoord-JSON. Een JSON-padexpressie geeft een pad naar een element of een set elementen in een JSON-structuur op.
IsGzipCompressed Booleaanse waarde Bepaalt of het antwoord wordt gecomprimeerd in een gzip-bestand.
Formaat Waar Tekenreeks json, csv, xmlof parquet
CompressionAlgo Tekenreeks Het compressie-algoritme, of multi-gzipdeflate. Voor gzip-compressie configureert u IsGzipCompressed in plaats van een waarde in te True stellen voor deze parameter.
CsvDelimiter Tekenreeks Als de antwoordindeling CSV is en u het standaard-CSV-scheidingsteken van ,wilt wijzigen.
HasCsvBoundary Booleaanse waarde Geeft aan of de CSV-gegevens een grens hebben.
HasCsvHeader Booleaanse waarde Geeft aan of de CSV-gegevens een header hebben. Standaard ingesteld op: True.
CsvEscape Tekenreeks Escape-teken voor een veldgrens. Standaard ingesteld op: ". Een CSV met kopteksten id,name,avg en een rij met gegevens met spaties, zoals 1,"my name",5.5 , vereist bijvoorbeeld de " veldgrens.

Opmerking

Csv-indelingstype wordt geparseerd door de RFC 4180-specificatie .

Voorbeelden van antwoordconfiguratie

Niet-gecomprimeerde JSON:

"response": {
    "EventsJsonPaths": ["$"],
    "format": "json"
}

Gecomprimeerd CSV:

"response": {
    "EventsJsonPaths": ["$"],
    "format": "csv",
    "IsGzipCompressed": true
}

Parquet (compressie kan worden afgeleid):

"response": {
    "EventsJsonPaths": ["$"],
    "format": "parquet"
}

DCR-configuratie

Veld Vereist Type Beschrijving
DataCollectionEndpoint Waar Tekenreeks DCE (Eindpunt voor gegevensverzameling), bijvoorbeeld: https://example.ingest.monitor.azure.com.
DataCollectionRuleImmutableId Waar Tekenreeks De onveranderbare DCR-id. U kunt deze vinden door het DCR-aanmaakantwoord te bekijken of de DCR-API te gebruiken.
StreamName Waar tekenreeks Deze waarde is de streamDeclaration waarde die is gedefinieerd in de DCR (het voorvoegsel moet beginnen met Custom-).

Voorbeeld van CCF-gegevensconnector

Hier volgt een voorbeeld van alle onderdelen van de JSON van de StorageAccountBlobContainer CCF-gegevensconnector.

{
    "kind": "StorageAccountBlobContainer",
    "properties": {
        "connectorDefinitionName": "[[parameters('connectorDefinitionName')]",
        "dcrConfig": {
            "streamName": "[variables('streamName')]",
            "dataCollectionEndpoint": "[[parameters('dcrConfig').dataCollectionEndpoint]",
            "dataCollectionRuleImmutableId": "[[parameters('dcrConfig').dataCollectionRuleImmutableId]"
        },
        "auth": {
            "type": "ServicePrincipal"
        },
        "request": {
            "QueueUri": "[[concat('https://', variables('storageAccountName'), '.queue.core.windows.net/', variables('queueName'))]",
            "DlqUri": "[[concat('https://', variables('storageAccountName'), '.queue.core.windows.net/', variables('dlqName'))]"
        }
    }
}

Zie Rest API-voorbeeld van gegevensconnector maken voor meer informatie.