SlideShare una empresa de Scribd logo
1 de 32
Auditoría en Microsoft
SQL Server 2012
Ing. Eduardo Castro, PhD
Microsoft SQL Server MVP
ecastro@grupoasesor.net
Agenda

•   Qué ha cambiado desde SQL Server 2008?
•   Cómo se afecta el desempeño?
•   Se puede poteger el Audit log del DBA?
•   Qué pasa si falla el Audit Log?
•   Qué pasa si el servidor no inicia debido al SQL Server Audit?
•   Qué otras cosas debo haceer?
Qué ha cambiado
SQL Server 2008?
SQL Server Audit es más flexible.
Mejoras SQL Server Audit



    Soporte en todos los SKUs


    Mejor Resilience


    User-Defined Audit Event


    Record Filtering


    T-SQL Stack Information
Audit en todos los SKUs

• Audit básico en todos los SKUs
   – Server Audit Specs only
   – DB Audit Specs for Enterprise
• No necesita SQLTrace
• Ventajas de SQL Audit
   – Desempeño
   – Múltiples audits y múlitples destinos
   – Estado persitente
   – Audit Resilience
                                             SQL Server
                                              Express




                                                          6
Resilience Mejorado

• Antes:
   – Fallan las escrituras se puede perder auditoría
   – Use ON_FAILURE = SHUTDOWN
• Ahora:
   – Recuperación automática del archivo más reciente o de errors de red
   – Agregado “ON_FAILURE = FAIL_OPERATION”
   – Agregado “MAX_FILES” option


                            Select…


                             Rollback

                                                                           7
T-SQL Stack Information



                                               select salary from
      exec hr.viewsalary                       hr.payroll

                           hr.viewsalary                            hr.payroll




                                           Audit Log
DEMO



T-SQL Stack Information
User-Defined Audit Event

• sp_audit_write()


   exec sp_audit_write
                               @user_defined_event_id
         1234,
         1,                            @succeeded
         N‘Hello World’           @user_defined_info




                           Audit Log
DEMO



User-Defined Audit Event
Record Filtering

• Restringir la información escrita en el Audit log
CREATE Audit record generated but not written
    – SERVER AUDIT audit_name
   TO { [ FILE (<file_options> [ , ...n ]) ] | APPLICATION_LOG   | SECURITY_LOG }
