Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Applies to: SQL Server 2022 (16.x) e versões posteriores
Azure SQL Database
Azure SQL Managed Instance
Estabelecer confiança em relação à integridade dos dados armazenados em sistemas de banco de dados tem sido um problema persistente para todas as organizações que gerenciam dados financeiros, médicos ou outros dados confidenciais. O recurso de livro razão oferece capacidades de detecção de adulteração em seu banco de dados. Você pode comprovar criptograficamente a outras partes, como auditores ou outros parceiros comerciais, que seus dados não foram adulterados.
O Sistema Ledger ajuda a proteger dados de qualquer invasor ou usuários com altos privilégios, incluindo Administradores de Bancos de Dados (DBAs), Administradores de Sistemas e Administradores de Nuvem. Assim como ocorre com um livro-razão tradicional, o recurso preserva os dados históricos. Se uma linha é atualizada no banco de dados, o valor anterior dela é mantido e protegido na tabela de histórico. O razão fornece uma crônica de todas as alterações feitas no banco de dados ao longo do tempo.
O livro-razão e os dados históricos são gerenciados de maneira transparente, oferecendo proteção sem nenhuma alteração no sistema. O recurso mantém os dados históricos em um formulário relacional para dar suporte a consultas SQL para auditoria, análise forense e outras finalidades. Ele fornece garantias de integridade dos dados criptográficos enquanto mantém a eficiência, a flexibilidade e o desempenho do Banco de Dados SQL do Azure.
Casos de uso do livro razão
Vamos examinar algumas vantagens de usar o livro-razão.
Otimizar auditorias
O valor de qualquer sistema de produção baseia-se na capacidade de confiar nos dados que o sistema consume e produz. Se os dados em seu banco forem violados por um usuário mal-intencionado, isso poderá trazer resultados desastrosos aos processos de negócios que dependem desses dados.
Manter a confiança em seus dados requer uma combinação de controles de segurança adequados para reduzir possíveis ataques, práticas de backup e restauração e procedimentos de recuperação de desastres completos. As auditorias por partes externas garantem que essas práticas sejam colocadas em prática.
Os processos de auditoria são atividades que demandam muito tempo. A auditoria requer a inspeção local de práticas implementadas, com atividades como examinar logs de auditoria e inspecionar controles de autenticação e de acesso. Ainda que esses processos manuais possam expor possíveis falhas na segurança, eles não conseguem fornecer uma comprovação de que os dados não foram alterados de maneira mal-intencionada.
O Ledger fornece a prova criptográfica de integridade dos dados para os auditores. Essa prova pode ajudar a simplificar o processo de auditoria. Ele também fornece não repudiação em relação à integridade dos dados do sistema.
Processos de negócios de várias partes
Em alguns sistemas, como sistemas de gerenciamento de cadeia de fornecedores, várias organizações precisam compartilhar o estado de um processo empresarial entre elas. Esses sistemas têm dificuldades com o desafio de compartilhar os dados e confiar neles. Muitas organizações estão se voltando para blockchains tradicionais, como Ethereum ou Hyperledger Fabric, para transformar digitalmente os processos de negócios de várias partes.
O blockchain é uma ótima solução para redes de várias partes em que há baixa confiança entre os participantes da rede. Muitas dessas redes são soluções fundamentalmente centralizadas nas quais a confiança é importante, mas uma infraestrutura totalmente descentralizada seria uma solução de maior porte.
Ledger fornece uma solução para essas redes. Os participantes podem verificar a integridade dos dados armazenados centralmente, sem as implicações de complexidade e desempenho que o consenso de rede introduz em uma rede blockchain.
Sucesso do cliente
- Saiba como Lenovo está reforçando a confiança dos clientes usando livro-razão no Azure SQL Database.
Armazenamento confiável fora da cadeia para blockchain
Quando uma rede blockchain é necessária para um processo empresarial de várias partes, torna-se difícil ter a capacidade de consultar os dados no blockchain sem sacrificar o desempenho.
Padrões típicos para resolver esse problema envolvem replicar dados do blockchain em um armazenamento fora da cadeia, como um banco de dados. No entanto, depois que os dados são replicados no banco de dados a partir do blockchain, as garantias de integridade dos dados proporcionadas por um blockchain são perdidas. Ledger fornece integridade dos dados para o armazenamento fora da rede das redes de blockchain, ajudando a garantir a total confiança nos dados em todo o sistema.
Como ele funciona
Todas as linhas modificadas por uma transação em uma tabela do razão são convertidas criptograficamente em um hash SHA-256 por meio de uma estrutura de dados de árvore Merkle que cria um hash raiz representando todas as linhas da transação. As transações processadas pelo banco de dados são convertidas em hash SHA-256 usando uma estrutura de dados de árvore Merkle. O resultado é um hash raiz que forma um bloco. O bloco é então criptografado com hash SHA-256 usando o hash raiz do bloco junto com o hash raiz do bloco anterior como entrada para a função de hash. Essa criptografia com hash forma um blockchain.
Os hashes de raiz no livro-razão do banco de dados, também chamados de Resumos de banco de dados, contêm as transações em hash criptograficamente e representam o estado do banco de dados. Eles podem ser gerados periodicamente e armazenados fora do banco de dados no armazenamento à prova de adulteração, como Azure Blob Storage configurado com políticas de imutabilidade, Azure Confidential Ledger ou dispositivos de armazenamento Write Once Read Many (WORM). Os resumos de banco de dados são usados posteriormente para verificar a integridade do banco de dados. São comparados o valor do hash no resumo e os hashes calculados no banco de dados.
A funcionalidade do ledger é introduzida em tabelas de duas formas:
- Tabelas de ledger atualizáveis, que permitem a atualização e exclusão de linhas em suas tabelas.
- Tabelas de ledger de apenas acréscimo, que permitem apenas inserções em suas tabelas.
Tanto as tabelas de razão atualizáveis quanto as tabelas de razão somente de acréscimo oferecem capacidade de detectar adulterações e capacidades de forense digital.
Tabelas de livros razão atualizáveis
As tabelas do razão atualizáveis são ideais para padrões de aplicativo que esperam emitir atualizações e exclusões para tabelas em seu banco de dados, como aplicativos SOR (sistema de registro). Não é necessário alterar os padrões de dados existentes em seu aplicativo para habilitar a funcionalidade do livro-razão.
As tabelas do ledger atualizáveis rastreiam o histórico de alterações em qualquer linha do seu banco de dados durante transações que realizam atualizações ou exclusões. Uma tabela de ledger atualizável é uma tabela com versionamento de sistema que contém uma referência a outra tabela com um esquema espelhado.
A outra tabela é chamada de tabela de histórico. O sistema usa esta tabela para armazenar automaticamente a versão anterior da linha sempre que uma linha na tabela do razão é atualizada ou excluída. A tabela de histórico é criada automaticamente quando você cria uma tabela de livro razão atualizável.
Os valores contidos na tabela do razão atualizável e na tabela de histórico correspondente fornecem uma crônica dos valores do banco de dados ao longo do tempo. Uma visão de livro-razão gerada pelo sistema combina a tabela de livro-razão atualizável e a tabela de histórico, permitindo que você consulte facilmente essa cronologia do banco de dados.
Para obter mais informações sobre tabelas de ledger que podem ser atualizadas, consulte Criar e usar tabelas de ledger que podem ser atualizadas.
Tabelas de ledger somente acréscimo
As tabelas de log somente de acréscimo são ideais para padrões de aplicação somente de inserção, como aplicações de SIEM (gerenciamento de informações e eventos de segurança). As tabelas do livro razão que somente permitem acréscimos bloqueiam atualizações e exclusões no nível da API. Esse bloqueio oferece mais proteção contra adulteração de usuários privilegiados, como administradores do sistema e DBAs.
Já que apenas inserções são permitidas no sistema, as tabelas de livro-razão apenas de acréscimo não têm uma tabela de histórico correspondente, pois não há histórico a ser capturado. Assim como nas tabelas do razão atualizáveis, uma exibição do razão fornece insights sobre a transação que inseriu linhas na tabela somente de acréscimo e o usuário que realizou a inserção.
Para obter mais informações sobre tabelas de ledger de acréscimo apenas, consulte Criar e usar tabelas de ledger de acréscimo apenas.
Banco de dados de ledger
Os bancos de dados de ledger fornecem uma solução fácil para aplicativos que exigem que a integridade dos dados seja protegida durante todo o tempo de vida do banco de dados. Um banco de dados de razão pode conter apenas tabelas de razão. Não há suporte para a criação de tabelas regulares (que não sejam tabelas de razão). Cada tabela é, por padrão, criada como uma tabela de razão atualizável com configurações padrão, o que facilita ainda mais a criação dessas tabelas. Você configura um banco de dados como um banco de dados de livro-razão na criação. Depois de criado, um banco de dados contábil não pode ser transformado em um banco de dados regular. Para obter mais informações, consulte Configurar um banco de dados de razão.
Resumos de banco de dados
O hash do bloco mais recente no livro-razão do banco de dados é chamado de resumo do sistema. Ele representa o estado de todas as tabelas contábeis no banco de dados no momento em que o bloco foi gerado.
Quando um bloco é formado, o resumo de banco de dados associado a ele é publicado e armazenado fora do banco de dados em um armazenamento à prova de adulterações. Como os resumos do banco de dados representam o estado do banco de dados no momento que foram gerados, proteger os resumos contra adulteração é fundamental. Um invasor que tivesse acesso para modificar os resumos seria capaz de:
- Adulterar os dados no banco de dados.
- Gerar os hashes que representam o banco de dados com essas alterações.
- Modifique os resumos para representar o hash atualizado das transações no bloco.
O Ledger fornece a capacidade de gerar e armazenar automaticamente os resumos do banco de dados no armazenamento immutável ou Azure Confidential Ledger, para evitar adulterações. Como alternativa, os usuários podem gerar resumos de banco de dados manualmente e armazená-los na localização de preferência. Resumos de banco de dados são usados para verificar posteriormente se os dados armazenados em tabelas do razão não foram adulterados.
Verificação do livro-razão
O recurso do livro-razão não permite modificar o conteúdo das exibições do sistema de livro-razão, das tabelas somente para acréscimos e das tabelas de histórico. No entanto, um invasor ou administrador do sistema que tenha controle do computador pode ignorar todas as verificações do sistema e adulterar diretamente os dados. Por exemplo, um invasor ou administrador do sistema pode editar os arquivos de banco de dados no armazenamento. O livro-razão não pode impedir esses ataques, mas garante que qualquer manipulação seja detectada quando os dados do livro-razão forem verificados.
O processo de verificação de banco de dados toma como entrada um ou mais resumos de banco de dados gerados anteriormente e computa novamente os hashes armazenados no razão do banco de dados com base no estado atual das tabelas do razão. Se os hashes computados não corresponderem aos resumos de entrada, a verificação falhará, indicando que os dados foram adulterados. Em seguida, o Ledger relata todas as inconsistências que detectou.
Conteúdo relacionado
- O que é o livro-razão do banco de dados?
- Criar e usar tabelas de registro de somente acréscimo
- Criar e usar tabelas de razão atualizáveis
- Habilitar o armazenamento de resumo automático
- Configurar um banco de dados geral
- Verificar uma tabela do livro razão para detectar adulteração
- Habilitando o poder do blockchain para Azure SQL Database e SQL Server com ledger | Data Exposed