<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic AUDITORIA MySQL - Procedimiento almacenado auditoria in Alfresco Archive</title>
    <link>https://connect.hyland.com/t5/alfresco-archive/auditoria-mysql-procedimiento-almacenado-auditoria/m-p/134608#M94489</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Quien necesite auditar en algún momento de forma "clara" las acciones que ha realizado un usuario durante un intervalo de tiempo puede crear y utilizar en su servidor MySQL donde este alojado Alfresco el siguiente procedimiento almacenado :&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;DROP PROCEDURE `PRO_AUDIT_UsuarioIntervalo`//&lt;BR /&gt;CREATE DEFINER=`root`@`localhost` PROCEDURE `PRO_AUDIT_UsuarioIntervalo`(IN FechaInicio varchar(10),IN FechaFin varchar(10),IN Usuario varchar(20))&lt;BR /&gt;BEGIN&lt;BR /&gt;&lt;BR /&gt;IF(Usuario&amp;lt;&amp;gt;'')&lt;BR /&gt;THEN&lt;BR /&gt;&lt;BR /&gt;select f.user_id as Usuario, f.timestamp as FechaAccion, f.node_uuid as IdNodo,&lt;BR /&gt;(select a1.arg_2 from alf_audit_fact a1 where a1.return_val like concat(concat('%',f.node_uuid),'%') and a1.audit_source_id=8) as NombreFichero,&lt;BR /&gt;(Select method from alf_audit_source where id=f.audit_source_id) as Accion,&lt;BR /&gt;f.arg_1 as Detalle1, f.arg_2 as Detalle2,f.arg_3 as Detalle3,f.exception_message as MensajeError&lt;BR /&gt;from alf_audit_fact f&lt;BR /&gt;where ((f.audit_source_id=6 and f.arg_2 like '%versionLabel%') or&lt;BR /&gt;f.audit_source_id=1 or f.audit_source_id=5 or f.audit_source_id=6 or f.audit_source_id=7 or f.audit_source_id=8 or f.audit_source_id=10 or f.audit_source_id=12) and&lt;BR /&gt;(date(f.timestamp) between FechaInicio and FechaFin) and f.user_id&amp;lt;&amp;gt;'System' and (f.user_id LIKE Usuario or (f.user_id LIKE 'guest' and f.arg_1 LIKE Usuario));&lt;BR /&gt;&lt;BR /&gt;ELSE&lt;BR /&gt;&lt;BR /&gt;select f.user_id as Usuario, f.timestamp as FechaAccion, f.node_uuid as IdNodo,&lt;BR /&gt;(select a1.arg_2 from alf_audit_fact a1 where a1.return_val like concat(concat('%',f.node_uuid),'%') and a1.audit_source_id=8) as NombreFichero,&lt;BR /&gt;(Select method from alf_audit_source where id=f.audit_source_id) as Accion,&lt;BR /&gt;f.arg_1 as Detalle1, f.arg_2 as Detalle2,f.arg_3 as Detalle3,f.exception_message as MensajeError&lt;BR /&gt;from alf_audit_fact f&lt;BR /&gt;where ((f.audit_source_id=6 and f.arg_2 like '%versionLabel%') or&lt;BR /&gt;f.audit_source_id=1 or f.audit_source_id=5 or f.audit_source_id=6 or f.audit_source_id=7 or f.audit_source_id=8 or f.audit_source_id=10 or f.audit_source_id=12) and&lt;BR /&gt;(date(f.timestamp) between FechaInicio and FechaFin) and f.user_id&amp;lt;&amp;gt;'System';&lt;BR /&gt;&lt;BR /&gt;END IF;&lt;BR /&gt;&lt;BR /&gt;END&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;BR /&gt;&lt;SPAN&gt;la llamada al mismo se realizaría de la siguiente forma (desde consola o algun query browser de MySQL) :&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;CALL&lt;BR /&gt;PRO_AUDIT_UsuarioIntervalo('2009-07-15','2009-07-30','nombredeusuario'); &lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;BR /&gt;&lt;SPAN style="text-decoration: underline;"&gt;DETALLES A TENER EN CUENTA :&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;-En la claúsula &lt;/SPAN&gt;&lt;STRONG&gt;where &lt;/STRONG&gt;&lt;SPAN&gt;tendreís que adapatar los códigos de &lt;/SPAN&gt;&lt;STRONG&gt;f.audit_source_id=N&lt;/STRONG&gt;&lt;SPAN&gt; a vuestro sistema (ya que varía según el orden de ejecución inicial .. y quizás os interese auditar otros eventos). &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;En mi caso quería auditar los eventos de :&lt;/SPAN&gt;&lt;BR /&gt;&lt;STRONG&gt;1&lt;/STRONG&gt;&lt;SPAN&gt;-authenticate&lt;/SPAN&gt;&lt;BR /&gt;&lt;STRONG&gt;5&lt;/STRONG&gt;&lt;SPAN&gt;-setProperties ( cuando modificamos las propiedades generales )&lt;/SPAN&gt;&lt;BR /&gt;&lt;STRONG&gt;6&lt;/STRONG&gt;&lt;SPAN&gt;-setProperty ( cuando añadimos una version )&lt;/SPAN&gt;&lt;BR /&gt;&lt;STRONG&gt;7&lt;/STRONG&gt;&lt;SPAN&gt;-deleteNode ( cuando eliminamos un documento )&lt;/SPAN&gt;&lt;BR /&gt;&lt;STRONG&gt;8&lt;/STRONG&gt;&lt;SPAN&gt;-create ( cuando creamos un documento o espacio anno )&lt;/SPAN&gt;&lt;BR /&gt;&lt;STRONG&gt;10&lt;/STRONG&gt;&lt;SPAN&gt;-addAspect ( cuando añadimos cualquier aspecto al documento, versionable, metemos area, tag, relext o expedientes )&lt;/SPAN&gt;&lt;BR /&gt;&lt;STRONG&gt;12&lt;/STRONG&gt;&lt;SPAN&gt;-setPermission ( cuando modificamos permisos )&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Estos códigos me vienen de la tabla &lt;/SPAN&gt;&lt;STRONG&gt;alf_audit_source&lt;/STRONG&gt;&lt;SPAN&gt; .. en la que tenía :&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;"1";"SystemMethodInterceptor";"AuthenticationService";"authenticate"&lt;BR /&gt;"2";"SystemMethodInterceptor";"AuthenticationService";"invalidateTicket"&lt;BR /&gt;"3";"SystemMethodInterceptor";"AuthenticationService";"clearCurrentSecurityContext"&lt;BR /&gt;"4";"SystemMethodInterceptor";"AuthenticationService";"validate"&lt;BR /&gt;"5";"SystemMethodInterceptor";"NodeService";"setProperties"&lt;BR /&gt;"6";"SystemMethodInterceptor";"NodeService";"setProperty"&lt;BR /&gt;"7";"SystemMethodInterceptor";"NodeService";"deleteNode"&lt;BR /&gt;"8";"SystemMethodInterceptor";"FileFolderService";"create"&lt;BR /&gt;"9";"SystemMethodInterceptor";"ContentService";"getWriter"&lt;BR /&gt;"10";"SystemMethodInterceptor";"NodeService";"addAspect"&lt;BR /&gt;"11";"SystemMethodInterceptor";"PermissionService";"setInheritParentPermissions"&lt;BR /&gt;"12";"SystemMethodInterceptor";"PermissionService";"setPermission"&lt;BR /&gt;"13";"SystemMethodInterceptor";"ScriptService";"buildDefaultModel"&lt;BR /&gt;"14";"SystemMethodInterceptor";"NodeService";"moveNode"&lt;BR /&gt;"15";"SystemMethodInterceptor";"ScriptService";"executeScript"&lt;BR /&gt;"16";"SystemMethodInterceptor";"ActionService";"executeAction"&lt;BR /&gt;"17";"SystemMethodInterceptor";"FileFolderService";"rename"&lt;BR /&gt;"18";"SystemMethodInterceptor";"CheckoutCheckinService";"checkout"&lt;BR /&gt;"19";"SystemMethodInterceptor";"PermissionService";"deletePermissions"&lt;BR /&gt;"20";"SystemMethodInterceptor";"CheckoutCheckinService";"cancelCheckout"&lt;BR /&gt;"21";"SystemMethodInterceptor";"CheckoutCheckinService";"checkin"&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;SPAN&gt;-Para mostrar el nombre de fichero cuando capturamos el evento de creación de contenido habrá que adaptar el código de &lt;/SPAN&gt;&lt;EM&gt;(select a1.arg_2 from alf_audit_fact a1 where a1.return_val like concat(concat('%',f.node_uuid),'%') and&lt;STRONG&gt; a1.audit_source_id=8&lt;/STRONG&gt;) as NombreFichero&lt;/EM&gt;&lt;SPAN&gt; al que tengamos en la tabla &lt;/SPAN&gt;&lt;STRONG&gt;alf_audit_source&lt;/STRONG&gt;&lt;SPAN&gt; .. en mi caso &lt;/SPAN&gt;&lt;EM&gt;&lt;STRONG&gt;"8"&lt;/STRONG&gt;;"SystemMethodInterceptor";"FileFolderService";"create"&lt;/EM&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;*Hay que tener en cuenta que estos elementos irán apareciendo a medida que se vayan ejecutando en el sistema por los usuarios, una vez haya sido activada la auditoría.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;-Para activar la auditoría &lt;/SPAN&gt;&lt;A href="http://wiki.alfresco.com/wiki/Audit_Configuration" rel="nofollow noopener noreferrer"&gt;http://wiki.alfresco.com/wiki/Audit_Configuration&lt;/A&gt;&lt;BR /&gt;&lt;SPAN&gt;-Mas documentación al respecto &lt;/SPAN&gt;&lt;A href="http://wiki.alfresco.com/wiki/Audit" rel="nofollow noopener noreferrer"&gt;http://wiki.alfresco.com/wiki/Audit&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Espero que sea de utilidad.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Saludos,&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 11 Sep 2009 12:09:37 GMT</pubDate>
    <dc:creator>venzia</dc:creator>
    <dc:date>2009-09-11T12:09:37Z</dc:date>
    <item>
      <title>AUDITORIA MySQL - Procedimiento almacenado auditoria</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/auditoria-mysql-procedimiento-almacenado-auditoria/m-p/134608#M94489</link>
      <description>Quien necesite auditar en algún momento de forma "clara" las acciones que ha realizado un usuario durante un intervalo de tiempo puede crear y utilizar en su servidor MySQL donde este alojado Alfresco el siguiente procedimiento almacenado &lt;IMG id="smileyvery-happy" class="emoticon emoticon-smileyvery-happy" src="https://migration33.stage.lithium.com/i/smilies/16x16_smiley-very-happy.png" alt="Smiley Very Happy" title="Smiley Very Happy" /&gt;ROP PROCEDURE `PRO_AUDIT_UsuarioIntervalo`//CREATE DEFINER=</description>
      <pubDate>Fri, 11 Sep 2009 12:09:37 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/auditoria-mysql-procedimiento-almacenado-auditoria/m-p/134608#M94489</guid>
      <dc:creator>venzia</dc:creator>
      <dc:date>2009-09-11T12:09:37Z</dc:date>
    </item>
    <item>
      <title>Re: AUDITORIA MySQL - Procedimiento almacenado auditoria</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/auditoria-mysql-procedimiento-almacenado-auditoria/m-p/134609#M94490</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Buenas,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Muchas gracias por la aportación.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Más adelante tendré que hacer una auditoría y esto me será de gran utilidad.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Un saludo.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 23 Mar 2010 08:31:40 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/auditoria-mysql-procedimiento-almacenado-auditoria/m-p/134609#M94490</guid>
      <dc:creator>baskeyfield</dc:creator>
      <dc:date>2010-03-23T08:31:40Z</dc:date>
    </item>
  </channel>
</rss>

