Ingerir dados do Microsoft 365
Beta
Esse recurso está em Beta. Para usá-lo, um administrador do workspace deve ativar o recurso Lakeflow Connect for Microsoft 365 Unified Audit Logs na página Pré-visualizações . Consulte Gerenciar prévias do Databricks.
Use os Pacotes de Automação Declarativa ou um notebook do Databricks para criar um pipeline gerenciado de logs de auditoria unificados do Microsoft 365 para qualquer uma das cinco tabelas de origem de logs de auditoria suportadas.
Requisitos
-
Para criar um pipeline de ingestão, primeiro atenda aos seguintes requisitos:
-
Seu workspace deve estar habilitado para o Unity Catalog.
-
O compute serverless deve estar habilitado para o seu workspace. Consulte Requisitos de computação serverless.
-
Para criar uma nova conexão, você deve ter os privilégios
CREATE CONNECTIONno metastore. Consulte Gerenciar privilégios no Unity Catalog.Se o conector oferecer suporte à criação de pipeline baseada em interface do usuário, um administrador poderá criar a conexão e o pipeline ao mesmo tempo concluindo os passos nesta página. No entanto, se os usuários que criarem pipelines usarem a criação de pipeline baseada em API ou forem usuários não administradores, um administrador deverá primeiro criar a conexão no Catalog Explorer. Consulte Conectar-se a fontes de ingestão gerenciadas.
-
Para usar uma conexão existente, você deve ter os privilégios
USE CONNECTIONouALL PRIVILEGESno objeto de conexão. -
Você deve ter os privilégios
USE CATALOGno catálogo de destino. -
Você deve ter os privilégios
USE SCHEMAeCREATE TABLEem um esquema existente ou os privilégiosCREATE SCHEMAno catálogo de destino.
-
-
Configurar a autenticação do Databricks e criar uma conexão. Consulte Configurar a autenticação para o Microsoft 365 e Criar uma conexão de logs de auditoria unificados do Microsoft 365.
-
Escolha os objetos de origem para ingestão. Para ver os objetos compatíveis, consulte Tabelas de origem compatíveis.
Opções de conector
O conector Microsoft 365 Unified Audit Logs não define opções de pipeline específicas do conector. Para obter configurações de conexão, consulte Opções de conexão.
Criar um pipeline de ingestão
Crie o pipeline com os Pacotes de Automação Declarativa ou um notebook do Databricks. Enquanto o conector estiver na versão Beta, defina o canal do pipeline como PREVIEW.
- Declarative Automation Bundles
- Databricks notebook
Use Pacotes de Automação Declarativa para gerenciar pipelines do Microsoft 365 Unified Audit Logs como código. Os pacotes podem conter definições YAML de pipelines e jobs, são gerenciados usando a CLI do Databricks e podem ser compartilhados entre workspaces de desenvolvimento, staging e produção. Para obter mais informações, consulte O que são os Pacotes de Automação Declarativa?.
-
Crie um pacote usando a CLI do Databricks:
Bashdatabricks bundle init -
Adicione um arquivo de definição de pipeline, como
resources/microsoft_365_pipeline.yml. Consulte pipeline.ingestion_definition e Exemplos. -
Adicione um arquivo de definição de job, como
resources/microsoft_365_job.yml, para executar o pipeline com mais frequência do que a cada sete dias. -
Deploy the pipeline using the Databricks CLI:
Bashdatabricks bundle deploy
- Importe o seguinte notebook para o seu workspace do Databricks:
-
Não edite as células de configuração. Edite apenas a última célula, que cria o pipeline. Veja pipeline.ingestion_definition e Exemplos.
-
Opcionalmente, configure as definições avançadas de pipeline. Consulte Padrões comuns para pipelines de ingestão gerenciados.
-
Clique em Executar tudo .
Exemplos
The Microsoft 365 Unified Audit Logs connector makes five source tables available in the default source schema. The following examples ingest Entra ID, Exchange, SharePoint, general, and data loss prevention audit events.
- Declarative Automation Bundles
- Databricks notebook
O arquivo de definição de pipeline a seguir ingere todas as cinco tabelas de origem:
resources:
pipelines:
microsoft_365_pipeline:
name: microsoft_365_pipeline
channel: PREVIEW
catalog: 'main'
target: 'microsoft_365_data'
ingestion_definition:
connection_name: microsoft_365_connection
objects:
- table:
source_schema: 'default'
source_table: 'audit_azure_active_directory'
destination_catalog: 'main'
destination_schema: 'microsoft_365_data'
destination_table: 'audit_azure_active_directory'
- table:
source_schema: 'default'
source_table: 'audit_exchange'
destination_catalog: 'main'
destination_schema: 'microsoft_365_data'
destination_table: 'audit_exchange'
- table:
source_schema: 'default'
source_table: 'audit_sharepoint'
destination_catalog: 'main'
destination_schema: 'microsoft_365_data'
destination_table: 'audit_sharepoint'
- table:
source_schema: 'default'
source_table: 'audit_general'
destination_catalog: 'main'
destination_schema: 'microsoft_365_data'
destination_table: 'audit_general'
- table:
source_schema: 'default'
source_table: 'dlp_all'
destination_catalog: 'main'
destination_schema: 'microsoft_365_data'
destination_table: 'dlp_all'
A seguinte especificação de pipeline ingere todas as cinco tabelas de origem:
pipeline_name = "microsoft_365_pipeline"
connection_name = "<microsoft-365-connection>"
source_tables = [
"audit_azure_active_directory",
"audit_exchange",
"audit_sharepoint",
"audit_general",
"dlp_all",
]
pipeline_spec = {
"name": pipeline_name,
"channel": "PREVIEW",
"catalog": "main",
"schema": "microsoft_365_pipeline",
"ingestion_definition": {
"connection_name": connection_name,
"objects": [
{
"table": {
"source_schema": "default",
"source_table": source_table,
"destination_catalog": "main",
"destination_schema": "microsoft_365_data",
"destination_table": source_table,
}
}
for source_table in source_tables
],
},
}
json_payload = json.dumps(pipeline_spec, indent=2)
create_pipeline(json_payload)
To ingest dlp_all, grant the ActivityFeed.ReadDlp application permission to the Microsoft Entra application. See Configure API permissions.
Arquivo de definição de job dos Pacotes de Automação Declarativa
A seguinte definição de job executa o pipeline de ingestão diariamente. Execute o pipeline com mais frequência do que a cada sete dias, pois a Microsoft disponibiliza o conteúdo da API Management Activity por um período limitado.
- Declarative Automation Bundles
resources:
jobs:
microsoft_365_job:
name: microsoft_365_job
schedule:
quartz_cron_expression: '0 0 0 * * ?'
timezone_id: 'UTC'
tasks:
- task_key: microsoft_365_ingestion
pipeline_task:
pipeline_id: ${resources.pipelines.microsoft_365_pipeline.id}
Padrões comuns
Para configurações avançadas de pipeline, consulte Padrões comuns para pipelines de ingestão gerenciados.
Passos seguintes
Comece, programe e defina alertas em seu pipeline. Consulte Tarefas comuns de manutenção de pipeline.