Considerações de segurança no Azure Cosmos DB
A segurança dos dados é uma responsabilidade compartilhada entre você, o cliente e seu provedor de banco de dados. Dependendo do provedor de banco de dados escolhido, a quantidade de responsabilidade que você carrega pode variar. Se você escolher uma solução local, precisará fornecer tudo, desde proteção de ponto final até segurança física do seu hardware, o que não é tarefa fácil. Se você escolher um provedor de banco de dados em nuvem de plataforma como serviço (PaaS), como o Azure Cosmos DB, sua área de preocupação diminuirá consideravelmente.
Para obter mais informações, consulte Responsabilidade compartilhada na nuvem.
Lista de Verificação
Recomendamos a seguinte lista de verificação de requisitos para comparar sistemas de banco de dados:
- Configurações de firewall e segurança de rede
- Autenticação de usuário e controles de usuário refinados
- Capacidade de replicar dados globalmente para falhas regionais
- Capacidade de failover de um datacenter para outro
- Replicação local de dados em um datacenter
- Backups automáticos de dados
- Restauração de dados excluídos de backups
- Capacidade de proteger e isolar dados confidenciais
- Monitorização de ataques
- Respostas incorporadas a ataques
- Capacidade de cercar geograficamente os dados para aderir às restrições de governança de dados
- Proteção física de servidores em datacenters protegidos
- Certificações
Embora possa parecer óbvio, as recentes violações de bases de dados em grande escala recordam-nos a importância simples, mas crítica, dos seguintes requisitos:
- Servidores corrigidos que são mantidos atualizados
- Criptografia HTTPS por padrão/TLS
- Contas administrativas com palavras-passe fortes
Como o Azure Cosmos DB protege meu banco de dados?
O Azure Cosmos DB protege seu banco de dados por padrão com muitos recursos internos ao serviço e ao Azure em geral.
Requisito de segurança | Abordagem de segurança do Azure Cosmos DB |
---|---|
Segurança da rede | Usar um firewall IP é a primeira camada de proteção para proteger seu banco de dados. O Azure Cosmos DB dá suporte a controles de acesso baseados em IP orientados por políticas para suporte a firewall de entrada. Os controles de acesso baseados em IP são semelhantes às regras de firewall usadas pelos sistemas de banco de dados tradicionais. No entanto, eles são expandidos para que uma conta de banco de dados do Azure Cosmos DB só seja acessível a partir de um conjunto aprovado de máquinas ou serviços de nuvem. Para saber mais, consulte Suporte ao firewall do Azure Cosmos DB. Com o Azure Cosmos DB, você pode habilitar um endereço IP específico (168.61.48.0), um intervalo de IP (168.61.48.0/8) e combinações de IPs e intervalos. O Azure Cosmos DB bloqueia todas as solicitações originadas de máquinas fora dessa lista de permissões. As solicitações de máquinas aprovadas e serviços em nuvem devem concluir o processo de autenticação para receber controle de acesso aos recursos. Você pode usar marcas de serviço de rede virtual para obter isolamento de rede e proteger seus recursos do Azure Cosmos DB da Internet geral. Utilize etiquetas de serviço em vez de endereços IP específicos quando criar regras de segurança. Ao especificar o nome da etiqueta de serviço (por exemplo, AzureCosmosDB ) no campo de origem ou destino apropriado de uma regra, você pode permitir ou negar o tráfego para o serviço correspondente. |
Autorização | O Azure Cosmos DB utiliza o HMAC (Hash-based Message Authentication Code) para a autorização. Cada solicitação é colocada em hash usando a chave de conta secreta e o hash codificado em base 64 subsequente é enviado com cada chamada para o Azure Cosmos DB. Para validar a solicitação, o Azure Cosmos DB usa a chave secreta e as propriedades corretas para gerar um hash e, em seguida, compara o valor com o da solicitação. Se os dois valores corresponderem, a operação é autorizada com êxito e a solicitação é processada. Se eles não corresponderem, há uma falha de autorização e a solicitação é rejeitada. Você pode usar uma chave primária, permitindo acesso refinado a um recurso, como um documento. Para saber mais, consulte Acesso seguro aos recursos do Azure Cosmos DB. |
Utilizadores e permissões | Usando a chave primária para a conta, você pode criar recursos de usuário e recursos de permissão por banco de dados. Um token de recurso é associado a uma permissão em um banco de dados e determina se o usuário tem acesso (leitura-gravação, somente leitura ou sem acesso) a um recurso de aplicativo no banco de dados. Os recursos do aplicativo incluem contêineres, documentos, anexos, procedimentos armazenados, gatilhos e funções definidas pelo usuário (UDFs). O token de recurso é usado durante a autenticação para fornecer ou negar acesso ao recurso. Para saber mais, consulte Acesso seguro aos recursos do Azure Cosmos DB. |
Integração com o Ative Directory (controle de acesso baseado em função do Azure) | Você também pode fornecer ou restringir o acesso à conta, banco de dados, contêiner e ofertas (taxa de transferência) do Azure Cosmos DB usando o controle de acesso (IAM) no portal do Azure. O IAM fornece controle de acesso baseado em função e integra-se ao Ative Directory. Você pode usar funções internas ou funções personalizadas para indivíduos e grupos. |
Replicação global | O Azure Cosmos DB oferece distribuição global chave-na-mão, que lhe permite replicar os seus dados para qualquer um dos centros de dados mundiais do Azure de uma forma chave-na-mão. A replicação global permite dimensionar globalmente e fornecer acesso de baixa latência aos seus dados em todo o mundo. No contexto da segurança, a replicação global garante a proteção dos dados contra falhas regionais. Para saber mais, consulte Distribuir dados globalmente. |
Ativações pós-falha regionais | Se você replicar seus dados em mais de um datacenter, o Azure Cosmos DB substituirá automaticamente suas operações se um datacenter regional ficar offline. Você pode criar uma lista priorizada de regiões de failover usando as regiões nas quais seus dados são replicados. Para saber mais, consulte Failovers regionais no Azure Cosmos DB. |
Replicação local | Mesmo em um único datacenter, o Azure Cosmos DB replica automaticamente os dados para alta disponibilidade, oferecendo a opção de níveis de consistência. Essa replicação garante um SLA (Service Level Agreement, contrato de nível de serviço) de disponibilidade de 99,99% para todas as contas de região única e todas as contas de várias regiões com consistência relaxada e 99,999% de disponibilidade de leitura em todas as contas de banco de dados de várias regiões. |
Backups online automatizados | O backup dos bancos de dados do Azure Cosmos DB é feito regularmente e armazenado em um repositório com redundância geográfica. Para saber mais, consulte Backup e restauração online automáticos com o Azure Cosmos DB. |
Restaurar dados eliminados | Você pode usar os backups on-line automatizados para recuperar dados excluídos acidentalmente até ~30 dias após o evento. Para saber mais, consulte Backup e restauração online automáticos com o Azure Cosmos DB. |
Proteja e isole dados confidenciais | Todos os dados nas regiões listadas em Novidades? agora está criptografado em repouso. Os dados pessoais e outros dados confidenciais podem ser isolados em recipientes específicos e leitura-gravação, ou o acesso somente leitura pode ser limitado a usuários específicos. |
Monitorar ataques | Usando o log de auditoria e os registros de atividades, você pode monitorar sua conta para atividades normais e anormais. Você pode visualizar quais operações foram executadas em seus recursos. Esses dados incluem quem iniciou a operação, quando ela ocorreu, o status da operação e muito mais. |
Responder a ataques | Depois de entrar em contato com o suporte do Azure para relatar um ataque potencial, um processo de resposta a incidentes em cinco etapas é iniciado. O objetivo é restaurar a segurança e as operações normais do serviço. O processo restaura os serviços o mais rápido possível depois que um problema é detetado e uma investigação é iniciada. Para saber mais, consulte Resposta de segurança do Microsoft Azure na nuvem. |
Geo-fencing | O Azure Cosmos DB garante a governança de dados para regiões soberanas (por exemplo, Alemanha, China e governo dos EUA). |
Instalações protegidas | Os dados no Azure Cosmos DB são armazenados em unidades de estado sólido nos datacenters protegidos do Azure. Para saber mais, consulte Datacenters globais da Microsoft. |
Criptografia HTTPS & TLS | Todas as conexões com o Azure Cosmos DB suportam HTTPS. O Azure Cosmos DB suporta níveis TLS (Transport Layer Security) até 1.2 (incluídos). É possível impor um nível mínimo de TLS no lado do servidor. Para fazer isso, consulte o guia de autoatendimento Imposição de versão mínima de TLS de autoatendimento no Azure Cosmos DB. |
Encriptação inativa | Todos os dados armazenados no Azure Cosmos DB são criptografados em repouso. Saiba mais em Criptografia do Azure Cosmos DB em repouso. |
Servidores corrigidos | Como um banco de dados gerenciado, o Azure Cosmos DB corrige e gerencia automaticamente o servidor em seu nome, eliminando a necessidade de tarefas manuais de manutenção. |
Contas administrativas com palavras-passe fortes | É impossível ter uma conta administrativa sem senha no Azure Cosmos DB. A segurança via autenticação baseada em segredo TLS e HMAC é incorporada por padrão. |
Certificações de segurança e proteção de dados | Para obter a lista mais atualizada de certificações, consulte Conformidade do Azure e o documento de conformidade mais recente do Azure com todas as certificações do Azure, incluindo o Azure Cosmos DB. |