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.
Este artigo discute uma coleção de melhores práticas de segurança do Armazenamento do Azure para proteger suas aplicações web e móveis de plataforma como serviço (PaaS). A Microsoft desenvolveu estas melhores práticas com base na experiência com o Azure e com clientes do Azure.
O Azure possibilita implantar e usar o armazenamento de formas que não são fáceis de alcançar localmente. Com o Armazenamento do Azure, você pode alcançar altos níveis de escalabilidade e disponibilidade com relativamente pouco esforço. Armazenamento do Azure é a base para Windows e Linux Máquinas Virtuais do Azure, e também pode suportar grandes aplicações distribuídas.
O Armazenamento do Azure oferece quatro serviços: armazenamento de blobs, armazenamento de tabelas, armazenamento em fila e armazenamento de arquivos. Para obter mais informações, consulte: Introdução ao Armazenamento do Microsoft Azure .
Este artigo aborda as seguintes melhores práticas:
- SAS (Assinaturas de Acesso Compartilhado)
- RBAC do Azure (controle de acesso baseado em função do Azure)
- Criptografia do lado do cliente para dados de alto valor
- Criptografia do serviço de armazenamento
Use a assinatura de acesso compartilhado em vez de uma chave de conta de armazenamento
O controle de acesso é fundamental. Para ajudá-lo a controlar o acesso ao Armazenamento do Azure, o Azure gera duas SAKs (chaves de conta de armazenamento) de 512 bits quando você cria uma conta de armazenamento. Essa redundância de chaves ajuda a evitar interrupções de serviço durante a rotação rotineira de chaves.
Chaves de acesso ao armazenamento são segredos de alta prioridade e devem ser acessíveis apenas para pessoas responsáveis pelo controle de acesso ao armazenamento. Se as pessoas erradas tiverem acesso a essas chaves, elas ganham controle total do armazenamento e podem substituir, excluir ou adicionar arquivos ao armazenamento. Atacantes podem enviar malware e outros tipos de conteúdo que possam comprometer sua organização ou seus clientes.
Você ainda precisa de uma maneira de fornecer acesso aos objetos no armazenamento. Para fornecer acesso mais granular, aproveite a assinatura de acesso compartilhada (SAS). O SAS permite compartilhar objetos específicos em armazenamento por um intervalo de tempo pré-definido e com permissões específicas. Uma assinatura de acesso compartilhado permite definir:
- O intervalo no qual a SAS é válida, incluindo a hora de início e a hora de expiração.
- As permissões concedidas pelas SAS. Por exemplo, um SAS em um blob pode conceder a um usuário permissões de leitura e gravação nesse blob, mas não permissões de exclusão.
- Um endereço IP opcional ou um intervalo de endereços IP dos quais o Armazenamento do Azure aceita a SAS. Por exemplo, você pode especificar um intervalo de endereços IP que pertencem à sua organização. Essa opção oferece mais uma medida de segurança para o seu SAS.
- O protocolo em que o Armazenamento do Azure aceita a SAS. Você pode usar esse parâmetro opcional para restringir o acesso a clientes que usam HTTPS.
A SAS lhe permite compartilhar conteúdo da maneira desejada sem precisar fornecer suas chaves de conta de armazenamento. Sempre use SAS na sua aplicação para compartilhar seus recursos de armazenamento com segurança, sem comprometer as chaves da sua conta de armazenamento.
Para mais informações sobre assinatura de acesso compartilhada, veja Usando assinaturas de acesso compartilhado.
Usar o controle de acesso baseado em funções do Azure
Outra maneira de gerenciar o acesso é usar o RBAC do Azure (controle de acesso baseado em função do Azure). Com o RBAC do Azure, você se concentra em fornecer aos funcionários as permissões exatas de que eles precisam com base nas necessidades deles e nos princípios de segurança de privilégios mínimos. Muitas permissões podem expor uma conta a ataques. Permissões insuficientes significa que os funcionários não podem ter seu trabalho feito com eficiência. O RBAC do Azure ajuda a abordar esse problema oferecendo gerenciamento de acesso refinado ao Azure. O controle de acesso é fundamental para as organizações que desejam impor políticas de segurança para acesso a dados.
É possível usar funções internas no Azure para atribuir privilégios aos usuários. Por exemplo, use o Colaborador da Conta de Armazenamento para operadores de nuvem que precisarem gerenciar contas de armazenamento e a função de Colaborador de Conta de Armazenamento Clássica para gerenciar contas de armazenamento clássicas. Para operadores de nuvem que precisam gerenciar VMs, mas não a rede virtual ou a conta de armazenamento a que estão conectados, adicione-os à função de Colaborador de Máquina Virtual.
Organizações que não aplicam controle de acesso a dados usando recursos como o Azure RBAC podem dar aos usuários mais privilégios do que o necessário. Ter mais privilégios do que o necessário pode levar ao comprometimento de dados ao permitir que alguns usuários acessem dados aos quais não deveriam ter acesso.
Para mais informações sobre o Azure RBAC, veja:
- Atribuir funções do Azure usando o portal do Azure
- Funções internas do Azure
- Recomendações de segurança para o armazenamento de blobs
Use criptografia do lado do cliente para dados de alto valor
A criptografia do lado do cliente permite criptografar programaticamente dados em trânsito antes de carregar no Armazenamento do Azure, bem como descriptografar os dados programaticamente ao recuperá-los. A criptografia no lado do cliente fornece criptografia de dados em trânsito, mas também fornece criptografia de dados inativos. A criptografia do lado do cliente é o método mais seguro de criptografar seus dados, mas ela requer que você faça alterações programáticas em seu aplicativo e implemente processos de gerenciamento de chaves.
A criptografia do lado do cliente também permite que você tenha controle exclusivo sobre suas chaves de criptografia. Você pode gerar e gerenciar suas próprias chaves de criptografia. Esse processo utiliza uma técnica de envelope em que a biblioteca cliente de armazenamento do Azure gera uma chave de criptografia de conteúdo (CEK) e depois a encapsula (criptografa) usando a chave de criptografia de chave (KEK). Um identificador de chave identifica o KEK. O KEK pode ser um par de chaves assimétricas ou simétricas, e você pode gerenciá-lo localmente ou armazená-lo no Azure Key Vault.
A criptografia do lado do cliente é interna nas bibliotecas de cliente de armazenamento Java e .NET. Veja Criptografia do lado do cliente para blobs para obter informações sobre como criptografar dados em aplicativos cliente e gerar e gerenciar suas próprias chaves de criptografia.
Habilitar a criptografia do serviço de armazenamento para dados em repouso
Quando você habilita a criptografia do serviço de armazenamento para arquivos, o Armazenamento do Azure criptografa automaticamente os dados usando criptografia AES-256. A Microsoft lida com toda a criptografia, a descriptografia e o gerenciamento de chaves. Este recurso está disponível para os tipos de redundância LRS e GRS.
Próximas etapas
Este artigo apresentou a você um conjunto de melhores práticas de segurança do Armazenamento do Azure para proteger seus aplicativos móveis e Web de PaaS. Para saber mais sobre como proteger suas implantações de PaaS, confira: