Bem-vindo a este post do blog onde discutiremos os conceitos importantes da segurança do SQL Server: Autenticação, Autorização e Auditoria. Esses três aspectos são cruciais para criar uma arquitetura segura que atenda às necessidades do seu negócio e garanta a segurança do seu trabalho.
Autenticação – Quem é você?
A autenticação é o processo de verificar a identidade de um usuário ou aplicativo que se conecta ao SQL Server. Existem dois tipos de autenticação suportados: autenticação baseada no SQL Server e autenticação baseada no Windows. A autenticação baseada no Windows é geralmente preferida devido ao seu nível mais alto de segurança.
A autenticação baseada no SQL Server armazena um hash de senha no banco de dados master, que era vulnerável a ataques de força bruta em versões anteriores do SQL Server. Além disso, a forma como a senha era transmitida pela rede era facilmente decifrada se interceptada. A autenticação baseada no SQL Server também requer a criação e gerenciamento de várias contas por usuário, o que pode ser complicado e não possui gerenciamento centralizado de contas.
No entanto, existem cenários em que a autenticação do SQL Server é necessária, como quando uma conexão confiável não pode ser estabelecida ou quando um aplicativo é construído de uma maneira que a exige. Exploraremos esses cenários com mais detalhes posteriormente neste post do blog.
Autorização – O que você está autorizado a fazer?
A autorização determina os direitos e permissões que uma conta autenticada possui dentro do SQL Server. Os dois princípios básicos a serem seguidos ao planejar o modelo de autorização são o Princípio do Menor Privilégio e o triângulo C-I-A (Confidencialidade, Integridade e Disponibilidade).
O Princípio do Menor Privilégio afirma que uma conta deve ter apenas as permissões necessárias para realizar seu trabalho, nem mais nem menos. O triângulo C-I-A enfatiza a importância de manter a confidencialidade, integridade e disponibilidade dos dados. Embora a confidencialidade e a integridade sejam frequentemente o foco, a disponibilidade também é fundamental. Se o sistema não estiver disponível ou se a conta não tiver permissões suficientes, o sistema será considerado comprometido.
É importante observar que, em muitos aplicativos, o usuário final se conecta ao aplicativo e o aplicativo usa uma única conta de segurança para se conectar ao SQL Server. Essa situação de multiplexação requer uma consideração cuidadosa para garantir que a conta em uso tenha as permissões necessárias para todos os usuários. A colaboração entre DBAs, desenvolvedores e integradores de sistemas é essencial para estabelecer os níveis adequados de segurança.
Auditoria – O que eu preciso rastrear de suas atividades?
A auditoria é frequentemente um aspecto negligenciado da segurança do SQL Server. Envolve rastrear e registrar atividades dentro do SQL Server para monitorar qualquer comportamento suspeito ou não autorizado. O SQL Server fornece cenários de auditoria incorporados, mas em alguns casos, uma solução de terceiros pode ser necessária para atender a requisitos específicos do negócio.
Ao implementar a auditoria, é importante encontrar um equilíbrio. Muita auditoria pode sobrecarregar os logs e dificultar a identificação de detalhes importantes, enquanto pouca auditoria pode deixar vulnerabilidades de segurança passarem despercebidas. Negociar um nível razoável de auditoria que atenda à verdadeira necessidade do negócio é crucial.
Os Cenários
Nos próximos posts do blog, exploraremos quatro cenários diferentes para explorar a implementação prática das três As: Autenticação, Autorização e Auditoria.
- Implementando uma solução de terceiros com pouca ou nenhuma flexibilidade
- Implementando uma solução de terceiros com algumas opções, especialmente em torno da autenticação
- Construindo uma solução interna quando você foi chamado tarde no ciclo de desenvolvimento
- Construindo uma solução interna quando você foi chamado desde o início
Ao examinar esses cenários, obteremos uma compreensão mais profunda dos desafios e das melhores práticas para implementar as três As da maneira mais eficaz possível. O cenário ideal é construir uma solução interna desde o início, pois ela oferece mais flexibilidade e opções.
Fique atento aos próximos posts do blog, onde exploraremos cada cenário em detalhes e forneceremos insights práticos sobre a segurança do SQL Server.