Configuração de segurança para divisão e mesclagem

Aplica-se a:Banco de Dados SQL do Azure

Para usar o serviço Dividir/Mesclar, você deve configurar corretamente a segurança. O serviço faz parte do recurso Escala Elástica do Banco de Dados SQL do Azure. Para obter mais informações, consulte Implantar um serviço de mesclagem dividida para mover dados entre bancos de dados fragmentados.

Configurar certificados

Os certificados são configurados de duas maneiras.

  1. Para configurar o certificado TLS/SSL
  2. Para configurar certificados de cliente

Obter certificados

Os certificados podem ser obtidos de Autoridades de Certificação (CAs) públicas ou do Serviço de Certificados do Windows. Estes são os métodos preferidos para obter certificados.

Se essas opções não estiverem disponíveis, você poderá gerar certificados autoassinados.

Ferramentas para gerar certificados

Execute as ferramentas

Configurar o certificado TLS/SSL

Um certificado TLS/SSL é necessário para criptografar a comunicação e autenticar o servidor. Escolha o mais aplicável dos três cenários abaixo e execute todas as suas etapas:

Criar um novo certificado autoassinado

  1. Criar um certificado de Self-Signed
  2. Criar ficheiro PFX para certificado TLS/SSL Self-Signed
  3. Carregar certificado TLS/SSL para o serviço de nuvem
  4. Atualizar certificado TLS/SSL no arquivo de configuração do serviço
  5. Importar Autoridade de Certificação TLS/SSL

Utilizar um certificado existente do repositório de certificados

  1. Exportar certificado TLS/SSL do armazenamento de certificados
  2. Carregar certificado TLS/SSL para o serviço de nuvem
  3. Atualizar certificado TLS/SSL no arquivo de configuração do serviço

Usar um certificado existente em um arquivo PFX

  1. Carregar certificado TLS/SSL para o serviço de nuvem
  2. Atualizar certificado TLS/SSL no arquivo de configuração do serviço

Configurar certificados de cliente

Os certificados de cliente são necessários para autenticar solicitações para o serviço. Escolha o mais aplicável dos três cenários abaixo e execute todas as suas etapas:

Desativar certificados de cliente

  1. Desativar autenticação do Cliente Certificate-Based

Emitir novos certificados de cliente autoassinados

  1. Criar uma autoridade de certificação Self-Signed
  2. Transferir certificado CA para o serviço de nuvem
  3. Atualizar certificado da autoridade de certificação no arquivo de configuração do serviço
  4. Emitir certificados de cliente
  5. Criar arquivos PFX para certificados de cliente
  6. Importar certificado de cliente
  7. Copiar impressões digitais do certificado do cliente
  8. Configurar clientes permitidos no arquivo de configuração do serviço

Usar certificados de cliente existentes

  1. Encontrar chave pública da autoridade de certificação
  2. Transferir certificado CA para o serviço de nuvem
  3. Atualizar certificado da autoridade de certificação no arquivo de configuração do serviço
  4. Copiar impressões digitais do certificado do cliente
  5. Configurar clientes permitidos no arquivo de configuração do serviço
  6. Configurar verificação de revogação do certificado do cliente

Endereços IP permitidos

O acesso aos pontos finais de serviço pode ser restrito a intervalos específicos de endereços IP.

Configurar a criptografia para a loja

Um certificado é necessário para criptografar as credenciais armazenadas no repositório de metadados. Escolha o mais aplicável dos três cenários abaixo e execute todas as suas etapas:

Usar um novo certificado autoassinado

  1. Criar um certificado de Self-Signed
  2. Criar arquivo PFX para Certificado de Criptografia Self-Signed
  3. Carregar certificado de criptografia para o serviço de nuvem
  4. Atualizar certificado de criptografia no arquivo de configuração do serviço

Utilizar um certificado existente do repositório de certificados

  1. Exportar certificado de criptografia do armazenamento de certificados
  2. Carregar certificado de criptografia para o serviço de nuvem
  3. Atualizar certificado de criptografia no arquivo de configuração do serviço

Usar um certificado existente em um arquivo PFX

  1. Carregar certificado de criptografia para o serviço de nuvem
  2. Atualizar certificado de criptografia no arquivo de configuração do serviço

A configuração padrão

