Configurar auditoria

A auditoria do Microsoft Dataverse usa configurações na tabela Organização e definições de tabelas e colunas individuais para determinar que tipo de dados de histórico de auditoria capturar. Qualquer pessoa pode exibir a configuração, mas você deve ter a função Administrador do Sistema ou Personalizador de Sistema para alterar as configurações. As alterações feitas na configuração de auditoria são incluídas no histórico de auditoria.

Definir configurações da organização

Cinco propriedades na tabela Organização controlam como a auditoria é habilitada para um ambiente. A tabela da organização contém uma única linha. A organizationid coluna é a chave primária. Consulte a linha diretamente para obter o valor da chave ou execute a mensagem WhoAmI e pegue o valor da propriedade WhoAmIResponse.OrganizationId.

A tabela a seguir descreve as colunas da tabela da organização que controlam o comportamento de auditoria.

Nome do esquema
Nome Lógico
Nome de exibição
Tipo Description
IsAuditEnabled
isauditenabled
A auditoria está ativada?
booleano Indica se a auditoria está habilitada para o ambiente
AuditRetentionPeriodV2
auditretentionperiodv2
Configurações do período de retenção de auditoria
Integer O número de dias para reter registros de log de auditoria
O valor padrão é 30. Os valores válidos estão entre 1 e 365.000 dias (aproximadamente 1.000 anos). Se o valor for definido como -1, os registros serão mantidos para sempre.
Guia do administrador: Iniciar/parar a auditoria e definir a política de retenção
IsUserAccessAuditEnabled
isuseraccessauditenabled
A auditoria de acesso do usuário está habilitada
booleano Se o log de acesso do usuário está habilitado
A auditoria para o ambiente deve ser habilitada para que o log de acesso do usuário seja habilitado.
UserAccessAuditingInterval
useraccessauditinginterval
Intervalo de auditoria de autenticação de usuário
Integer Com que frequência o acesso do usuário é registrado, em horas
O valor padrão é 4.
AuditSettings
auditsettings
Configurações de auditoria
String String de formato JSON. Contém configurações relacionadas ao recurso de auditoria.

Recuperar as configurações da organização

Use as consultas a seguir para recuperar as configurações da sua organização.

Solicitação:

GET [Organization URI]/api/data/v9.2/organizations?$select=
auditsettings,
isauditenabled,
auditretentionperiodv2,
isuseraccessauditenabled,
useraccessauditinginterval HTTP/1.1

Accept: application/json  
OData-MaxVersion: 4.0  
OData-Version: 4.0
If-None-Match: null

Resposta:

HTTP/1.1 200 OK

{
    "@odata.context": "[Organization URI]/api/data/v9.2/$metadata#organizations(auditsettings,isauditenabled,auditretentionperiodv2,isuseraccessauditenabled,useraccessauditinginterval)",
    "value": [
        {
            "@odata.etag": "W/\"67404512\"",
            "auditsettings": "{\"IsSqlAuditWriteDisabled\":true}",
            "isauditenabled": true,
            "auditretentionperiodv2": 30,
            "isuseraccessauditenabled": true,
            "useraccessauditinginterval": 4,
            "organizationid": "<organizationid value>"
        }
    ]
}

Saiba mais sobre:

Alterar as configurações da organização

Altere os valores de coluna na tabela da organização para alterar como a auditoria funciona para o ambiente. Você deve ter a função Administrador do Sistema ou Personalizador de Sistema para alterar essas configurações. Saiba mais sobre como ler e atualizar as configurações do ambiente

Alterar AuditSettings

Organization.AuditSettings contém uma cadeia de caracteres JSON para armazenar configurações para habilitar diferentes recursos. Você pode habilitar alguns recursos atualizando a coluna auditsettings do registro da organização. A tabela a seguir especifica quais configurações de auditoria existem, para que elas são usadas e se elas podem ser alteradas.

Setting Description Atualizável
StoreLabelNameforPicklistAudits Para auditorias de valores de lista de seleção, audite o valor da opção e o nome da opção. Caso contrário, somente o valor da opção. A opção de rótulo selecionada pelo usuário original persiste nos registros de auditoria. Yes
IsSqlAuditWriteDisabled Indica se as gravações na tabela de auditoria do SQL são desabilitadas quando o armazenamento de auditoria não SQL está habilitado. Não, lança um erro.
ApplyRetentionToExistingLogs Aplique uma nova política de retenção aos registros de auditoria existentes. Não, ignorado.

Use os exemplos a seguir para definir as configurações da sua organização. Você precisa do valor organizationid. Confira Recuperar configurações da organização para saber como obtê-las.

Solicitação:

PATCH [Organization URI]/api/data/v9.2/organizations([Organization ID]) HTTP/1.1
Content-Type: application/json  
OData-MaxVersion: 4.0  
OData-Version: 4.0
If-Match: *

{
   "auditsettings": "{\"StoreLabelNameforPicklistAudits\":true}"
}

Resposta:

HTTP/1.1 204 No content

Saiba mais sobre:

Configurar tabelas e colunas

Quando você habilita a auditoria para a organização, tabelas que têm a auditoria habilitada gravam dados de auditoria para todas as colunas que têm a auditoria habilitada. O controle primário está na organização e, em seguida, no nível da tabela.

Cada uma das tabelas e colunas tem uma propriedade gerenciada chamada IsAuditEnabled que controla se elas estão habilitadas para auditoria.

