Avançar para o conteúdo principal Não há mais suporte para esse navegador. Show
Atualize o Microsoft Edge para aproveitar os recursos, o suporte técnico e as atualizações de segurança mais recentes. Considerações ao usar nomes de domínio em uma solução multilocatárioEm muitos aplicativos Web multilocatários, um nome de domínio pode ser usado como forma de identificar um locatário, ajudar com solicitações de roteamento e fornecer uma experiência de marca para seus clientes. Duas abordagens comuns são usar subdomínios e nomes de domínio personalizados. Nesta página, fornecemos orientação para tomadores de decisão técnicos sobre as abordagens que você pode considerar e suas compensações. SubdomíniosCada locatário pode obter um subdomínio exclusivo em um nome de domínio compartilhado comum. Vamos considerar um exemplo de solução multilocatário criada pela Contoso. Os clientes compram o produto da Contoso para ajudar a gerenciar a criação de faturas. Todos os locatários da Contoso podem receber seu próprio subdomínio, sob o nome de domínio Observação Muitos serviços do Azure usam essa abordagem. Por exemplo, quando você cria uma conta de armazenamento do Azure, ela recebe um conjunto de subdomínios para
você usar, como Gerenciar seu namespace de domínioAo criar subdomínios com seu próprio nome de domínio, você precisa estar ciente de que pode ter vários clientes com nomes semelhantes. Como eles compartilham um único domínio de raiz, o primeiro cliente a obter um domínio específico obterá seu nome preferencial, e os clientes subsequentes terão que usar nomes de subdomínio alternativos, pois os nomes de domínio completos devem ser globalmente exclusivos. DNS curingaConsidere usar entradas de DNS curinga para simplificar o gerenciamento de subdomínios. Em vez de criar entradas DNS para Observação Garanta que seus serviços de camada da Web ofereçam suporte a DNS curinga para usar esse recurso. Muitos serviços do Azure, incluindo Azure Front Door e Serviço de Aplicativo do Azure, dão suporte a entradas DNS curinga. Subdomínios com domínios-tronco de várias partesMuitas soluções multilocatários estão espalhadas por várias implantações físicas. Isso é comum quando você precisa cumprir os requisitos de residência de dados ou quando deseja fornecer melhor desempenho implantando recursos geograficamente mais próximos dos usuários. Mesmo dentro de uma única região, você também pode precisar distribuir seus locatários em implantações independentes, como parte de sua estratégia de dimensionamento. Se você planeja usar subdomínios para cada locatário, considere uma estrutura de subdomínio de várias partes. Veja aqui um exemplo: a Contoso publicou um aplicativo multilocatário para seus quatro clientes. A Adventure Works e a Tailwind Traders estão nos Estados Unidos e seus dados são armazenados em uma instância compartilhada dos EUA da plataforma Contoso. Os importadores globais e da Fabrikam têm sede na Europa, e seus dados são armazenados em uma instância europeia. Se a Contoso optar por usar um único domínio de raiz, como contoso.com, para todos os seus clientes, veja qual será sua aparência: As entradas DNS (necessárias para dar suporte a essa configuração) podem ter esta aparência:
Cada novo cliente integrado requer um novo subdomínio e o número de subdomínios cresce com cada cliente. Como alternativa, a Contoso pode usar domínios de haste específicos de implantação ou região, como este: As entradas DNS para esta implantação podem ter esta aparência:
A Contoso não precisa criar registros de subdomínio para cada cliente. Em vez disso, eles têm um único registro DNS curinga para a implantação de cada geografia, e todos os novos clientes que forem adicionados a essa raiz herdarão automaticamente o registro CNAME. Existem vantagens e desvantagens em cada abordagem. Ao usar um único domínio-tronco, cada locatário integrado exigirá a criação de um novo registro DNS, o que imporá mais sobrecarga operacional. No entanto, você tem mais flexibilidade se precisar mover locatários entre implantações, pois pode alterar o registro CNAME para direcionar seu tráfego para outra implantação. Isso não afetará nenhum outro locatário. Ao usar vários domínios-tronco, haverá uma sobrecarga de gerenciamento menor e você pode reutilizar nomes de clientes em vários domínios-tronco regionais, pois cada um representa efetivamente seu próprio namespace. Nomes de domínio personalizadosConvém permitir que seus clientes tragam seus próprios nomes de domínio. Alguns clientes veem isso como um aspecto importante de sua marca. Também pode ser necessário atender aos requisitos de segurança dos clientes, especialmente se eles precisarem fornecer seus próprios certificados TLS. Embora possa parecer trivial permitir que os clientes tragam seus próprios nomes de domínio, existem algumas complexidades ocultas nessa abordagem e isso requer uma consideração cuidadosa. Resolução de nomesEm última análise, cada nome de domínio precisa ser resolvido para um endereço IP. Como você viu, a abordagem pela qual isso acontece pode depender da implantação de uma única instância ou de várias instâncias de sua solução. Voltemos ao nosso exemplo. Um dos clientes da Contoso, a Fabrikam, pediu para usar
De uma perspectiva de resolução de nomes, essa cadeia de registros resolve com precisão solicitações de Resolução de cabeçalho de hostA resolução de nomes é apenas metade do problema. Todos os componentes da Web (na implantação europeia da Contoso) precisam estar cientes de como lidar com solicitações que chegam com o nome de domínio da Fabrikam em seu
cabeçalho de solicitação Você também pode considerar reescrever cabeçalhos de host, para que, independentemente do cabeçalho de Validação do domínioÉ importante validar a propriedade de domínios personalizados antes de integrá-los. Caso contrário, você corre o risco de um cliente estacionar um nome de domínio de maneira acidental ou mal-intencionada. Vamos considerar o processo de integração da Contoso para a Adventure Works, que pediu para usar Ao trabalhar com domínios personalizados, especialmente em um processo de autoatendimento ou automatizado, é comum exigir uma etapa de verificação de domínio. Isso pode exigir que os registros CNAME sejam configurados antes que o domínio possa ser adicionado. Como alternativa, a Contoso pode gerar uma cadeia de caracteres aleatória e pedir à Adventure Works para adicionar um registro DNS TXT com o valor da cadeia de caracteres. Isso impediria que o nome de domínio fosse adicionado até que a verificação fosse concluída. DNS pendente e ataques de tomada de controle de subdomínioAo trabalhar com nomes de domínio personalizados, você fica potencialmente vulnerável a uma classe de ataque chamada DNS pendente ou tomada de controle de subdomínio. Esse ataque ocorre quando os clientes desassociam o nome de domínio personalizado do seu serviço, mas não excluem o registro do servidor DNS. Essa entrada DNS aponta para um recurso inexistente e é vulnerável a um controle. Vamos considerar como o relacionamento da Fabrikam com a Contoso pode mudar:
Uma estratégia comum para se proteger contra ataques de DNS pendentes é exigir que o registro CNAME seja excluído antes que o nome de domínio possa ser removido da conta do locatário. Considere também proibir a reutilização de identificadores de locatário e fortalecer seu processo de integração de domínio personalizado usando um registro TXT gerado aleatoriamente (que é diferente em cada tentativa de integração). Certificados TLS/SSLO protocolo TLS (Transport Layer Security) é um componente essencial ao trabalhar com aplicativos modernos. Ele fornece confiança e segurança para seus aplicativos Web. A propriedade e o gerenciamento de certificados TLS é algo que precisa de consideração cuidadosa para aplicativos multilocatários. Normalmente, o proprietário de um nome de domínio será responsável por emitir e renovar seus certificados. Por exemplo, a Contoso é
responsável por emitir e renovar certificados TLS para Para permitir que os clientes tragam seus próprios domínios, considere se planeja emitir o certificado em nome do cliente ou se os clientes devem trazer seus próprios certificados. Cada opção tem vantagens e desvantagens. Se você emitir um certificado para um cliente, poderá lidar com a renovação do certificado para que o cliente não precise se lembrar de mantê-lo atualizado. No entanto, se os clientes tiverem registros de CAA em seus nomes de domínio, talvez eles precisem autorizar que você emita certificados em nome deles. Se você espera que os clientes emitam e forneçam seus próprios certificados, você é responsável por receber e gerenciar as chaves privadas de maneira segura e talvez precise lembrar seus clientes de renovar o certificado antes que ele expire, para evitar uma interrupção no seu serviço. Vários serviços do Azure dão suporte ao gerenciamento automático de certificados para domínios personalizados. Por exemplo, o Azure Front Door e o Serviço de Aplicativo fornecem certificados para domínios personalizados e tratam automaticamente do processo de renovação. Isso remove a carga de gerenciamento de certificados da sua equipe de operações. No entanto, você ainda precisa considerar a questão de propriedade e autoridade, como se os registros CAA estão em vigor e configurados corretamente. Adicionalmente, você precisa garantir que os domínios de seus clientes estejam configurados para permitir os certificados gerenciados pela plataforma. ColaboradoresEsse artigo é mantido pela Microsoft. Ele foi escrito originalmente pelos colaboradores a seguir. Autor principal:
Outros colaboradores:
Para ver perfis não públicos do LinkedIn, entre no LinkedIn. Próximas etapasRetorne à visão geral das considerações de arquitetura. Ou examine o Microsoft Azure Well-Architected Framework. ComentáriosEnviar e exibir comentários de Qual a função do CNAME?Um nome canônico ou um registro CNAME é um tipo de registro DNS que mapeia um nome de alias para um nome de domínio verdadeiro ou canônico. Os registros CNAME normalmente são usados para mapear um subdomínio como www ou mail ao domínio que hospeda o conteúdo desse subdomínio.
É responsável por resolver um IP para um nome de domínio?O servidor DNS resolve nomes para os endereços IP e de endereços IP para os nomes respectivos, permitindo a localização de hosts num determinado domínio. Num sistema livre, o serviço é normalmente implementado pelo software BIND. Este serviço geralmente encontra-se localizado no servidor DNS primário.
O que é uma entrada CNAME?Um CNAME, ou nome canônico, é uma entrada no Sistema de Nomes de Domínio (DNS, na sigla em inglês) que especifica onde alguém pode encontrar suas páginas da Web.
Que protocolo permite utilizar um nome de domínio?O DNS — do inglês Domain Name System — é uma sigla para sistema de nomes de domínio. Como o nome sugere, é um registro que contém nomes de sites e respectivos endereços IP associados. Essa correlação favorece a transferência de dados entre computadores e permite o acesso à internet.
|