A configuração padrão nega todo o acesso ao ponto de extremidade HTTP. Esta é a configuração recomendada, já que as solicitações para esses endpoints podem conter informações confidenciais, como credenciais de banco de dados.

A configuração padrão permite acesso total ao ponto de extremidade HTTPS. Essa configuração pode ser restringida ainda mais.

Alterar a configuração

O grupo de regras de controlo de acesso que se aplica a um ponto de extremidade é configurado na seção <EndpointAcls> no arquivo de configuração de serviço.

<EndpointAcls>
    <EndpointAcl role="SplitMergeWeb" endPoint="HttpIn" accessControl="DenyAll" />
    <EndpointAcl role="SplitMergeWeb" endPoint="HttpsIn" accessControl="AllowAll" />
</EndpointAcls>

As regras em um grupo de controle de acesso são configuradas em uma <seção AccessControl name=""> do arquivo de configuração do serviço.

O formato é explicado na documentação das Listas de Controle de Acesso à Rede. Por exemplo, para permitir que apenas IPs no intervalo 100.100.0.0 a 100.100.255.255 acessem o ponto de extremidade HTTPS, as regras teriam esta aparência:

<AccessControl name="Restricted">
    <Rule action="permit" description="Some" order="1" remoteSubnet="100.100.0.0/16"/>
    <Rule action="deny" description="None" order="2" remoteSubnet="0.0.0.0/0" />
</AccessControl>
<EndpointAcls>
    <EndpointAcl role="SplitMergeWeb" endPoint="HttpsIn" accessControl="Restricted" />
</EndpointAcls>

Prevenção da negação de serviço

Há dois mecanismos diferentes suportados para detetar e prevenir ataques de negação de serviço:

  • Restringir o número de solicitações simultâneas por host remoto (desativado por padrão)
  • Restringir taxa de acesso por host remoto (ativado por padrão)

Estes são baseados nos recursos documentados em Segurança IP Dinâmica no IIS. Ao alterar essa configuração, cuidado com os seguintes fatores:

  • O comportamento de proxies e dispositivos de conversão de endereços de rede sobre as informações do host remoto
  • Cada solicitação para qualquer recurso na função Web é considerada (por exemplo, carregamento de scripts, imagens, etc.)

Restringir o número de acessos simultâneos

As configurações que configuram esse comportamento são:

<Setting name="DynamicIpRestrictionDenyByConcurrentRequests" value="false" />
<Setting name="DynamicIpRestrictionMaxConcurrentRequests" value="20" />

Altere DynamicIpRestrictionDenyByConcurrentRequests para true para habilitar essa proteção.

Restringir a taxa de acesso

As configurações que configuram esse comportamento são:

<Setting name="DynamicIpRestrictionDenyByRequestRate" value="true" />
<Setting name="DynamicIpRestrictionMaxRequests" value="100" />
<Setting name="DynamicIpRestrictionRequestIntervalInMilliseconds" value="2000" />

Configurar a resposta a uma solicitação negada

A configuração a seguir configura a resposta a uma solicitação negada:

<Setting name="DynamicIpRestrictionDenyAction" value="AbortRequest" />

Consulte a documentação de Segurança IP Dinâmica no IIS para obter outros valores suportados.

Operações para configurar certificados de serviço

Esta secção é apenas para referência. Siga as etapas de configuração descritas em:

  • Configurar o certificado TLS/SSL
  • Configurar certificados de cliente

Criar um certificado autoassinado

Executar:

makecert ^
  -n "CN=myservice.cloudapp.net" ^
  -e MM/DD/YYYY ^
  -r -cy end -sky exchange -eku "1.3.6.1.5.5.7.3.1" ^
  -a sha256 -len 2048 ^
  -sv MySSL.pvk MySSL.cer

Para personalizar:

  • -n com o URL do serviço
    • Curingas (CN=*.cloudapp.net) e nomes alternativos (CN=myservice1.cloudapp.net, CN=myservice2.cloudapp.net) são suportados.
  • -e com a data de validade do certificado

Crie uma senha forte e especifique-a quando solicitado.

Criar arquivo PFX para certificado TLS/SSL autoassinado

Executar:

pvk2pfx -pvk MySSL.pvk -spc MySSL.cer

Introduza a palavra-passe e, em seguida, exporte o certificado com estas opções:

  • Sim, exporte a chave privada
  • Exportar todas as propriedades estendidas