Item Web API SDK para .NET
Table EntityMetadata.IsAuditEnabled Propriedade IsAuditEnabled de EntityMetadata
Coluna AttributeMetadata.IsAuditEnabled AttributeMetadata.IsAuditEnabled Propriedade

A IsAuditEnabled propriedade é uma propriedade gerenciada definida pelos seguintes tipos:

Web API SDK para .NET
BooleanManagedProperty ComplexType Classe BooleanManagedProperty

Um BooleanManagedProperty tem duas propriedades importantes:

Property Description
Value Determina se a configuração está habilitada.
CanBeChanged Determina se a Value configuração pode ser alterada depois que a tabela ou coluna é incluída em uma solução gerenciada.

O publicador de uma solução gerenciada que adiciona uma tabela pode impedir que as pessoas que instalam a solução habilitem a auditoria. Algumas tabelas do sistema Dataverse não podem ser habilitadas ou desabilitadas para auditoria porque a propriedade CanBeChanged está definida como false. Saiba mais sobre as propriedades gerenciadas.

Note

A propriedade IsAuditEnabled é exposta no designer como uma propriedade booliana simples com o rótulo Auditar alterações em seus dados para tabelas ou Habilitar a auditoria para colunas. Você só pode ler ou definir a CanBeChanged propriedade programaticamente.

Detectar quais tabelas estão habilitadas para auditoria

Consulte as definições da tabela e verifique a propriedade IsAuditEnabled para ver quais tabelas dão suporte à auditoria e quais você pode alterar.

Essa consulta retorna o Logicalname de todas as tabelas públicas habilitadas para auditoria.

Solicitação:

GET [Organization URI]/api/data/v9.2/EntityDefinitions?$select=
LogicalName,
IsAuditEnabled
&$filter=IsAuditEnabled/Value eq true 
and IsPrivate eq false

Accept: application/json  
OData-MaxVersion: 4.0  
OData-Version: 4.0
If-None-Match: null

Resposta:

{
    "@odata.context": "[Organization URI]/api/data/v9.2/$metadata#EntityDefinitions(LogicalName,IsAuditEnabled)",
    "value": [
        {
            "LogicalName": "account",
            "MetadataId": "70816501-edb9-4740-a16c-6a5efbc05d84",
            "IsAuditEnabled": {
                "Value": true,
                "CanBeChanged": true,
                "ManagedPropertyLogicalName": "canmodifyauditsettings"
            }
        },
    < list truncated for brevity >
    ]
}

Saiba mais sobre:

Detectar quais colunas estão habilitadas para auditoria

Consulte as definições de coluna e verifique a IsAuditEnabled propriedade para ver quais colunas dão suporte à auditoria e quais podem ser alteradas.

Solicitação:

GET [Organization URI]/api/data/v9.0/EntityDefinitions(LogicalName='account')/Attributes?$select=
LogicalName,
IsAuditEnabled
&$filter=IsAuditEnabled/Value eq true

Accept: application/json  
OData-MaxVersion: 4.0  
OData-Version: 4.0
If-None-Match: null

Resposta:

{
    "@odata.context": "[Organization URI]/api/data/v9.2/$metadata#EntityDefinitions('account')/Attributes(LogicalName,IsAuditEnabled)",
    "value": [
        {
            "@odata.type": "#Microsoft.Dynamics.CRM.StringAttributeMetadata",
            "LogicalName": "emailaddress3",
            "MetadataId": "97fb4aae-ea5d-427f-9b2b-9a6b9754286e",
            "IsAuditEnabled": {
                "Value": true,
                "CanBeChanged": true,
                "ManagedPropertyLogicalName": "canmodifyauditsettings"
            }
        },
    < list truncated for brevity >
    ]
}

Saiba mais sobre: Consultar definições de tabela usando a API Web

Habilitar ou desabilitar tabelas e colunas para auditoria

Para alterar quais tabelas e colunas dão suporte à auditoria, atualize a propriedade IsAuditEnabled.Value delas.

Habilitar ou desabilitar a auditoria para tabelas

API Property Mais informações
Web API EntityMetadata.IsAuditEnabled.Value Atualizar definições de tabela
SDK para .NET EntityMetadata.IsAuditEnabled.Value Recuperar e atualizar uma tabela

Habilitar ou desabilitar a auditoria para colunas

API Property Mais informações
Web API AttributeMetadata.IsAuditEnabled.Value Atualizar uma coluna
SDK para .NET AttributeMetadata.IsAuditEnabled.Value Atualizar uma coluna

Importante

As alterações não entrarão em vigor até que você publique as personalizações de tabela.

Publicar alterações de coluna

Use a mensagem PublishXml para publicar personalizações da tabela.

Solicitação:

POST [Organization URI]/api/data/v9.2/PublishXml HTTP/1.1

Accept: application/json  
OData-MaxVersion: 4.0  
OData-Version: 4.0
If-None-Match: null

{
    "ParameterXml": "<importexportxml><entities><entity>account</entity></entities></importexportxml>"
}

Resposta:

HTTP/1.1 204 OK 

Saiba mais sobre:

Saiba mais sobre:

Consulte também

Guia do administrador: gerenciar a auditoria do Dataverse
Guia do administrador: aba Auditoria de Configurações do Sistema
Visão geral de auditoria
Recuperar o histórico de alterações de dados auditados
Excluir dados de auditoria