• Leverages Xevent filtering ] ) ]
   [ WITH ( <audit_options> [ , ...n
[ FILTER = <predicate_expression> ]
}
…
<predicate_expression> ::=
{
   [ NOT ] <predicate_factor> | {( <predicate_expression> ) }
   [ { AND | OR } [ NOT ] { <predicate_factor> | ( <predicate_expression> ) } ]
   [ ,...n ]
}
DEMO



Record Filtering
Cuál es el impacto en desempeño?
Depende…
Desempeño del Audit

    • Depende :
       – La carga de trabajo
       – Qué está siendo auditado
    • Comparación de SQL Server Audit con SQL Trace para 5 cargas de trabajo
      típicas


      Workload 1                 Workload 2                  Workload 3                 Workload 4               Workload 5
•   11 dbs, ranging from   •   2 dbs ranging from 64   •   3 dbs ranging from     •   1 db at 3235.75 MB   •   1 db at 174.94 MB
    1.94 MB to 1812.5          MB to 423.88 MB             1.94 MB to 1059.63     •   84 tables with       •   152 tables with
    MB.                    •   35 tables with              MB                         average of 144,245       average of 4,108 rows
•   755 tables with            average of 49,141       •   154 tables with            rows                 •   296,642 stmts
    average of 2761 rows       rows                        average of 586 rows,   •   3,435,303 stmts          executed.
•   1,219,234 stmts        •   1,633,557 stmts             Here is the activity       executed.
    executed.                  executed                •   585,400 stmts
                                                           executed
SQL Server Audit vs SQL Trace

                                 Desempeño de cargas de trabajo
                Base Time (minutes)          SQL Trace (minutes)     SQL Server Audit (minutes)
                              101.9


                                                                          76.6
                                                                                  68.1
                                                                   63.4
                                      55.9

                         41.3



  13.3   15.9     14.1
                                                 5.1   6.3   5.6                         3.6   4.78     4

     Workload 1            Workload 2             Workload 3         Workload 4            Workload 5
Se puede proteger el Audit log del
              DBA?
SI.
Proteger el Audit Data

              Windows Security Log
              • “Tamper-proof” log
              • DBA no puede limpiar el log si no es administrador
              • System Center Operations Manager Audit Collection Service

              Copiar los Audit logs a un lugar seguro
              • Directorio compartido que el DBA no tiene permisos
              • Audit logs no se puede leer mientras están activos



              Combinación de los dos
              • Auditar “tamper activity” al Security Log, e.g., DBA modifica el Audit
              • Los otros Audit van a archivos
Qué pasa si el Audit no puede
           escribir?
Depende…
Audit Write Failure (Shutdown)

• Server se apaga
• Se pierden eventos de Audit
Audit Write Failure (Continue)


   Audit Events Buffered
   • El tamaño de buffer es de 4MB (equivalente a 170 eventos

                                                                             Buffer
                                                                             filled
          Servidor bloquea nuevas actividades que generan un Audit
          Event
          • No afecta otros Audits
          • Bloquea hasta que se libera el buffer o puede escrbir el audit
                                                                                      System
                                                                                       error
                Audit Session Turned Off
                • Se limpiar el buffer se se genera un errorlog
                • Continua tratando de escribir en el Audit log
                • Trata iniciar automáticamente el Audit
Qué si el servidor no puede iniciar
   debido al SQL Server Audit?
Inicie el servidor en single-user
               mode
Iniciar el servidor


         • Corregir el error
Opcion 1 • E.g., file system full

         • Single-user mode, “-m”
         • Desactivar la opción shutdown-on-failure
Opcion 2 • Audit Admin puede cambiar el Audit configuration


         • Minimal configuration mode, “-f”
Opcion 3 • Deshabilitar el Audit pero Audit DDL todavía está activo.


           • Si “Fail Operation” y “AUDIT_ CHANGE_GROUP”, utilice DAC connection
  Bono     • Audit event se generan per sin fallar la operación
DEMO


Utilizar el SQL Server Audit con
Policy-Based Management
Qué más hay que hacer?
Qué debe considerar

• Consultas parametrizadas
• Auditar Sesiones de Xevent puede no ser manuladas por Xevent
  DDL
• Los Audit Logs no son encriptados o compresos
• Audit event son disparados con revisión de permisos
• Es más rápido escribir en archivos que en el event log
• No se audit los result sets
Qué debe considerar

• Tanto Audit y Audit Specifications tiene parámetros de STATE.
   – Puede cambiar el estado solo fuera de una transacción de
     usuario.
Auditoría en SQL Server 2012

Más contenido relacionado

Similar a Auditoría en SQL Server 2012

Diagnostico y resolución de problemas en sql server
Diagnostico y resolución de problemas en sql serverDiagnostico y resolución de problemas en sql server
Diagnostico y resolución de problemas en sql serverSpanishPASSVC
 
Dynamics saturday madrid 2019 avanade dynamics saturday madrid 2019 2019.05.25
Dynamics saturday madrid 2019   avanade dynamics saturday madrid 2019 2019.05.25Dynamics saturday madrid 2019   avanade dynamics saturday madrid 2019 2019.05.25
Dynamics saturday madrid 2019 avanade dynamics saturday madrid 2019 2019.05.25Demian Raschkovan
 
Sql tuning without trying arup nanda ls
Sql tuning without trying   arup nanda lsSql tuning without trying   arup nanda ls
Sql tuning without trying arup nanda lsCJava Peru
 
Query store
Query storeQuery store
Query storeSolidQ
 
24 HOP edición Español - Durabilidad diferida de transacciones y mejoras en g...
24 HOP edición Español - Durabilidad diferida de transacciones y mejoras en g...24 HOP edición Español - Durabilidad diferida de transacciones y mejoras en g...
24 HOP edición Español - Durabilidad diferida de transacciones y mejoras en g...SpanishPASSVC
 
Preparación certificaciones oracle 11g
Preparación certificaciones oracle 11gPreparación certificaciones oracle 11g
Preparación certificaciones oracle 11gRaul Ibañez
 
In-Memory OLTP en SQL Server 2016
In-Memory OLTP en SQL Server 2016In-Memory OLTP en SQL Server 2016
In-Memory OLTP en SQL Server 2016Joseph Lopez
 
02 troubleshooting essentials sql server profiler - sql pass peru
02 troubleshooting essentials   sql server profiler - sql pass peru02 troubleshooting essentials   sql server profiler - sql pass peru
02 troubleshooting essentials sql server profiler - sql pass peruGuillermo Taylor
 
Toolbox SQL Server para optimización
Toolbox SQL Server para optimizaciónToolbox SQL Server para optimización
Toolbox SQL Server para optimizaciónSolidQ
 
Charla en Universidad ORT 2014 - Testing técnico (automatización, mobile, pe...
 Charla en Universidad ORT 2014 - Testing técnico (automatización, mobile, pe... Charla en Universidad ORT 2014 - Testing técnico (automatización, mobile, pe...
Charla en Universidad ORT 2014 - Testing técnico (automatización, mobile, pe...Federico Toledo
 
Testing técnico - Automatización en web y mobile para pruebas funcionales y p...
Testing técnico - Automatización en web y mobile para pruebas funcionales y p...Testing técnico - Automatización en web y mobile para pruebas funcionales y p...
Testing técnico - Automatización en web y mobile para pruebas funcionales y p...Abstracta
 
Destino la Nube 2012 - ALM para Azure
Destino la Nube 2012 - ALM para AzureDestino la Nube 2012 - ALM para Azure
Destino la Nube 2012 - ALM para AzureJose Luis Soria
 
Novedades de SQL Server 2014 en motor relacional
Novedades de SQL Server 2014 en motor relacionalNovedades de SQL Server 2014 en motor relacional
Novedades de SQL Server 2014 en motor relacionalEnrique Catala Bañuls
 
Novedades deSQL Server 2014 en Motor Relacional | SolidQ Summit 2014
Novedades deSQL Server 2014 en Motor Relacional | SolidQ Summit 2014Novedades deSQL Server 2014 en Motor Relacional | SolidQ Summit 2014
Novedades deSQL Server 2014 en Motor Relacional | SolidQ Summit 2014SolidQ
 

Similar a Auditoría en SQL Server 2012 (20)

Diagnostico y resolución de problemas en sql server
Diagnostico y resolución de problemas en sql serverDiagnostico y resolución de problemas en sql server
Diagnostico y resolución de problemas en sql server
 
Dynamics saturday madrid 2019 avanade dynamics saturday madrid 2019 2019.05.25
Dynamics saturday madrid 2019   avanade dynamics saturday madrid 2019 2019.05.25Dynamics saturday madrid 2019   avanade dynamics saturday madrid 2019 2019.05.25
Dynamics saturday madrid 2019 avanade dynamics saturday madrid 2019 2019.05.25
 
Funciones del DBA
Funciones del DBAFunciones del DBA
Funciones del DBA
 
Sql tuning without trying arup nanda ls
Sql tuning without trying   arup nanda lsSql tuning without trying   arup nanda ls
Sql tuning without trying arup nanda ls
 
Query store
Query storeQuery store
Query store
 
Query store
Query storeQuery store
Query store
 
Un "TFS" para gobernarlos a todos
Un "TFS" para gobernarlos a todosUn "TFS" para gobernarlos a todos
Un "TFS" para gobernarlos a todos
 
Auditoria en windows server 2008
Auditoria en windows server 2008Auditoria en windows server 2008
Auditoria en windows server 2008
 
24 HOP edición Español - Durabilidad diferida de transacciones y mejoras en g...
24 HOP edición Español - Durabilidad diferida de transacciones y mejoras en g...24 HOP edición Español - Durabilidad diferida de transacciones y mejoras en g...
24 HOP edición Español - Durabilidad diferida de transacciones y mejoras en g...
 
03 24 hopes_2014_eladiorincon
03 24 hopes_2014_eladiorincon03 24 hopes_2014_eladiorincon
03 24 hopes_2014_eladiorincon
 
Preparación certificaciones oracle 11g
Preparación certificaciones oracle 11gPreparación certificaciones oracle 11g
Preparación certificaciones oracle 11g
 
In-Memory OLTP en SQL Server 2016
In-Memory OLTP en SQL Server 2016In-Memory OLTP en SQL Server 2016
In-Memory OLTP en SQL Server 2016
 
02 troubleshooting essentials sql server profiler - sql pass peru
02 troubleshooting essentials   sql server profiler - sql pass peru02 troubleshooting essentials   sql server profiler - sql pass peru
02 troubleshooting essentials sql server profiler - sql pass peru
 
Toolbox SQL Server para optimización
Toolbox SQL Server para optimizaciónToolbox SQL Server para optimización
Toolbox SQL Server para optimización
 
Charla en Universidad ORT 2014 - Testing técnico (automatización, mobile, pe...
 Charla en Universidad ORT 2014 - Testing técnico (automatización, mobile, pe... Charla en Universidad ORT 2014 - Testing técnico (automatización, mobile, pe...
Charla en Universidad ORT 2014 - Testing técnico (automatización, mobile, pe...
 
Testing técnico - Automatización en web y mobile para pruebas funcionales y p...
Testing técnico - Automatización en web y mobile para pruebas funcionales y p...Testing técnico - Automatización en web y mobile para pruebas funcionales y p...
Testing técnico - Automatización en web y mobile para pruebas funcionales y p...
 
Destino la Nube 2012 - ALM para Azure
Destino la Nube 2012 - ALM para AzureDestino la Nube 2012 - ALM para Azure
Destino la Nube 2012 - ALM para Azure
 
Migración a sql server 2016
Migración a sql server 2016Migración a sql server 2016
Migración a sql server 2016
 
Novedades de SQL Server 2014 en motor relacional
Novedades de SQL Server 2014 en motor relacionalNovedades de SQL Server 2014 en motor relacional
Novedades de SQL Server 2014 en motor relacional
 
Novedades deSQL Server 2014 en Motor Relacional | SolidQ Summit 2014
Novedades deSQL Server 2014 en Motor Relacional | SolidQ Summit 2014Novedades deSQL Server 2014 en Motor Relacional | SolidQ Summit 2014
Novedades deSQL Server 2014 en Motor Relacional | SolidQ Summit 2014
 

Más de Eduardo Castro

Introducción a polybase en SQL Server
Introducción a polybase en SQL ServerIntroducción a polybase en SQL Server
Introducción a polybase en SQL ServerEduardo Castro
 
Creando tu primer ambiente de AI en Azure ML y SQL Server
Creando tu primer ambiente de AI en Azure ML y SQL ServerCreando tu primer ambiente de AI en Azure ML y SQL Server
Creando tu primer ambiente de AI en Azure ML y SQL ServerEduardo Castro
 
Seguridad en SQL Azure
Seguridad en SQL AzureSeguridad en SQL Azure
Seguridad en SQL AzureEduardo Castro
 
Azure Synapse Analytics MLflow
Azure Synapse Analytics MLflowAzure Synapse Analytics MLflow
Azure Synapse Analytics MLflowEduardo Castro
 
SQL Server 2019 con Windows Server 2022
SQL Server 2019 con Windows Server 2022SQL Server 2019 con Windows Server 2022
SQL Server 2019 con Windows Server 2022Eduardo Castro
 
Novedades en SQL Server 2022
Novedades en SQL Server 2022Novedades en SQL Server 2022
Novedades en SQL Server 2022Eduardo Castro
 
Introduccion a SQL Server 2022
Introduccion a SQL Server 2022Introduccion a SQL Server 2022
Introduccion a SQL Server 2022Eduardo Castro
 
Machine Learning con Azure Managed Instance
Machine Learning con Azure Managed InstanceMachine Learning con Azure Managed Instance
Machine Learning con Azure Managed InstanceEduardo Castro
 
Novedades en sql server 2022
Novedades en sql server 2022Novedades en sql server 2022
Novedades en sql server 2022Eduardo Castro
 
Sql server 2019 con windows server 2022
Sql server 2019 con windows server 2022Sql server 2019 con windows server 2022
Sql server 2019 con windows server 2022Eduardo Castro
 
Introduccion a databricks
Introduccion a databricksIntroduccion a databricks
Introduccion a databricksEduardo Castro
 
Pronosticos con sql server
Pronosticos con sql serverPronosticos con sql server
Pronosticos con sql serverEduardo Castro
 
Data warehouse con azure synapse analytics
Data warehouse con azure synapse analyticsData warehouse con azure synapse analytics
Data warehouse con azure synapse analyticsEduardo Castro
 
Que hay de nuevo en el Azure Data Lake Storage Gen2
Que hay de nuevo en el Azure Data Lake Storage Gen2Que hay de nuevo en el Azure Data Lake Storage Gen2
Que hay de nuevo en el Azure Data Lake Storage Gen2Eduardo Castro
 
Introduccion a Azure Synapse Analytics
Introduccion a Azure Synapse AnalyticsIntroduccion a Azure Synapse Analytics
Introduccion a Azure Synapse AnalyticsEduardo Castro
 
Seguridad de SQL Database en Azure
Seguridad de SQL Database en AzureSeguridad de SQL Database en Azure
Seguridad de SQL Database en AzureEduardo Castro
 
Python dentro de SQL Server
Python dentro de SQL ServerPython dentro de SQL Server
Python dentro de SQL ServerEduardo Castro
 
Servicios Cognitivos de de Microsoft
Servicios Cognitivos de de Microsoft Servicios Cognitivos de de Microsoft
Servicios Cognitivos de de Microsoft Eduardo Castro
 
Script de paso a paso de configuración de Secure Enclaves
Script de paso a paso de configuración de Secure EnclavesScript de paso a paso de configuración de Secure Enclaves
Script de paso a paso de configuración de Secure EnclavesEduardo Castro
 
Introducción a conceptos de SQL Server Secure Enclaves
Introducción a conceptos de SQL Server Secure EnclavesIntroducción a conceptos de SQL Server Secure Enclaves
Introducción a conceptos de SQL Server Secure EnclavesEduardo Castro
 

Más de Eduardo Castro (20)

Introducción a polybase en SQL Server
Introducción a polybase en SQL ServerIntroducción a polybase en SQL Server
Introducción a polybase en SQL Server
 
Creando tu primer ambiente de AI en Azure ML y SQL Server
Creando tu primer ambiente de AI en Azure ML y SQL ServerCreando tu primer ambiente de AI en Azure ML y SQL Server
Creando tu primer ambiente de AI en Azure ML y SQL Server
 
Seguridad en SQL Azure
Seguridad en SQL AzureSeguridad en SQL Azure
Seguridad en SQL Azure
 
Azure Synapse Analytics MLflow
Azure Synapse Analytics MLflowAzure Synapse Analytics MLflow
Azure Synapse Analytics MLflow
 
SQL Server 2019 con Windows Server 2022
SQL Server 2019 con Windows Server 2022SQL Server 2019 con Windows Server 2022
SQL Server 2019 con Windows Server 2022
 
Novedades en SQL Server 2022
Novedades en SQL Server 2022Novedades en SQL Server 2022
Novedades en SQL Server 2022
 
Introduccion a SQL Server 2022
Introduccion a SQL Server 2022Introduccion a SQL Server 2022
Introduccion a SQL Server 2022
 
Machine Learning con Azure Managed Instance
Machine Learning con Azure Managed InstanceMachine Learning con Azure Managed Instance
Machine Learning con Azure Managed Instance
 
Novedades en sql server 2022
Novedades en sql server 2022Novedades en sql server 2022
Novedades en sql server 2022
 
Sql server 2019 con windows server 2022
Sql server 2019 con windows server 2022Sql server 2019 con windows server 2022
Sql server 2019 con windows server 2022
 
Introduccion a databricks
Introduccion a databricksIntroduccion a databricks
Introduccion a databricks
 
Pronosticos con sql server
Pronosticos con sql serverPronosticos con sql server
Pronosticos con sql server
 
Data warehouse con azure synapse analytics
Data warehouse con azure synapse analyticsData warehouse con azure synapse analytics
Data warehouse con azure synapse analytics
 
Que hay de nuevo en el Azure Data Lake Storage Gen2
Que hay de nuevo en el Azure Data Lake Storage Gen2Que hay de nuevo en el Azure Data Lake Storage Gen2
Que hay de nuevo en el Azure Data Lake Storage Gen2
 
Introduccion a Azure Synapse Analytics
Introduccion a Azure Synapse AnalyticsIntroduccion a Azure Synapse Analytics
Introduccion a Azure Synapse Analytics
 
Seguridad de SQL Database en Azure
Seguridad de SQL Database en AzureSeguridad de SQL Database en Azure
Seguridad de SQL Database en Azure
 
Python dentro de SQL Server
Python dentro de SQL ServerPython dentro de SQL Server
Python dentro de SQL Server
 
Servicios Cognitivos de de Microsoft
Servicios Cognitivos de de Microsoft Servicios Cognitivos de de Microsoft
Servicios Cognitivos de de Microsoft
 
Script de paso a paso de configuración de Secure Enclaves
Script de paso a paso de configuración de Secure EnclavesScript de paso a paso de configuración de Secure Enclaves
Script de paso a paso de configuración de Secure Enclaves
 
Introducción a conceptos de SQL Server Secure Enclaves
Introducción a conceptos de SQL Server Secure EnclavesIntroducción a conceptos de SQL Server Secure Enclaves
Introducción a conceptos de SQL Server Secure Enclaves
 

Auditoría en SQL Server 2012

  • 1. Auditoría en Microsoft SQL Server 2012 Ing. Eduardo Castro, PhD Microsoft SQL Server MVP ecastro@grupoasesor.net
  • 2. Agenda • Qué ha cambiado desde SQL Server 2008? • Cómo se afecta el desempeño? • Se puede poteger el Audit log del DBA? • Qué pasa si falla el Audit Log? • Qué pasa si el servidor no inicia debido al SQL Server Audit? • Qué otras cosas debo haceer?
  • 3. Qué ha cambiado SQL Server 2008?
  • 4. SQL Server Audit es más flexible.
  • 5. Mejoras SQL Server Audit Soporte en todos los SKUs Mejor Resilience User-Defined Audit Event Record Filtering T-SQL Stack Information
  • 6. Audit en todos los SKUs • Audit básico en todos los SKUs – Server Audit Specs only – DB Audit Specs for Enterprise • No necesita SQLTrace • Ventajas de SQL Audit – Desempeño – Múltiples audits y múlitples destinos – Estado persitente – Audit Resilience SQL Server Express 6
  • 7. Resilience Mejorado • Antes: – Fallan las escrituras se puede perder auditoría – Use ON_FAILURE = SHUTDOWN • Ahora: – Recuperación automática del archivo más reciente o de errors de red – Agregado “ON_FAILURE = FAIL_OPERATION” – Agregado “MAX_FILES” option Select… Rollback 7
  • 8. T-SQL Stack Information select salary from exec hr.viewsalary hr.payroll hr.viewsalary hr.payroll Audit Log
  • 10. User-Defined Audit Event • sp_audit_write() exec sp_audit_write @user_defined_event_id 1234, 1, @succeeded N‘Hello World’ @user_defined_info Audit Log
  • 12. Record Filtering • Restringir la información escrita en el Audit log CREATE Audit record generated but not written – SERVER AUDIT audit_name TO { [ FILE (<file_options> [ , ...n ]) ] | APPLICATION_LOG | SECURITY_LOG } • Leverages Xevent filtering ] ) ] [ WITH ( <audit_options> [ , ...n [ FILTER = <predicate_expression> ] } … <predicate_expression> ::= { [ NOT ] <predicate_factor> | {( <predicate_expression> ) } [ { AND | OR } [ NOT ] { <predicate_factor> | ( <predicate_expression> ) } ] [ ,...n ] }
  • 14. Cuál es el impacto en desempeño?
  • 16. Desempeño del Audit • Depende : – La carga de trabajo – Qué está siendo auditado • Comparación de SQL Server Audit con SQL Trace para 5 cargas de trabajo típicas Workload 1 Workload 2 Workload 3 Workload 4 Workload 5 • 11 dbs, ranging from • 2 dbs ranging from 64 • 3 dbs ranging from • 1 db at 3235.75 MB • 1 db at 174.94 MB 1.94 MB to 1812.5 MB to 423.88 MB 1.94 MB to 1059.63 • 84 tables with • 152 tables with MB. • 35 tables with MB average of 144,245 average of 4,108 rows • 755 tables with average of 49,141 • 154 tables with rows • 296,642 stmts average of 2761 rows rows average of 586 rows, • 3,435,303 stmts executed. • 1,219,234 stmts • 1,633,557 stmts Here is the activity executed. executed. executed • 585,400 stmts executed
  • 17. SQL Server Audit vs SQL Trace Desempeño de cargas de trabajo Base Time (minutes) SQL Trace (minutes) SQL Server Audit (minutes) 101.9 76.6 68.1 63.4 55.9 41.3 13.3 15.9 14.1 5.1 6.3 5.6 3.6 4.78 4 Workload 1 Workload 2 Workload 3 Workload 4 Workload 5
  • 18. Se puede proteger el Audit log del DBA?
  • 19. SI.
  • 20. Proteger el Audit Data Windows Security Log • “Tamper-proof” log • DBA no puede limpiar el log si no es administrador • System Center Operations Manager Audit Collection Service Copiar los Audit logs a un lugar seguro • Directorio compartido que el DBA no tiene permisos • Audit logs no se puede leer mientras están activos Combinación de los dos • Auditar “tamper activity” al Security Log, e.g., DBA modifica el Audit • Los otros Audit van a archivos
  • 21. Qué pasa si el Audit no puede escribir?
  • 23. Audit Write Failure (Shutdown) • Server se apaga • Se pierden eventos de Audit
  • 24. Audit Write Failure (Continue) Audit Events Buffered • El tamaño de buffer es de 4MB (equivalente a 170 eventos Buffer filled Servidor bloquea nuevas actividades que generan un Audit Event • No afecta otros Audits • Bloquea hasta que se libera el buffer o puede escrbir el audit System error Audit Session Turned Off • Se limpiar el buffer se se genera un errorlog • Continua tratando de escribir en el Audit log • Trata iniciar automáticamente el Audit
  • 25. Qué si el servidor no puede iniciar debido al SQL Server Audit?
  • 26. Inicie el servidor en single-user mode
  • 27. Iniciar el servidor • Corregir el error Opcion 1 • E.g., file system full • Single-user mode, “-m” • Desactivar la opción shutdown-on-failure Opcion 2 • Audit Admin puede cambiar el Audit configuration • Minimal configuration mode, “-f” Opcion 3 • Deshabilitar el Audit pero Audit DDL todavía está activo. • Si “Fail Operation” y “AUDIT_ CHANGE_GROUP”, utilice DAC connection Bono • Audit event se generan per sin fallar la operación
  • 28. DEMO Utilizar el SQL Server Audit con Policy-Based Management
  • 29. Qué más hay que hacer?
  • 30. Qué debe considerar • Consultas parametrizadas • Auditar Sesiones de Xevent puede no ser manuladas por Xevent DDL • Los Audit Logs no son encriptados o compresos • Audit event son disparados con revisión de permisos • Es más rápido escribir en archivos que en el event log • No se audit los result sets
  • 31. Qué debe considerar • Tanto Audit y Audit Specifications tiene parámetros de STATE. – Puede cambiar el estado solo fuera de una transacción de usuario.