Aplica-se a: ✅ Armazém em Microsoft Fabric
A auditoria no Fabric Data Warehouse oferece capacidades reforçadas de segurança e conformidade ao rastrear e registar eventos da base de dados.
Pode configurar registos de auditoria SQL em Fabric Data Warehouse no portal Fabric ou via API REST.
Pré-requisitos
Para configurar registos de auditoria SQL para Fabric Data Warehouse, precisa dos seguintes itens:
- Um espaço de trabalho do Fabric com capacidade ativa ou em avaliação.
- Acesso a um artigo de armazém dentro de um espaço de trabalho.
-
Permissão de auditoria para configurar e consultar registos de auditoria. Para obter mais informações, consulte Permissões.
Pode configurar registos de auditoria SQL usando o portal Fabric ou a API REST.
No espaço de trabalho Fabric, selecione as Configurações do item de depósito.
Selecione a página de Logs de Auditoria SQL.
Habilite a configuração Salvar eventos em logs de auditoria SQL.
Por padrão, todas as ações são habilitadas e mantidas por nove anos.
Em Eventos a registar, selecione quais os eventos que os registos de auditoria SQL capturam. Selecione as categorias de eventos ou grupos individuais de ações de auditoria que pretende capturar. Selecione apenas os eventos de que sua organização precisa para otimizar o armazenamento e a relevância.
Opcionalmente, introduza uma Expressão de Predicado para filtrar eventos, como excluir atividade de um principal de serviço conhecido ou identidade de automação. Use a sintaxe descrita na sintaxe de expressão de predicados.
Importante
A filtragem de predicados aplica-se apenas a eventos já selecionados em Eventos para registar. Por exemplo, para filtrar SELECT sentenças, também deve ativar o Batch Was Completed.
Especifique um período de retenção de log desejado em Anos, Meses e Dias.
Selecione Salvar para aplicar suas configurações.
O seu armazém agora regista os eventos de auditoria selecionados e armazena os registos de forma segura no OneLake.
Descarregue e instale Visual Studio Code.
Instale a extensão cliente REST a partir do Visual Studio Marketplace.
Obtenha o token de portador seguindo estes passos. Pode encontrar o seu token portador Power BI nas ferramentas de desenvolvimento do seu navegador ou através do PowerShell.
Para usar as ferramentas de desenvolvimento Edge para encontrar o seu token portador Power BI:
- Abra o seu espaço de trabalho Microsoft Fabric num navegador (Microsoft Edge).
- Pressione F12 para abrir as Ferramentas de Desenvolvimento.
- Selecione a guia Console. Se necessário, selecione Visualização Rápida Expandida para revelar o prompt
> do console.
- Digite o comando
powerBIAccessToken e pressione Enter. Clique com o botão direito do mouse na cadeia de caracteres exclusiva grande retornada no console e selecione Copiar conteúdo da cadeia de caracteres.
- Cole no lugar de
<bearer token> nos scripts seguintes.
Para usar o PowerShell para encontrar o seu token portador de Power BI:
Instale o módulo MicrosoftPowerBIMgmt a partir do Microsoft Power BI Cmdlets para Windows PowerShell e PowerShell Core.
Install-Module -Name MicrosoftPowerBIMgmt
Use Connect-PowerBIServiceAccount para se ligar ao Power BI PowerShell e recuperar o token portador.
Connect-PowerBIServiceAccount
$token = (Get-PowerBIAccessToken).Authorization
Write-Output "Bearer $token"
Depois de obter o token portador Power BI, envie um PATCH pedido usando a extensão REST Client. No VS Code, cria um novo ficheiro de texto com a .http extensão.
Copie e cole a seguinte solicitação:
PATCH https://api.fabric.microsoft.com/v1/workspaces/<workspaceId>/warehouses/<warehouseId>/settings/sqlAudit
content-type: application/json
Authorization: Bearer <BEARER_TOKEN>
{
"state": "Enabled",
"retentionDays": "0"
}
- Substitua
<workspaceId> e <warehouseId> pelos IDs de espaço de trabalho e de depósito do Fabric correspondentes. Para encontrar esses valores, visite seu armazém no portal Fabric.
-
<workspaceID>: Encontre o GUID do espaço de trabalho no URL após a /groups/ secção ou executando SELECT @@SERVERNAME em um armazém existente. Por exemplo, 11aaa111-a11a-1111-1aaa-aa111111aaa. Não inclua os / caracteres.
-
<warehouseID>: Encontre o GUID do armazém no URL na secção /warehouses/, ou executando SELECT @@SERVERNAME em um armazém existente. Por exemplo, 11aaa111-a11a-1111-1aaa-aa111111aaa. Não inclua os / caracteres.
- Substitua
<BEARER_TOKEN> pelo seu token de autenticação.
- Defina
state para Enabled ativar a auditoria (use Disabled para desligar).
- Defina o
retentionDays parâmetro para 0 retenção ilimitada. Essa configuração é o padrão.
Importante
No código de exemplo de extensão, você deve incluir uma linha vazia imediatamente após fornecer o token de portador. Esta linha vazia sinaliza a extensão onde terminam os cabeçalhos HTTP e começa o corpo do comando da API, para que a API consiga distinguir corretamente entre os dois.
Selecione Enviar pedido.
Verificar o status do log de auditoria com a API REST
Para verificar se os registos de auditoria SQL estão ativados, envie um pedido GET usando a mesma extensão do cliente REST.
- No VS Code, cria um novo ficheiro de texto com a
.http extensão.
- Copie e cole o seguinte pedido, fornecendo os seus próprios
workspaceId, <warehouseId> e <BEARER_TOKEN>.
GET https://api.fabric.microsoft.com/v1/workspaces/<workspaceId>/warehouses/<warehouseId>/settings/sqlAudit
content-type: application/json
Authorization: Bearer <BEARER_TOKEN>
A resposta retorna ENABLED ou DISABLED e a configuração atual de auditActionsAndGroups e predicateExpression.
Os logs de auditoria SQL dependem de grupos de ação predefinidos que capturam eventos específicos no banco de dados. Para detalhes sobre grupos de ações de auditoria, consulte registos de auditoria SQL no Fabric Data Warehouse.
No VS Code, cria um novo ficheiro de texto com a .http extensão.
Copie e cole o seguinte pedido, fornecendo os seus próprios workspaceId, <warehouseId> e <BEARER_TOKEN>.
POST https://api.fabric.microsoft.com/v1/workspaces/<workspaceId>/warehouses/<warehouseId>/settings/sqlAudit
content-type: application/json
Authorization: Bearer <BEARER_TOKEN>
[ "DATABASE_OBJECT_PERMISSION_CHANGE_GROUP" ]
Selecione Enviar pedido.
Use o mesmo PATCH pedido de API para configurar uma expressão de predicado que exclua eventos específicos da geração, como atividade de um principal de serviço conhecido ou identidade de automação. Para a sintaxe completa dos predicados, veja Sintaxe de expressão de predicados.
No VS Code, cria um novo ficheiro de texto com a .http extensão.
Copie e cole o seguinte pedido, fornecendo os seus próprios workspaceId, <warehouseId> e <BEARER_TOKEN>.
PATCH https://api.fabric.microsoft.com/v1/workspaces/<workspaceId>/warehouses/<warehouseId>/settings/sqlAudit
content-type: application/json
Authorization: ******
{
"state": "Enabled",
"retentionDays": 10,
"predicateExpression": "NOT statement LIKE 'SELECT %'"
}
- Este exemplo exclui
SELECT as instruções de serem auditadas por filtragem no statement campo.
- Quando ativas a auditoria SQL pela primeira vez, omitir
predicateExpression não se aplica nenhum predicado. Em atualizações posteriores, omiti-lo mantém o predicado existente inalterado. Especifique uma cadeia vazia ("") para remover um predicado existente.
Importante
A filtragem de predicados avalia apenas eventos que já estão configurados para serem capturados. Para filtrar SELECT instruções como mostrado neste exemplo, deve também ativar o grupo de ações Batch Was Completed (BATCH_COMPLETED_GROUP). Para mais informações, consulte Grupos de ações e ações de auditoria ao nível da base de dados.
Selecione Enviar pedido.
Consultar registos de auditoria
Os dados de registo de auditoria SQL são armazenados em . Ficheiros XEL no OneLake. Pode aceder a estes dados usando a função sys.fn_get_audit_file_v2 Transact-SQL (T-SQL). Para mais informações sobre como os ficheiros de auditoria são armazenados no OneLake, consulte os registos de auditoria SQL em Fabric Data Warehouse.
A partir do editor de consultas SQL ou de qualquer ferramenta de consulta, como o SQL Server Management Studio (SSMS) ou a extensão MSSQL para Visual Studio Code, utilize os seguintes exemplos de consultas T-SQL. Certifique-se de fornecer o seu próprio <workspaceId> e <warehouseId>.
SELECT *
FROM sys.fn_get_audit_file_v2
('https://onelake.blob.fabric.microsoft.com/<workspaceId>/<warehouseId>/Audit/sqldbauditlogs/'
, default, default, default, default);
Para filtrar logs por intervalo de tempo, use a seguinte consulta:
SELECT *
FROM sys.fn_get_audit_file_v2
('https://onelake.blob.fabric.microsoft.com/<workspaceId>/<warehouseId>/Audit/sqldbauditlogs/'
, default, default, '2025-03-30T08:40:40Z', '2025-03-30T09:10:40Z');
Conteúdo relacionado