Exportar certificado TLS/SSL do armazenamento de certificados

  • Encontrar certificado
  • Selecione Ações ->Todas as tarefas ->Exportar...
  • Exportar certificado para um arquivo . PFX com estas opções:
    • Sim, exporte a chave privada
    • Incluir todos os certificados no caminho de certificação, se possível *Exportar todas as propriedades avançadas

Carregar certificado TLS/SSL para o serviço de nuvem

Carregue o certificado com o ficheiro .PFX existente ou gerado, juntamente com o par de chaves TLS.

  • Introduza a palavra-passe que protege as informações da chave privada

Atualizar certificado TLS/SSL no arquivo de configuração do serviço

Atualize o valor de impressão digital da seguinte configuração no arquivo de configuração do serviço com a impressão digital do certificado carregado no serviço de nuvem:

<Certificate name="SSL" thumbprint="" thumbprintAlgorithm="sha1" />

Importar autoridade de certificação TLS/SSL

Siga estas etapas em todas as contas/máquinas que se comunicarão com o serviço:

  1. Clique duas vezes no arquivo . CER no Windows Explorer.
  2. Na caixa de diálogo Certificado, selecione Instalar certificado....
  3. Importe o certificado para o repositório de Autoridades de Certificação Raiz Confiáveis.

Desativar a autenticação baseada em certificado de cliente

Somente a autenticação baseada em certificado de cliente é suportada e desativá-la permitirá o acesso público aos pontos de extremidade de serviço, a menos que outros mecanismos estejam em vigor (por exemplo, Rede Virtual do Microsoft Azure).

Altere essas configurações para false no arquivo de configuração do serviço para desativar o recurso:

<Setting name="SetupWebAppForClientCertificates" value="false" />
<Setting name="SetupWebserverForClientCertificates" value="false" />

Em seguida, copie a mesma impressão digital que o certificado TLS/SSL na configuração do certificado da autoridade de certificação:

<Certificate name="CA" thumbprint="" thumbprintAlgorithm="sha1" />

Criar uma autoridade de certificação autoassinada

Execute as seguintes etapas para criar um certificado autoassinado para atuar como uma Autoridade de Certificação:

makecert ^
-n "CN=MyCA" ^
-e MM/DD/YYYY ^
 -r -cy authority -h 1 ^
 -a sha256 -len 2048 ^
  -sr localmachine -ss my ^
  MyCA.cer

Para personalizá-lo

  • -e com a data de validade da certificação

Encontrar chave pública da autoridade de certificação

Todos os certificados de cliente devem ter sido emitidos por uma Autoridade de Certificação confiável pelo serviço. Encontre a chave pública para a Autoridade de Certificação que emitiu os certificados de cliente que serão usados para autenticação para carregá-la no serviço de nuvem.

Se o arquivo com a chave pública não estiver disponível, exporte-o do armazenamento de certificados:

  • Encontrar certificado
    • Procurar um certificado de cliente emitido pela mesma Autoridade de Certificação
  • Clique duas vezes no certificado.
  • Selecione a guia Caminho de certificação na caixa de diálogo Certificado.
  • Clique duas vezes na entrada da autoridade de certificação no caminho.
  • Anote as propriedades do certificado.
  • Feche a caixa de diálogo Certificado .
  • Encontrar certificado
    • Procure a autoridade de certificação mencionada acima.
  • Selecione Ações ->Todas as tarefas ->Exportar...
  • Exportar certificado para um arquivo . CER com estas opções:
    • Não, não exporte a chave privada
    • Inclua todos os certificados no caminho de certificação, se possível.
    • Exporte todas as propriedades estendidas.

Carregar o certificado de CA para o serviço de cloud

Carregue o certificado com o arquivo .CER existente ou gerado, com a chave pública da autoridade de certificação.

Atualizar certificado de autoridade de certificação no arquivo de configuração do serviço

Atualize o valor de impressão digital da seguinte configuração no arquivo de configuração do serviço com a impressão digital do certificado carregado no serviço de nuvem:

<Certificate name="CA" thumbprint="" thumbprintAlgorithm="sha1" />

Atualize o valor da seguinte configuração com a mesma impressão digital:

<Setting name="AdditionalTrustedRootCertificationAuthorities" value="" />

Emitir certificados de cliente

