As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Auditoria das instâncias de banco de dados do Amazon RDS para SQL Server
Esta seção fornece informações sobre as opções de auditoria do SQL Server no Amazon RDS, incluindo a criação de auditorias, a visualização de registros de auditoria e o monitoramento de resultados.
Pré-requisitos
-
Um bucket do Amazon Simple Storage Service (Amazon S3) para armazenar os arquivos de auditoria
-
Um perfil do AWS Identity and Access Management (IAM) para acessar o bucket do S3
-
Um login de banco de dados com a permissão
ALTER ANY SERVER AUDITouCONTROL SERVER
Versões compatíveis
-
Para o Amazon RDS para SQL Server 2014, todas as edições são compatíveis com auditorias em nível de servidor. A edição Enterprise também é compatível com auditorias em nível de banco de dados.
-
Começando com o SQL Server 2016 (13.x) SP1, todas as edições oferecem suporte a auditorias em nível de servidor e em banco de dados.
-
O Amazon RDS é compatível com a auditoria do SQL Server em todas as Regiões da AWS, exceto Oriente Médio (Bahrein). Para obter as informações mais recentes, consulte Suporte para auditoria do SQL Server na documentação do Amazon RDS.
Uso do modo de auditoria C2
O modo de auditoria C2 é um parâmetro no grupo de parâmetros do banco de dados do Amazon RDS para SQL Server. O recurso é desabilitado por padrão. Você pode habiltá-lo atualizando o valor do parâmetro para 1. Quando o modo de auditoria C2 está habilitado, ele audita eventos como logins de usuários, chamadas de procedimentos armazenados e criação e exclusão de objetos. Esse modo pode gerar muitos dados porque audita tudo ou nada.
Importante
A Microsoft planeja remover o modo de auditoria C2 em uma versão futura do SQL Server. Recomendamos evitar usar esse recurso.
Criação e visualização de auditorias
É possível auditar bancos de dados do Amazon RDS para SQL Server usando mecanismos de auditoria internos do SQL Server que envolvem criar auditorias e especificações de auditoria.
-
Os logs de auditoria são enviados para um bucket do S3 usando um perfil do IAM que tem as permissões necessárias para acessar o bucket.
-
Você pode escolher o perfil do IAM, o bucket do S3, a compactação e o período de retenção ao criar o grupo de opções. O período máximo de retenção é de 35 dias.
-
Você cria o grupo de opções e o anexa a uma instância de banco de dados nova ou existente do Amazon RDS para SQL Server. Seus logs de auditoria são armazenados em
D:\rdsdbdata\SQLAudit. -
Depois que o SQL Server terminar de gravar em um arquivo de logs de auditoria, ou quando o arquivo atingir seu limite de tamanho, o Amazon RDS o carregará no seu bucket do S3.
-
Se a retenção estiver habilitada, o Amazon RDS vai transferir o arquivo para a pasta de retenção em
D:\rdsdbdata\SQLAudit\transmitted. Registros de auditoria são mantidos na instância de banco de dados até que o arquivo de log de auditoria seja carregado. -
Você também pode encontrar registros de auditoria consultando por
dbo.rds_fn_get_audit_file.
Para instâncias multi-AZ, os objetos de especificação de auditoria do banco de dados são replicados para todos os nós. A auditoria de servidor e as especificações de auditoria de servidor não são replicadas em todos os nós, portanto você deve criá-las manualmente.
Configuração do grupo de opções
Siga estas etapas para configurar um grupo de opções para realizar uma auditoria do SQL Server em sua instância de banco de dados do Amazon RDS para SQL Server. Para obter instruções detalhadas, consulte Auditoria do SQL Server na documentação do Amazon RDS.
-
Crie um grupo de opções.
-
Adicione a opção SQLSERVER_AUDIT ao grupo de opções.
-
Para o destino do S3, crie um novo bucket ou selecione um bucket existente para os logs de auditoria.
-
Para o perfil do IAM, crie um novo perfil ou escolha um perfil existente com as políticas necessárias. Para obter mais informações, consulte Criar manualmente um perfil do IAM para a auditoria do SQL Server na documentação do IAM.
-
Expanda Informações adicionais e selecione Habilitar compactação para compactar logs de auditoria (recomendado).
-
Para manter os logs de auditoria da instância de banco de dados, selecione Habilitar retenção e especifique um período de retenção (até um máximo de 35 dias).
-
Aplique o grupo de opções a uma instância de banco de dados nova ou existente do Amazon RDS para SQL Server.
-
Para uma nova instância de banco de dados, aplique o grupo de opções ao executar a instância.
-
Para uma instância de banco de dados existente, modifique a instância e anexe o grupo de opções.
-
Criar auditorias
Para criar uma auditoria de servidor, utilize o script a seguir. Esse script cria o arquivo de auditoria no caminho do arquivo que você especifica. Para verificar a sintaxe, os argumentos e os exemplos, consulte a documentação do Microsoft SQL Server
--Creating the server audit use master GO CREATE SERVER AUDIT [Audit-<<servername>>] TO FILE ( FILEPATH = N'D:\rdsdbdata\SQLAudit', MAXSIZE = 2 MB, RESERVE_DISK_SPACE = OFF) WITH ( QUEUE_DELAY = 1000, ON_FAILURE = CONTINUE) GO -- Enabling the server audit ALTER SERVER AUDIT [Audit-<<servername>>] WITH (STATE = ON) ; GO
Criar especificações de auditoria
Depois de criar uma auditoria de servidor, você pode registrar eventos em nível de servidor criando uma especificação de auditoria de servidor com o código a seguir. Essa especificação determina o que será verificado durante a auditoria do servidor. Para verificar a sintaxe, os argumentos e os exemplos, consulte a documentação do Microsoft SQL Server
--Creating server audit specification USE [master] GO CREATE SERVER AUDIT SPECIFICATION [Audit-Spec-<<servername>>] FOR SERVER AUDIT [Audit-<<servername>>] ADD (FAILED_LOGIN_GROUP), ADD (SERVER_OBJECT_CHANGE_GROUP) GO --Enables the audit ALTER SERVER AUDIT [Audit-<<servername>>] WITH (STATE = ON); GO
É possível utilizar o código a seguir para criar uma especificação de auditoria de banco de dados que registre eventos em nível de banco de dados. Este exemplo audita as ações INSERT. Para verificar a sintaxe, os argumentos e mais exemplos, consulte a documentação do Microsoft SQL Server
--Creating database audit specification USE [<<DBName>>] GO CREATE DATABASE AUDIT SPECIFICATION [DatabaseAuditSpecification-<<DBName>>] FOR SERVER AUDIT [Audit-<<ServerName>>] ADD (INSERT ON DATABASE::[<<DBName>>] BY [dbo]) WITH (STATE = ON) GO
Visualizar logs de auditoria
Use a consulta a seguir para visualizar logs de auditoria. Os logs de auditoria são mantidos na instância de banco de dados até serem enviados ao Amazon S3. Se você habilitar a retenção para a opção SQLSERVER_AUDIT, o Amazon RDS moverá o arquivo para a pasta de retenção D:\rdsdbdata\SQLAudit\transmitted.
Você também pode visualizar registros de auditoria na sua pasta de retenção, alterando o filtro para D:\rdsdbdata\SQLAudit\transmitted\*.sqlaudit.
--Viewing audit logs SELECT * FROM msdb.dbo.rds_fn_get_audit_file ('D:\rdsdbdata\SQLAudit\*.sqlaudit' , default , default ) --Viewing audit logs in retention folder SELECT * FROM msdb.dbo.rds_fn_get_audit_file ('D:\rdsdbdata\SQLAudit\transmitted\*.sqlaudit' , default , default )
Opções adicionais para auditar bancos de dados do SQL Server são discutidas abaixo na documentação da AWS e da Microsoft:
-
Eventos estendidos do SQL Server: consulte a publicação do Blog da AWS Set up Extended Events in Amazon RDS for SQL Server
. -
Gatilhos do SQL Server: consulte Criar uma regra que é acionada em um evento do Amazon RDS na documentação do Amazon RDS.
-
Rastreamento de alterações: consulte Track data changes
na documentação do Microsoft SQL Server. -
Captura de dados de alteração: consulte Usar a captura de dados de alteração na documentação do Amazon RDS.
-
Parâmetro do modo de auditoria C2: consulte a c2 audit mode Server Configuration Option
na documentação do Microsoft SQL Server.
Monitoramento
Você pode usar os fluxos de atividades do banco de dados no Amazon RDS para integrar eventos de auditoria do SQL Server com ferramentas de monitoramento de atividades de bancos de dados da Imperva, McAfee e IBM. Para obter mais informações, consulte a página Auditing in Microsoft SQL Server na documentação do Amazon RDS.