O Azure Key Vault é o serviço de gerenciamento de segredos recomendado para clusters e aplicativos do Service Fabric.
Observação
Se os certificados/segredos de um Key Vault são implantados em um Conjunto de dimensionamento de máquinas virtuais como um Segredo de conjunto de dimensionamento de máquinas virtuais, o Key Vault e o Conjunto de dimensionamento de máquinas virtuais devem ser colocalizados.
Criar a autoridade de certificação que emitiu o certificado do Service Fabric
O certificado do Azure Key Vault pode ser criado ou importado em um Key Vault. Quando um certificado de Key Vault é criado, a chave privada é criada dentro do Key Vault e nunca é exposta ao proprietário do certificado. Veja a seguir maneiras de criar um certificado no Key Vault:
Criar um certificado autoassinado para criar um par de chaves públicas-privadas e associá-lo a um certificado. O certificado será assinado por sua própria chave.
Criar um novo certificado manualmente para criar um par de chaves públicas-privadas e gerar uma solicitação de assinatura de certificado X.509. A solicitação de assinatura pode ser assinada por sua autoridade de registro ou a autoridade de certificação. O certificado X.509 assinado pode ser mesclado com o par de chaves pendente para concluir o certificado do KV no Key Vault. Embora esse método requeira mais etapas, ele oferece maior segurança porque a chave privada é criada no Key Vault e restrita a ele. Isso é explicado no diagrama a seguir.
Implantar certificados do Key Vault em Conjuntos de Dimensionamento de Máquinas Virtuais no cluster do Service Fabric
Para implantar certificados de um keyvault colocalizado em um Conjunto de dimensionamento de máquinas virtuais, use o Conjunto de dimensionamento de máquinas virtuais osProfile. Veja a seguir as propriedades de modelo do Resource Manager :
O vault deve ser habilitado para a implantação do modelo do Resource Manager.
Aplicar uma ACL (Lista de Controle de Acesso) em seu certificado para o cluster do Service Fabric
O publicador das extensões do Conjunto de dimensionamento de máquinas virtuais Microsoft.Azure.ServiceFabric é usado para configurar a Segurança dos Nós.
Para aplicar uma ACL a seus certificados para os processos de cluster do Service Fabric, use as seguintes propriedades de modelo do Resource Manager:
Proteger um certificado de cluster do Service Fabric com nome comum
Para proteger o cluster do Service Fabric por certificado Common Name, use a propriedade de modelo do Resource Manager certificateCommonNames, da seguinte maneira:
Os clusters do Service Fabric usarão o primeiro certificado válido que encontrarem no repositório de certificados do host. No Windows, esse será o certificado com a data de validade mais recente que corresponde à impressão digital do seu Nome Comum e Emissor.
Os domínios do Azure, como *<SEU SUBDOMÍNIO>.cloudapp.azure.com ou <SEU SUBDOMÍNIO>.trafficmanager.net, são propriedades da Microsoft. As autoridades de certificação não emitirão certificados para domínios de usuários não autorizados. A maioria dos usuários precisará comprar um domínio de um registrador ou ser um administrador de domínio autorizado para que uma autoridade de certificação emita um certificado com esse nome comum.
Para obter detalhes adicionais sobre como configurar o serviço DNS para resolver seu domínio para um endereço IP da Microsoft, examine as informações sobre como configurar o DNS do Azure para hospedar seu domínio.
Observação
Após delegar seus servidores de nome de domínios a seus servidores de nome de zona DNS do Azure, adicione os dois registros a seguir na zona DNS:
Um registro 'A' para o domínio APEX que NÃO seja um Alias record set em todos os endereços IP que seu domínio personalizado resolverá.
Um registro de 'C' para subdomínios Microsoft que você provisionou que NÃO seja um Alias record set. Por exemplo, você pode usar o Gerenciador de Tráfego ou nome DNS do Load Balancer.
Para atualizar seu portal a fim de exibir um nome DNS personalizado de seu cluster do Service Fabric "managementEndpoint", atualize as seguintes propriedades de modelo do Resource Manager do Cluster do Service Fabric:
Criptografar os valores de segredo de pacote do Service Fabric
Os valores comuns que são criptografados em pacotes do Service Fabric incluem as credenciais de Registro de Contêiner do Azure (ACR), variáveis de ambiente, configurações e chaves de conta de armazenamento de plug-in do volume do Azure.
Criptografe seu segredo usando o seguinte comando do PowerShell e, em seguida, atualize o manifesto do aplicativo do Service Fabric com o valor criptografado:
PowerShell
Invoke-ServiceFabricEncryptText -CertStore -CertThumbprint"<thumbprint>" -Text"mysecret" -StoreLocation CurrentUser -StoreName My
Incluir um certificado de ponto de extremidade em aplicativos do Service Fabric
Para configurar o certificado de ponto de extremidade do aplicativo, inclua o certificado no manifesto do aplicativo adicionando um elemento EndpointCertificate junto com o elemento User da conta da entidade de segurança. Por padrão, a conta da entidade de segurança é NetworkService. Essa opção fornecerá o gerenciamento da ACL de chave privada de certificado de aplicativo à entidade de segurança definida.
Para habilitar a identidade gerenciada atribuída ao sistema durante a criação de um conjunto de dimensionamento de máquinas virtuais ou um conjunto de dimensionamento de máquinas virtuais existente, declare a seguinte propriedade "Microsoft.Compute/virtualMachinesScaleSets":
Se você tiver criado uma identidade gerenciada atribuída ao usuário, declare o recurso a seguir em seu modelo para atribuí-la a seu conjunto de dimensionamento de máquinas virtuais. Substitua \<USERASSIGNEDIDENTITYNAME\> pelo nome da identidade gerenciada atribuída ao usuário que você criou:
Para que o aplicativo do Service Fabric possa usar a identidade gerenciada, é necessário conceder permissões aos Recursos do Azure de que ele necessita para se autenticar.
Os comandos a seguir concedem acesso a um Recurso do Azure:
O aplicativo do Service Fabric poderá, então, usar o token de acesso para se autenticar nos Recursos do Azure que dão suporte ao Active Directory.
O exemplo a seguir mostra como fazer isso em um recurso do Azure Cosmos DB:
Essas regras de firewall complementam seus Grupos de Segurança de Rede de saída permitidos, que incluem o ServiceFabric e Armazenamento, como destinos permitidos de sua rede virtual.
TLS 1.2
O Microsoft Azure recomenda que todos os clientes concluam a migração para soluções compatíveis com o protocolo TLS 1.2 e certifiquem-se de que o TLS 1.2 seja usado por padrão.
Os serviços do Azure, incluindo Service Fabric, concluíram o trabalho de engenharia para remover a dependência em protocolos TLS 1.0/1.1 e fornecem suporte total aos clientes que desejam ter suas cargas de trabalho configuradas para aceitar e iniciar somente conexões TLS 1.2.
Os clientes devem configurar suas cargas de trabalho hospedadas no Azure e os aplicativos locais interagindo com os serviços do Azure para usar o TLS 1.2 por padrão. Veja como configurar o Service Fabric nós de cluster e aplicativos para usar uma versão específica do TLS.
Windows Defender
Por padrão, o antivírus Windows Defender está instalado no Windows Server 2016. Para obter detalhes, confira o artigo Antivírus Windows Defender no Windows Server 2016. A interface do usuário é instalada por padrão em alguns SKUs, mas não é necessária. Para reduzir qualquer impacto no desempenho e uma sobrecarga de consumo de recurso incorridos pelo Windows Defender, e se as políticas de segurança permitirem excluir processos e caminhos do software livre, declare as seguintes propriedades no modelo do Resource Manager da Extensão do Conjunto de dimensionamento de máquinas virtuais para excluir o cluster do Service Fabric das verificações:
Confira a documentação sobre antimalware para obter as regras de configuração, caso não esteja usando o Windows Defender.
O Windows Defender não tem suporte no Linux.
Hospedar aplicativos não confiáveis em um cluster do Service Fabric
Um cluster do Service Fabric é um locatário único por design e os aplicativos hospedados são considerados confiáveis. Os aplicativos, portanto, têm acesso concedido ao runtime do Service Fabric, que se manifesta em diferentes formas, algumas das quais são: variáveis de ambiente que apontam para caminhos de arquivos no host correspondentes aos arquivos do aplicativo e do Fabric, caminhos do hosts montados com acesso de gravação nas cargas de trabalho do contêiner, um ponto de extremidade de comunicação entre processos que aceita solicitações específicas do aplicativo e o certificado do cliente que o Fabric espera que o aplicativo use para se autenticar.
Se estiver pensando em hospedar aplicativos não confiáveis, você deverá executar etapas adicionais para definir e possuir a experiência de multilocatário hostil para o cluster do Service Fabric. Isso exigirá que você considere vários aspectos, no contexto do seu cenário, incluindo, mas não limitado ao seguinte:
Uma revisão de segurança completa das interações dos aplicativos não confiáveis com outros aplicativos, o próprio cluster e a infraestrutura de computação subjacente.
Uso da tecnologia em área restrita mais forte aplicável (por exemplo, modos de isolamento apropriados para cargas de trabalho de contêiner).
Avaliação de risco dos aplicativos não confiáveis que escapam da tecnologia de área restrita, pois o próximo limite de confiança e segurança é o próprio cluster.
As an Information Security Administrator, you plan and implement information security of sensitive data by using Microsoft Purview and related services. You’re responsible for mitigating risks by protecting data inside collaboration environments that are managed by Microsoft 365 from internal and external threats and protecting data used by AI services. You also implement information protection, data loss prevention, retention, insider risk management, and manage information security alerts and activities.
Os clusters gerenciados do Service Fabric são uma evolução do modelo de recurso de cluster do Azure Service Fabric que simplifica a sua implantação e gerenciamento de cluster.
Uma visão geral de como executar com segurança aplicativos de microsserviço no Service Fabric. Saiba como executar um script de inicialização e serviços em diferentes contas de segurança, autenticar e autorizar usuários, gerenciar segredos de aplicativo, proteger as comunicações de serviço, usar um gateway de API e proteger dados em repouso de aplicativos.
Este artigo explica a arquitetura do Service Fabric, uma plataforma de sistemas distribuídos usada para criar aplicativos escalonáveis, confiáveis e facilmente gerenciados para a nuvem.