Поделиться через


Справочник по соединителю данных BLOB-объектов службы хранилища Azure для платформы соединителей без кода

Чтобы создать соединитель данных BLOB-объектов службы хранилища Azure с помощью CCF, используйте эту ссылку в дополнение к REST API Microsoft Sentinel для соединителей данных .

Каждый dataConnector представляет собой определенное соединение соединителя данных Microsoft Sentinel. Один соединитель данных может иметь несколько подключений, которые извлекает данные из разных конечных точек. Конфигурация JSON, созданная с помощью этого справочного документа, используется для завершения шаблона развертывания для соединителя данных CCF.

Дополнительные сведения см. в статье Создание соединителя без кода для Microsoft Sentinel.

Создание соединителя данных CCF хранилища Azure

Упрощение разработки подключения источника данных BLOB-объектов службы хранилища Azure с помощью примера шаблона развертывания соединителя данных CCF хранилища BLOB-объектов. Дополнительные сведения см. в шаблоне CCF для хранилища соединителей.

При заполнении большинства разделов шаблона развертывания необходимо создать только первые два компонента, выходную таблицу и DCR. Дополнительные сведения см. в разделах определения выходной таблицы и правила сбора данных (DCR).

Соединители данных — создание или обновление

Чтобы найти последнюю стабильную или предварительную версию API, см. инструкцию по созданию или обновлению в документации по REST API. Разница между созданием и операцией обновления заключается в том, что обновление требует значения etag.

Метод PUT

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

Параметры URI

Дополнительные сведения о последней версии API см. в разделе "Соединители данных" — создание или обновление ПАРАМЕТРОВ URI.

Имя Описание
dataConnectorId Идентификатор соединителя данных должен быть уникальным именем и совпадает с name параметром в тексте запроса.
resourceGroupName Имя группы ресурсов, а не регистр.
идентификатор подписки Идентификатор целевой подписки.
имя рабочей области Имя рабочей области, а не идентификатор.
Шаблон регулярного выражения: ^[A-Za-z0-9][A-Za-z0-9-]+[A-Za-z0-9]$
версия API Версия API, используемая для данной операции.

Текст запроса

Текст запроса для StorageAccountBlobContainer соединителя данных CCF имеет следующую структуру:

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

StorageAccountBlobContainer

StorageAccountBlobContainer представляет соединитель данных CCF, где уже настроены ожидаемые полезные данные ответа для источника данных BLOB-объектов службы хранилища Azure. Настройка производителя для отправки данных в BLOB-объект хранилища должна выполняться отдельно.

Имя Обязательный Тип Описание
name True струна Уникальное имя подключения, соответствующего параметру URI
добрый True струна Должен содержать значение StorageAccountBlobContainer.
etag ГУИД Оставьте пустым для создания новых соединителей. Для операций обновления etag должен соответствовать тегу etag существующего соединителя (GUID).
Вариантов размещения. connectorDefinitionName струна Имя ресурса DataConnectorDefinition, определяющего конфигурацию пользовательского интерфейса соединителя данных. Дополнительные сведения см. в разделе "Определение соединителя данных".
свойства.auth True Вложенный массив JSON Описывает учетные данные для приема данных BLOB-объектов службы хранилища Azure. Дополнительные сведения см . в разделе конфигурации проверки подлинности.
свойства.просьба True Вложенный массив JSON Описывает очереди службы хранилища Azure, получающие события, созданные в области. Дополнительные сведения см. в разделе Конфигурация request.
свойства.dcrConfig Вложенный массив JSON Обязательные параметры при отправке данных в правило сбора данных (DCR). Дополнительные сведения см. в разделе конфигурации DCR.
свойства.ответ True Вложенный массив JSON Описывает объект ответа и вложенное сообщение, возвращенное API при извлечении данных. Дополнительные сведения см. в разделе Конфигурация response.

Конфигурация проверки подлинности

Соединитель BLOB-объектов службы хранилища Azure использует субъект-службу, созданный в клиенте, связанном с мультитенантным приложением, управляемым Корпорацией Майкрософт (схема субъекта-службы). Администратор клиента должен предоставить согласие на создание этого субъекта-службы. Шаблон ARM предоставляет возможность подтвердить, существует ли субъект-служба, связанный с приложением, уже существует в клиенте, и, если нет, предоставляет возможность создать субъект-службу с согласием пользователя.

Пример шаблона ARM включает операции для применения всех необходимых ролей доступа к учетной записи хранения для чтения БОЛЬШИХ двоичных объектов и участия в очередях. Убедитесь, что шаблон и используемые субъекты-службы связаны с приложением для вашей среды и предоставлено согласие администратора клиента.

В следующей таблице перечислены идентификаторы приложений для каждой среды Azure:

Среда Azure ApplicationId
AzureCloud 4f05ce56-95b6-4612-9d98-a45c8cc33f9f

Пример проверки подлинности StorageAccountBlobContainer:

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

Конфигурация запроса

В разделе запроса описываются очереди службы хранилища Azure, получающие сообщения о событиях, созданных BLOB-объектами.

Поле Обязательный Тип Описание
QueueUri True String Универсальный код ресурса (URI) очереди службы хранилища Azure, получающей события создания BLOB-объектов.
DlqUri True String Универсальный код ресурса (URI) очереди недоставленных сообщений.

Пример запроса StorageAccountBlobContainer:

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

Конфигурация response

Определите обработку ответов соединителя данных со следующими параметрами:

Поле Обязательный Тип Описание
EventsJsonPaths True Список строк Определяет путь к сообщению в ответе JSON. Выражение пути JSON указывает путь к элементу или набору элементов в структуре JSON.
IsGzipCompressed Boolean Определяет, сжимается ли ответ в gzip-файле.
формат True String json, csv, xmlили parquet
CompressionAlgo String Алгоритм сжатия либо multi-gzipdeflate. Для сжатия gzip настройте IsGzipCompressed вместо True задания значения для этого параметра.
CsvDelimiter String Если формат ответа — CSV, и вы хотите изменить разделитель ,CSV по умолчанию.
HasCsvBoundary Boolean Указывает, имеет ли данные CSV границы.
HasCsvHeader Boolean Указывает, имеет ли данные CSV заголовок. По умолчанию используется: True.
CsvEscape String Escape-символ для границы поля. По умолчанию используется: ". Например, CSV-файл с заголовками и строкой данных, содержащей пробелы id,name,avg , например 1,"my name",5.5 , требует " границы поля.

Замечание

Тип формата CSV анализируется спецификацией RFC 4180 .

Примеры конфигурации ответа

Несжатый JSON:

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

Сжатый CSV-файл:

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

Parquet (сжатие можно вывести):

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

Конфигурация DCR

Поле Обязательный Тип Описание
DataCollectionEndpoint True String DCE (конечная точка сбора данных), например: https://example.ingest.monitor.azure.com
DataCollectionRuleImmutableId True String Неизменяемый идентификатор DCR. Найдите его, просматривая ответ на создание DCR или используя API DCR.
StreamName True струна Это значение определяется в DCR (префикс должен начинаться streamDeclaration с Custom-).

Пример соединителя данных CCF

Ниже приведен пример всех компонентов StorageAccountBlobContainer соединителя данных CCF вместе.

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

Дополнительные сведения см. в примере REST API соединителя данных.