Cada indivíduo autorizado a aceder ao serviço deve ter um certificado de cliente emitido para seu uso exclusivo e deve escolher a sua própria palavra-passe forte para proteger a sua chave privada.

As etapas a seguir devem ser executadas na mesma máquina em que o certificado de autoridade de certificação autoassinado foi gerado e armazenado:

makecert ^
  -n "CN=My ID" ^
  -e MM/DD/YYYY ^
  -cy end -sky exchange -eku "1.3.6.1.5.5.7.3.2" ^
  -a sha256 -len 2048 ^
  -in "MyCA" -ir localmachine -is my ^
  -sv MyID.pvk MyID.cer

Personalização:

  • -n com um ID para o cliente que será autenticado com este certificado
  • -e com a data de validade do certificado
  • MyID.pvk e MyID.cer com nomes de arquivo exclusivos para este certificado de cliente

Este comando solicitará que uma senha seja criada e, em seguida, usada uma vez. Use uma senha forte.

Criar arquivos PFX para certificados de cliente

Para cada certificado de cliente gerado, execute:

pvk2pfx -pvk MyID.pvk -spc MyID.cer

Personalização:

MyID.pvk and MyID.cer with the filename for the client certificate

Introduza a palavra-passe e, em seguida, exporte o certificado com estas opções:

  • Sim, exporte a chave privada
  • Exportar todas as propriedades estendidas
  • A pessoa para quem este certificado está sendo emitido deve escolher a senha de exportação

Importar certificado de cliente

Cada indivíduo para o qual um certificado de cliente foi emitido deve importar o par de chaves nas máquinas que usará para se comunicar com o serviço:

  • Clique duas vezes no arquivo . PFX no Windows Explorer
  • Importe o certificado para o repositório pessoal com pelo menos esta opção:
    • Incluir todas as propriedades estendidas confirmadas

Copiar impressões digitais do certificado do cliente

Cada indivíduo para o qual um certificado de cliente foi emitido deve seguir estas etapas para obter a impressão digital de seu certificado, que será adicionada ao arquivo de configuração do serviço:

  • Executar certmgr.exe
  • Selecione o separador Pessoal
  • Clique duas vezes no certificado do cliente a ser usado para autenticação
  • Na caixa de diálogo Certificado que é aberta, selecione a guia Detalhes
  • Verifique se a opção Exibir está mostrando Tudo
  • Selecione o campo chamado Impressão digital na lista
  • Copie o valor da impressão digital
    • Excluir caracteres Unicode não visíveis na frente do primeiro dígito
    • Excluir todos os espaços

Configurar clientes permitidos no arquivo de configuração do serviço

Atualize o valor da seguinte configuração no arquivo de configuração do serviço com uma lista separada por vírgulas das impressões digitais dos certificados de cliente com acesso permitido ao serviço:

<Setting name="AllowedClientCertificateThumbprints" value="" />

Configurar verificação de revogação de certificado de cliente

A configuração padrão não verifica com a Autoridade de Certificação o status de revogação do certificado do cliente. Para ativar as verificações, se a Autoridade de Certificação que emitiu os certificados de cliente oferecer suporte a essas verificações, altere a seguinte configuração com um dos valores definidos na enumeração X509RevocationMode:

<Setting name="ClientCertificateRevocationCheck" value="NoCheck" />

Criar arquivo PFX para certificados de criptografia autoassinados

Para um certificado de criptografia, execute:

pvk2pfx -pvk MyID.pvk -spc MyID.cer

Personalização:

MyID.pvk and MyID.cer with the filename for the encryption certificate

Introduza a palavra-passe e, em seguida, exporte o certificado com estas opções:

  • Sim, exporte a chave privada
  • Exportar todas as propriedades estendidas
  • Você precisará da senha ao carregar o certificado para o serviço de nuvem.

Exportar certificado de criptografia do armazenamento de certificados

  1. Encontre o certificado.
  2. Selecione Ações ->Todas as tarefas ->Exportar....
  3. Exportar certificado para um arquivo . PFX com estas opções:
  • Sim, exporte a chave privada
  • Inclua todos os certificados no caminho de certificação, se possível
  1. Exportar todas as propriedades estendidas

Carregar certificado de criptografia para o serviço de nuvem

Carregue o certificado com o ficheiro .PFX existente ou gerado, juntamente com o par de chaves de encriptação.

  • Introduza a palavra-passe que protege as informações da chave privada

