Recuperar el historial de cambios de datos auditados
Cuando se habilita la auditoría y los datos en las tablas y columnas auditadas cambian, puede recuperar el historial de cambios de esas tablas y columnas.
Los datos de auditoría no están disponibles usando el punto de conexión Dataverse TDS (SQL).
El historial de auditoría no está disponible para las tablas en la aplicación móvil.
Tabla de auditoría
Los eventos de auditoría se almacenan en la Tabla de auditoría (Audit). En la API web, el EntityType de auditoría es el recurso para estos datos. La tabla de auditoría es de solo lectura.
La tabla de auditoría proporciona los datos para el Ver resumen de auditoría mostrado en el centro de administración de Power Platform.
Asegúrese de que el usuario que llama tiene el privilegio prvReadAuditSummary
para recuperar datos de la tabla.
La siguiente tabla resume las columnas importantes en la tabla de auditoría.
SchemaName LogicalName Nombre para mostrar |
Type | Descripción |
---|---|---|
Action action Evento |
Opción | Representa el evento que provocó el cambio. Más información sobre acciones. |
AttributeMask attributemask Campo cambiado |
Memo | Cuando el cambio representa un cambio de datos en un registro, contiene una lista de números separados por comas que corresponden al AttributeMetadata.ColumnNumber para las columnas que se han cambiado. Nota: No use estos datos. En su lugar, utilice los mensajes para recuperar el historial de cambios. |
AuditId auditid Identificador de registro |
Identificador único | Identifica la clave principal para la tabla de auditoría. |
CallingUserId callinguserid Usuario que llama |
Lookup | Identifica el usuario que llama cuando se utiliza la suplantación para la operación; si no, será nula. |
CreatedOn createdon Fecha cambiada |
Fecha y hora | Identifica cuándo se creó el registro de auditoría, que es cuando tuvo lugar la operación del usuario. |
ObjectId objectid Grabar |
Lookup | Identifica de forma única el registro que se auditó. |
ObjectTypeCode objecttypecode Entity |
EntityName | Muestra el nombre lógico de la tabla referida por la columna objectid . |
Operation operation Operación |
Opción | Identifica la operación que creó el registro de auditoría; uno de cuatro valores: 1 = Crear 2 = Actualizar 3 = Eliminar 4 = Acceso |
UserId userid Cambiado por |
Lookup | Muestra el id. del usuario que cambió los datos. |
Acciones de auditoría
Use Opciones/elecciones de acciones para filtrar por eventos concretos. Las siguientes tablas clasifican estos eventos.
Eventos de fila de tabla
Estos eventos capturan cambios en un registro.
Valor | Etiqueta | Mensaje | Descripción |
---|---|---|---|
1 | Crear | Create |
Se crea un registro. |
2 | Actualizar | Update |
Se actualiza un registro. |
3 | Eliminar | Delete |
Se elimina un registro. |
12 | Combinar | Merge |
Un registro se combina con otro. |
13 | Assignar | Assign |
Se cambia el valor de columna ownerid para un registro de tabla propiedad del usuario. |
41 | Establecer estado | SetState |
Se cambia el valor de columna statecode para un registro. |
Eventos de compartir registro
Estos eventos capturan cambios en el acceso a los registros cuando se comparte un registro.
Valor | Etiqueta | Mensaje | Descripción |
---|---|---|---|
14 | Compartir | GrantAccess |
A un usuario se le otorgan privilegios sobre un registro. |
48 | Modificar Compartir | ModifyAccess |
Los privilegios otorgados a un usuario se cambian. |
49 | Dejar de compartir | RevokeAccess |
A un usuario se le retira el acceso a un registro. |
Eventos de relación varios a varios
Estos eventos capturan cambios en las relaciones de varios a varios.
valor | Etiqueta | Publicación | Descripción |
---|---|---|---|
33 | Asociar entidades | Associate |
Uno o más registros están asociados con otro. |
34 | Anular asociación de entidades | Disassociate |
Uno o más registros dejan de estar asociados entre ellos. |
53 | Asignar rol a equipo | Associate |
Un rol de seguridad se asigna a un equipo. |
54 | Quitar rol de equipo | Disassociate |
Un rol de seguridad es eliminado de un equipo. |
55 | Asignar rol a usuario | Associate |
Asignar un rol de seguridad a un usuario. |
56 | Quitar rol de usuario | Disassociate |
Un rol de seguridad es eliminado de un usuario. |
Eventos de acceso de los usuarios
Estas opciones capturan el historial de acceso de usuarios cuando la auditoría de acceso de usuarios está habilitada. El registro de auditoría de estos eventos tiene un valor en la columna operation
de 4.
valor | Etiqueta | Descripción |
---|---|---|
64 | Acceso de usuario mediante web | El usuario está accediendo a Dataverse usando una aplicación basada en modelo. |
65 | Acceso de usuario mediante servicios web | El usuario está accediendo Dataverse usando servicios web usando un cliente que no es una aplicación basada en modelos. |
112 | Auditoría de acceso de usuario iniciada | La auditoría de acceso de usuario ha comenzado. |
113 | Auditoría de acceso de usuario detenida | Auditoría de acceso de usuario finalizada. |
La Muestra: Auditar el acceso de los usuarios muestra cómo utilizar estas opciones de acción para auditar el acceso de los usuarios.
Eventos de cambio de metadatos
Estos eventos capturan cambios en las definiciones de tablas y columnas, así como cambios en la tabla de organización.
Valor | Etiqueta | Descripción |
---|---|---|
100 | Eliminar entidad | El usuario eliminó una tabla. |
101 | Eliminar atributo | El usuario eliminó una columna. |
102 | Cambio en la auditoría con relación a la entidad | El usuario cambió una definición de tabla para habilitar o deshabilitar la auditoría. |
103 | Cambio en la auditoría con relación al atributo | El usuario cambió una definición de columna para habilitar o deshabilitar la auditoría. |
104 | Cambio en la auditoría con relación a la organización | Un usuario ha cambiado la configuración de la organización. |
Eventos de cambio de auditoría
Estos eventos capturan cambios en la configuración de auditoría.
valor | Etiqueta | Descripción |
---|---|---|
105 | Auditoría de entidad iniciada | Se ha habilitado la auditoría para una tabla. |
106 | Auditoría de atributo iniciada | Se ha habilitado una auditoría para una columna. |
107 | Auditoría habilitada | La auditoría se ha habilitado para la organización. |
108 | Auditoría de entidad detenida | Se ha deshabilitado una auditoría para una tabla. |
109 | Auditoría de atributo detenida | Se ha deshabilitado una auditoría para un atributo. |
110 | Auditoría deshabilitada | Se ha deshabilitado una auditoría para una columna. |
111 | Eliminación de registro de auditoría | Se eliminó un registro de auditoría. |
Eventos de cambios en los roles de seguridad
Estos eventos capturan cambios en los roles de seguridad.
valor | Etiqueta | Publicación | Descripción |
---|---|---|---|
57 | Agregar privilegios al rol | AddPrivilegesRole |
Privilegios agregados a un rol. |
58 | Quitar privilegios del rol | RemovePrivilegeRole |
Privilegios quitados de un rol. |
59 | Reemplazar privilegios del rol | ReplacePrivilegesRole |
Se reemplazan los privilegios de un rol. |
Otras acciones
Las opciones de acción restantes generalmente se referirán a operaciones auditables que se aplican a soluciones específicas, como Dynamics 365 Sales, Customer Service y Marketing.
Las etiquetas para estas acciones deben alinearse con un valor SdkMessage.Name que representa la acción. La operación específica puede ser una combinación del nombre de la acción y una tabla. Por ejemplo, una opción con un valor 10 y la etiqueta Cerrar debe corresponder a los mensajes CloseIncident
o CloseQuote
.
Relaciones de tabla auditar
La tabla de auditoría tiene solo dos relaciones varios a uno con la tabla systemuser
:
Relationship | Búsqueda de tabla auditar | Descripción |
---|---|---|
lk_audit_userid |
userid |
Relaciona al usuario con todos los registros de auditoría creados debido a los cambios que realizó. |
lk_audit_callinguserid |
callinguserid |
Relaciona al usuario con cualquiera de los registros de auditoría que creó mientras se hacía pasar por otro usuario. |
Puede usar estos Relaciones para filtrar registros de datos de auditoría creados para un usuario específico.
La entidad de auditoría solo admite una entidad de enlace en una consulta. Dado que solo existen dos Relaciones con la tabla systemuser
, que puede incluir datos de las columnas callinguserid
o userid
, pero no ambas al mismo tiempo.
No puede crear consultas con QueryExpression o FetchXml que combinen datos de auditoría con tablas que no sean las dos Relaciones formales que existen con la tabla systemuser
.
Definición de auditoría EntityType
Con la Web API, utilice el recurso EntityType de auditoría para leer datos de una tabla de auditoría. Los siguientes datos son la definición del documento EntityType de auditoría de la API web del documento $metadata service de CSDL sin anotaciones.
<EntityType Name="audit" BaseType="mscrm.crmbaseentity">
<Key>
<PropertyRef Name="auditid" />
</Key>
<Property Name="operation" Type="Edm.Int32" />
<Property Name="attributemask" Type="Edm.String" Unicode="false" />
<Property Name="action" Type="Edm.Int32" />
<Property Name="useradditionalinfo" Type="Edm.String" Unicode="false" />
<Property Name="createdon" Type="Edm.DateTimeOffset" />
<Property Name="objecttypecode" Type="Edm.String" Unicode="false" />
<Property Name="_callinguserid_value" Type="Edm.Guid" />
<Property Name="_regardingobjectid_value" Type="Edm.Guid" />
<Property Name="_objectid_value" Type="Edm.Guid" />
<Property Name="_userid_value" Type="Edm.Guid" />
<Property Name="transactionid" Type="Edm.Guid" />
<Property Name="auditid" Type="Edm.Guid" />
<NavigationProperty Name="callinguserid" Type="mscrm.systemuser"
Nullable="false" Partner="lk_audit_callinguserid">
<ReferentialConstraint Property="_callinguserid_value"
ReferencedProperty="systemuserid" />
</NavigationProperty>
<NavigationProperty Name="userid" Type="mscrm.systemuser"
Nullable="false" Partner="lk_audit_userid">
<ReferentialConstraint Property="_userid_value"
ReferencedProperty="systemuserid" />
</NavigationProperty>
</EntityType>
Nota
La Columna ChangeData no está incluida en la API web EntityType de auditoría. No use estos datos. En su lugar, utilice los mensajes para recuperar el historial de cambios de la auditoría.
Ejemplo: Buscar registros de contactos eliminados por un usuario
Los siguientes ejemplos son consultas que muestran el historial de auditoría de los registros de contacto eliminados por un usuario específico.
Las dos consultas siguientes devuelven la misma respuesta.
La siguiente consulta filtra en la propiedad _userid_value
del registro de auditoría donde el valor coincide <user id>
.
Solicitud:
GET [Organization URI]/api/data/v9.2/audits?$select=_objectid_value,objecttypecode,createdon,_userid_value&$orderby=createdon desc&$filter=operation eq 3 and objecttypecode eq 'contact' and _userid_value eq '<user id>'
Accept: application/json
OData-MaxVersion: 4.0
OData-Version: 4.0
If-None-Match: null
Prefer: odata.include-annotations="*"
La siguiente consulta accede a la colección de registros de auditoría para un usuario específico con propiedad lk_audit_userid
de navegación con valor de colección de la tabla systemuser
donde coincide el valor systemuserid
coincide con <user id>
Solicitud:
GET [Organization URI]/api/data/v9.2/systemusers(<user id>)/lk_audit_userid?$select=_objectid_value,objecttypecode,createdon,_userid_value&$orderby=createdon desc&$filter=operation eq 3 and objecttypecode eq 'contact'
Accept: application/json
OData-MaxVersion: 4.0
OData-Version: 4.0
If-None-Match: null
Prefer: odata.include-annotations="*"
Respuesta:
HTTP/1.1 200 OK
Preference-Applied: odata.include-annotations="*"
{
"@odata.context": "[Organization URI]/api/data/v9.2/$metadata#audits(_objectid_value,objecttypecode,createdon,_userid_value)",
"@Microsoft.Dynamics.CRM.totalrecordcount": -1,
"@Microsoft.Dynamics.CRM.totalrecordcountlimitexceeded": false,
"value": [
{
"_objectid_value@Microsoft.Dynamics.CRM.lookuplogicalname": "contact",
"_objectid_value": "0e76dc8a-41b5-ec11-983f-0022482bf046",
"objecttypecode@OData.Community.Display.V1.FormattedValue": "Contact",
"objecttypecode": "contact",
"createdon@OData.Community.Display.V1.FormattedValue": "5/12/2022 3:19 PM",
"createdon": "2022-05-12T22:19:12Z",
"_userid_value@Microsoft.Dynamics.CRM.lookuplogicalname": "systemuser",
"_userid_value@OData.Community.Display.V1.FormattedValue": "FirstName LastName",
"_userid_value": "4026be43-6b69-e111-8f65-78e7d1620f5e"
},
< Other results truncated for brevity>
]
}
Recuperan el historial de cambios de auditoría
Puede usar cualquiera de los tres mensajes para recuperar los cambios de datos que se auditan.
API Web | SDK para .NET | Descripción |
---|---|---|
Función RetrieveAuditDetails | Clase RetrieveAuditDetailsRequest | Recupere los detalles completos de la auditoría de un registro de auditoría. |
Función RetrieveAttributeChangeHistory | Clase RetrieveAttributeChangeHistoryRequest | Recupere el historial de cambios de una sola columna de un registro auditado. |
Función RetrieveRecordChangeHistory | Clase RetrieveRecordChangeHistoryRequest | Recupere todos los cambios de datos auditados para un registro específico. |
Para utilizar estos mensajes asegúrese de tener los privilegios prvReadRecordAuditHistory
y prvReadAuditSummary
.
Tipos de AuditDetail
Estos mensajes proporcionan detalles adicionales que dependen del tipo de acción. Los detalles se implementan usando tipos que se derivan de un tipo de base AuditDetail
como se muestra en la siguiente tabla.
API Web | SDK para .NET | Descripción |
---|---|---|
AuditDetail ComplexType | Clase AuditDetail | Muestra el tipo base para las clases derivadas. Proporciona acceso al registro de auditoría. |
AttributeAuditDetail ComplexType | Clase AttributeAuditDetail | Proporciona detalles cuando se producen cambios en los datos de un registro. Proporciona acceso a valores antiguos y valores nuevos. Devuelto por los siguientes tipos de acciones: - Eventos de fila de tabla - Eventos de cambio de metadatos - Eventos de cambio de auditoría |
RelationshipAuditDetail ComplexType | Clase RelationshipAuditDetail | Proporciona detalles cuando los registros se asocian o desasocian mediante una relación de varios a varios. Proporciona el nombre de la relación y una lista de los registros que cambió la operación. Devuelto por Eventos de relación varios a varios. |
RolePrivilegeAuditDetail ComplexType | Clase RolePrivilegeAuditDetail | Proporciona detalles cuando las definiciones de registros Rol de seguridad (Rol) cambian. Proporciona información sobre los privilegios de función nuevos y antiguos asociados a la función. Devuelto por Eventos de cambio de rol de seguridad. |
ShareAuditDetail ComplexType | Clase ShareAuditDetail | Proporciona detalles cuando un registro se comparte, deja de compartirse o cuando cambia el nivel de acceso a un registro compartido. Devuelto por Eventos de uso compartido de registros. |
UserAccessAuditDetail ComplexType | Clase UserAccessAuditDetail | Proporciona detalles para realizar un seguimiento de la auditoría de acceso de los usuarios. Proporciona detalles sobre el intervalo y el tiempo de acceso. Devuelto por Eventos de acceso de usuario. |
Importante
Los tipos de API web enumerados anteriormente que heredan de AuditDetail ComplexType no devuelven el valor de propiedad de navegación
AuditRecord
que deberían heredar deAuditDetail
. El SDK para clases .NET devuelve estos datos.Los valores de columnas grandes, incluidos en las propiedades
AttributeAuditDetail
OldValue
oNewValue
como Email.Description o Annotation están limitados a 5 KB o alrededor de 5000 caracteres. Un valor de columna tapada se puede reconocer por puntos suspensivos (...) al final del texto; por ejemplo, "lorem ipsum, lorem ip...". Como los datos están truncados, no puede usarlos para restaurar los cambios en estos valores de columna.
Mensaje RetrieveAuditDetails
Utilice este mensaje para recuperar los detalles de auditoría de un único registro de auditoría.
RetrieveAuditDetails es una función vinculada a la tabla de auditoría. Incluye el encabezado de solicitud Prefer: odata.include-annotations="*"
para obtener valores formateados.
El siguiente ejemplo muestra AttributeAuditDetail ComplexType devuelto cuando parentaccountid
se establece en un registro de account
.
Solicitud:
GET [Organization URI]/api/data/v9.2/audits(12869c65-d7d3-ec11-b656-281878f0eba9)/Microsoft.Dynamics.CRM.RetrieveAuditDetails
Accept: application/json
OData-MaxVersion: 4.0
OData-Version: 4.0
If-None-Match: null
Prefer: odata.include-annotations="*"
Respuesta:
HTTP/1.1 200 OK
OData-Version: 4.0
Preference-Applied: odata.include-annotations="*"
{
"@odata.context": "[Organization URI]/api/data/v9.2/$metadata#Microsoft.Dynamics.CRM.RetrieveAuditDetailsResponse",
"AuditDetail": {
"@odata.type": "#Microsoft.Dynamics.CRM.AttributeAuditDetail",
"InvalidNewValueAttributes": [],
"LocLabelLanguageCode": 0,
"DeletedAttributes": {
"Count": 0,
"Keys": [],
"Values": []
},
"OldValue": {
"@odata.type": "#Microsoft.Dynamics.CRM.account"
},
"NewValue": {
"@odata.type": "#Microsoft.Dynamics.CRM.account",
"_parentaccountid_value@OData.Community.Display.V1.FormattedValue": "A. Datum Corporation",
"_parentaccountid_value@Microsoft.Dynamics.CRM.associatednavigationproperty": "parentaccountid",
"_parentaccountid_value@Microsoft.Dynamics.CRM.lookuplogicalname": "account",
"_parentaccountid_value": "d249d106-38b5-ec11-983f-002248296cd0"
}
}
}
Más información sobre:
Mensaje RetrieveAttributeChangeHistory
Utilice este mensaje para recuperar una lista de cambios para una columna de tabla específica.
Use el parámetro PagingInfo
para controlar el número de registros a devolver y avanzar o retroceder a través de las páginas. Para solicitudes posteriores, establezca la propiedad PagingInfo.PagingCookie
al valor devuelto por AuditDetailCollection.PagingCookie
.
Los cambios para este mensaje siempre serán tipos AttributeAuditDetail
.
Este ejemplo devuelve un único historial de cambios auditado para la columna description
de un registro de tabla account
.
Solicitud:
GET [Organization URI]/api/data/v9.2/RetrieveAttributeChangeHistory(Target=@target,AttributeLogicalName=@attributeLogicalName,PagingInfo=@paginginfo)?
@target={ '@odata.id':'accounts(611e7713-68d7-4622-b552-85060af450bc)'}
&@attributeLogicalName='description'
&@paginginfo={
"PageNumber": 1,
"Count": 1,
"ReturnTotalRecordCount": true
}
Accept: application/json
OData-MaxVersion: 4.0
OData-Version: 4.0
If-None-Match: null
Respuesta:
HTTP/1.1 200 OK
{
"@odata.context": "[Organization URI]/api/data/v9.2/$metadata#Microsoft.Dynamics.CRM.RetrieveAttributeChangeHistoryResponse",
"AuditDetailCollection": {
"MoreRecords": true,
"PagingCookie": "<cookie page=\"1\"><cookieExtensions ContinuationToken=\"{"pageNumber":2,"continuationToken":"[{\\"compositeToken\\":{\\"token\\":null,\\"range\\":{\\"min\\":\\"3A800000000000000000000000000000\\",\\"max\\":\\"3B000000000000000000000000000000\\"}},\\"orderByItems\\":[{\\"item\\":\\"2022-05-13T22:06:46.6175613Z\\"}],\\"rid\\":\\"CVoNAJIidnNsmz0AAADwAw==\\",\\"skipCount\\":0,\\"filter\\":null}]"}\" /></cookie>",
,
"TotalRecordCount": 3,
"AuditDetails": [
{
"@odata.type": "#Microsoft.Dynamics.CRM.AttributeAuditDetail",
"InvalidNewValueAttributes": [],
"LocLabelLanguageCode": 0,
"DeletedAttributes": {
"Count": 0,
"Keys": [],
"Values": []
},
"OldValue": {
"@odata.type": "#Microsoft.Dynamics.CRM.account",
"description": "Old description value"
},
"NewValue": {
"@odata.type": "#Microsoft.Dynamics.CRM.account",
"description": "New description value"
}
}
]
}
}
Más información sobre:
Mensaje RetrieveRecordChangeHistory
El mensaje RetrieveRecordChangeHistory
muestra el historial de cambios de datos para un registro indicado por el parámetro Target
.
Use el parámetro PagingInfo
para controlar el número de registros a devolver y avanzar o retroceder a través de las páginas. Para solicitudes posteriores, establezca la propiedad PagingInfo.PagingCookie
al valor devuelto por AuditDetailCollection.PagingCookie
.
Los resultados de este mensaje se ven comúnmente como datos AttributeAuditDetail
que se muestran en aplicaciones basadas en modelos cuando selecciona Relacionado>Historial de auditoría. Muestra los valores antiguos y los valores nuevos de los registros, pero también devolverá los tipos RelationshipAuditDetail
y ShareAuditDetail
Este mensaje también se puede utilizar con las tablas systemuser
y role
para devolver tipos RolePrivilegeAuditDetail
y UserAccessAuditDetail
.
El siguiente ejemplo devuelve solo los dos primeros de cuatro cambios para un registro de cuenta.
Solicitud:
GET [Organization URI]/api/data/v9.2/RetrieveRecordChangeHistory(Target=@target,PagingInfo=@paginginfo)?
@target={ '@odata.id':'accounts(611e7713-68d7-4622-b552-85060af450bc)'}
&@paginginfo={
"PageNumber": 1,
"Count": 2,
"ReturnTotalRecordCount": true
}
Accept: application/json
OData-MaxVersion: 4.0
OData-Version: 4.0
If-None-Match: null
Respuesta:
HTTP/1.1 200 OK
{
"@odata.context": "[Organization URI]/api/data/v9.2/$metadata#Microsoft.Dynamics.CRM.RetrieveRecordChangeHistoryResponse",
"AuditDetailCollection": {
"MoreRecords": true,
"PagingCookie": "<cookie page=\"1\"><cookieExtensions ContinuationToken=\"{"pageNumber":2,"continuationToken":"[{\\"compositeToken\\":{\\"token\\":null,\\"range\\":{\\"min\\":\\"38000000000000000000000000000000\\",\\"max\\":\\"38800000000000000000000000000000\\"}},\\"orderByItems\\":[{\\"item\\":\\"2022-05-13T22:06:27.8029732Z\\"}],\\"rid\\":\\"CVoNAJIidnPOnT0AAAAICA==\\",\\"skipCount\\":0,\\"filter\\":null}]"}\" /></cookie>",
"TotalRecordCount": 4,
"AuditDetails": [
{
"@odata.type": "#Microsoft.Dynamics.CRM.AttributeAuditDetail",
"InvalidNewValueAttributes": [],
"LocLabelLanguageCode": 0,
"DeletedAttributes": {
"Count": 0,
"Keys": [],
"Values": []
},
"OldValue": {
"@odata.type": "#Microsoft.Dynamics.CRM.account",
"description": "Old description value"
},
"NewValue": {
"@odata.type": "#Microsoft.Dynamics.CRM.account",
"description": "New description value"
}
},
{
"@odata.type": "#Microsoft.Dynamics.CRM.AttributeAuditDetail",
"InvalidNewValueAttributes": [],
"LocLabelLanguageCode": 0,
"DeletedAttributes": {
"Count": 0,
"Keys": [],
"Values": []
},
"OldValue": {
"@odata.type": "#Microsoft.Dynamics.CRM.account",
"_ownerid_value@OData.Community.Display.V1.FormattedValue": "FirstName LastName",
"_ownerid_value@Microsoft.Dynamics.CRM.associatednavigationproperty": "ownerid",
"_ownerid_value@Microsoft.Dynamics.CRM.lookuplogicalname": "systemuser",
"_ownerid_value": "4026be43-6b69-e111-8f65-78e7d1620f5e"
},
"NewValue": {
"@odata.type": "#Microsoft.Dynamics.CRM.account",
"_ownerid_value@OData.Community.Display.V1.FormattedValue": "TeamName",
"_ownerid_value@Microsoft.Dynamics.CRM.associatednavigationproperty": "ownerid",
"_ownerid_value@Microsoft.Dynamics.CRM.lookuplogicalname": "team",
"_ownerid_value": "39e0dbe4-131b-e111-ba7e-78e7d1620f5e"
}
}
]
}
}
Nota
Los valores AuditDetail ComplexType devueltos no incluyen la propiedad AuditRecord
por lo que no hay datos sobre quién hizo el cambio y cuándo se hizo.
Más información sobre:
Consulte también
Información general de auditoría
Configurar auditoría
Eliminar datos de auditoría
Administrar auditorías de Dataverse
Ejemplo: Auditar cambios de datos de tablas
Ejemplo: acceso de usuario de auditoría