Atualizar certificado de criptografia no arquivo de configuração do serviço

Atualize o valor de impressão digital das seguintes configurações no arquivo de configuração do serviço com a impressão digital do certificado carregado no serviço de nuvem:

<Certificate name="DataEncryptionPrimary" thumbprint="" thumbprintAlgorithm="sha1" />

Operações de certificado comuns

  • Configurar o certificado TLS/SSL
  • Configurar certificados de cliente

Encontrar certificado

Siga estes passos:

  1. No Windows, execute mmc.exe.
  2. Ficheiro ->Adicionar/Remover Snap-in...
  3. Selecione Certificados.
  4. Selecione Adicionar.
  5. Escolha o local de armazenamento de certificados.
  6. Selecione Concluir.
  7. Selecione OK.
  8. Expanda Certificados.
  9. Expanda o nó de armazenamento de certificados.
  10. Expanda o nó filho do Certificado.
  11. Selecione um certificado na lista.

Certificado de exportação

No Assistente para Exportação de Certificados:

  1. Selecione Seguinte.
  2. Selecione Sim e, em seguida, Exportar a chave privada.
  3. Selecione Seguinte.
  4. Selecione o formato de arquivo de saída desejado.
  5. Verifique as opções desejadas.
  6. Verifique a senha.
  7. Introduza uma palavra-passe forte e confirme-a.
  8. Selecione Seguinte.
  9. Digite ou procure um nome de arquivo onde armazenar o certificado (use um arquivo . Extensão PFX).
  10. Selecione Seguinte.
  11. Selecione Concluir.
  12. Selecione OK.

Certificado de importação

No Assistente para Importação de Certificados:

  1. Selecione o local da loja.

    • Selecione Usuário atual se apenas os processos em execução sob o usuário atual acessarem o serviço
    • Selecione Máquina Local se outros processos neste computador acessarem o serviço
  2. Selecione Seguinte.

  3. Se estiver importando de um arquivo, confirme o caminho do arquivo.

  4. Se estiver a importar um ficheiro .PFX:

    1. Introduza a palavra-passe que protege a chave privada
    2. Selecionar opções de importação
  5. Selecione "Colocar" certificados no seguinte repositório

  6. Selecione Procurar.

  7. Selecione a loja desejada.

  8. Selecione Concluir.

    • Se o armazenamento da Autoridade de Certificação Raiz Confiável tiver sido escolhido, selecione Sim.
  9. Selecione OK em todas as janelas de diálogo.

Carregar certificado

No portal do Azure

  1. Selecione Serviços na nuvem.
  2. Selecione o serviço de nuvem.
  3. No menu superior, selecione Certificados.
  4. Na barra inferior, selecione Carregar.
  5. Selecione o arquivo de certificado.
  6. Se for um arquivo . PFX, digite a senha para a chave privada.
  7. Uma vez concluído, copie a impressão digital do certificado da nova entrada na lista.

Outras considerações de segurança

As configurações de TLS descritas neste documento criptografam a comunicação entre o serviço e seus clientes quando o ponto de extremidade HTTPS é usado. Isso é importante, uma vez que as credenciais para acesso ao banco de dados e potencialmente outras informações confidenciais estão contidas na comunicação. No entanto, observe que o serviço mantém o estado interno, incluindo as credenciais, nas suas tabelas internas no Banco de Dados SQL do Azure que você forneceu para o armazenamento de metadados na sua subscrição do Microsoft Azure. Esse banco de dados foi definido como parte da seguinte configuração no arquivo de configuração de serviço (. Arquivo CSCFG):

<Setting name="ElasticScaleMetadata" value="Server=..." />

As credenciais armazenadas neste banco de dados são criptografadas. No entanto, como prática recomendada, certifique-se de que as funções Web e de trabalho de suas implantações de serviço sejam mantidas atualizadas e seguras, pois ambas têm acesso ao banco de dados de metadados e ao certificado usado para criptografia e descriptografia de credenciais armazenadas.

Ainda não está usando ferramentas de banco de dados elástico? Consulte o nosso Guia de Introdução . Em caso de dúvidas, entre em contato conosco na página de perguntas do Microsoft Q&sobre o Banco de Dados SQL e, para solicitações de funcionalidades, adicione novas ideias ou vote em ideias existentes no fórum de feedback do Banco de Dados SQL .