Gerenciamento de identidade e acesso
Este artigo descreve considerações de design e recomendações para gerenciamento de identidade e acesso. Ele se concentra na implantação de uma plataforma de análise em escala de nuvem no Microsoft Azure. Como a análise em escala de nuvem é um componente crítico, você deve seguir as diretrizes sobre as áreas de design da zona de destino do Azure ao projetar sua solução.
Este artigo baseia-se em considerações e recomendações sobre zonas de destino do Azure. Para obter mais informações, consulte a área de design de gestão de identidade e acesso .
Design da zona de destino de dados
A análise em escala de nuvem dá suporte a um modelo de controle de acesso usando identidades do Microsoft Entra. O modelo usa o RBAC (controle de acesso baseado em função) do Azure e listas de controle de acesso.
Examine as atividades de administração e gerenciamento do Azure que suas equipes executam. Avalie sua análise em escala de nuvem no Azure. Determine a melhor distribuição possível de responsabilidades em sua organização.
Atribuições de função
Para desenvolver, entregar e atender produtos de dados de forma autônoma na plataforma de dados, as equipes de aplicativos de dados exigem vários direitos de acesso dentro do ambiente do Azure. É importante observar que você deve usar modelos de acesso diferentes para ambientes de desenvolvimento e superiores. Use grupos de segurança quando possível para reduzir o número de atribuições de função e simplificar o processo de gerenciamento e revisão de direitos RBAC. Essa etapa é crucial por causa do número limitado de atribuições de funções que você pode criar para cada assinatura.
O ambiente de desenvolvimento deve ser acessível para a equipe de desenvolvimento e suas respectivas identidades de usuário. Esse acesso permite que eles iterem mais rapidamente, aprendam sobre certas funcionalidades dos serviços do Azure e solucionem problemas com eficiência. O acesso a um ambiente de desenvolvimento pode ajudá-lo a desenvolver ou aprimorar a infraestrutura como código e outros artefatos de código.
Depois de confirmar que uma implementação funciona conforme o esperado no ambiente de desenvolvimento, ela pode ser distribuída continuamente para ambientes mais altos. Ambientes superiores, como teste e produção, devem ser bloqueados para a equipe de aplicações de dados. Somente uma entidade de serviço deve ter acesso a esses ambientes. Dessa forma, todas as implantações precisam ser executadas por meio da identidade principal do serviço usando pipelines de CI/CD (integração contínua e entrega contínua). No ambiente de desenvolvimento, forneça direitos de acesso a uma entidade de serviço e identidades de usuário. Em ambientes mais altos, restrinja os direitos de acesso apenas à identidade da entidade de serviço.
Para criar recursos e atribuições de função entre recursos dentro dos grupos de recursos do aplicativo de dados, você deve fornecer direitos de Contributor
e User Access Administrator
. Esses direitos permitem que as equipes criem e controlem serviços em seu ambiente dentro dos limites do Azure Policy.
Para reduzir o risco de exfiltração de dados, são práticas recomendadas de análise de nuvem usar pontos de extremidade privados. A equipe de plataforma do Azure bloqueia outras opções de conectividade por meio de políticas, portanto, as equipes de aplicativos de dados precisam de direitos de acesso à rede virtual compartilhada de uma zona de destino de dados. Esse acesso é essencial para configurar a conectividade de rede necessária para os serviços que eles planejam usar.
Para seguir o princípio de privilégios mínimos, evite conflitos entre diferentes equipes de aplicativos de dados e tenha uma separação clara das equipes. São práticas recomendadas de análise para ambientes de nuvem criar uma sub-rede dedicada para cada equipe de aplicação de dados e criar uma atribuição de função Network Contributor
para essa sub-rede ou o escopo do recurso filho. Essa atribuição de função permite que as equipes ingressem na sub-rede usando pontos de extremidade privados.
Essas duas primeiras atribuições de função permitem a implantação de autoatendimento de serviços de dados nesses ambientes. Para resolver as preocupações de gerenciamento de custos, as organizações devem adicionar uma etiqueta de centro de custo aos grupos de recursos para habilitar a cobrança cruzada e a propriedade de custos distribuídos. Essa abordagem conscientiza as equipes e ajuda a garantir que elas tome decisões informadas sobre SKUs e camadas de serviço necessárias.
Para habilitar o uso de autoatendimento de outros recursos compartilhados dentro da zona de destino de dados, algumas atribuições de função extras são necessárias. Se o acesso a um ambiente do Azure Databricks for necessário, as organizações deverão usar sincronização SCIM do Microsoft Entra ID para fornecer acesso. Esse mecanismo de sincronização é importante porque sincroniza automaticamente usuários e grupos da ID do Microsoft Entra com o plano de dados do Azure Databricks. Ele também remove automaticamente os direitos de acesso quando um indivíduo sai da organização ou dos negócios. No Azure Databricks, forneça às equipes de aplicativos de dados Can Restart
direitos de acesso a um cluster predefinido para que possam executar cargas de trabalho dentro do workspace.
Equipes individuais exigem acesso à conta do Microsoft Purview para descobrir ativos de dados em suas respectivas zonas de destino de dados. As equipes geralmente precisam editar ativos de dados catalogados que possuem para fornecer detalhes extras, como as informações de contato de proprietários de dados e especialistas. As equipes também exigem a capacidade de fornecer informações mais granulares sobre o que cada coluna em um conjunto de dados descreve e inclui.
Resumo dos requisitos do RBAC
Para automatizar a implantação de zonas de destino de dados, as seguintes funções são necessárias:
Nome da função
Descrição
Escopo
Implante todas as zonas DNS privadas para todos os serviços de dados em uma única assinatura e grupo de recursos. A entidade de serviço precisa ser um Private DNS Zone Contributor
no grupo de recursos DNS global criado durante a implantação da zona de destino do gerenciamento de dados. Essa função é necessária para implantar registros A para os pontos de extremidade privados.
(Escopo do grupo de recursos) /subscriptions/{{dataManagement}subscriptionId}/resourceGroups/{resourceGroupName}
Para configurar o emparelhamento de rede virtual entre a rede da zona de destino de dados e a rede da zona de destino de gerenciamento de dados, a entidade de serviço precisa de direitos de acesso Network Contributor
no grupo de recursos da rede virtual remota.
(Escopo do grupo de recursos) /subscriptions/{{dataManagement}subscriptionId}/resourceGroups/{resourceGroupName}
Essa permissão é necessária para compartilhar o runtime de integração auto-hospedada que é implantado no grupo de recursos integration-rg
com outros data factories. Também é necessário atribuir acesso às identidades gerenciadas do Azure Data Factory e do Azure Synapse Analytics nos respectivos sistemas de arquivos de conta de armazenamento.
(Escopo do recurso) /subscriptions/{{dataLandingZone}subscriptionId}
Nota
Em um cenário de produção, você pode reduzir o número de atribuições de função. A função Network Contributor
só é necessária para configurar o emparelhamento de rede virtual entre a zona de destino de gerenciamento de dados e a zona de destino de dados. Sem essa função, a resolução DNS falha. Além disso, o tráfego de entrada e saída é descartado porque não há nenhuma linha de visão para o Firewall do Azure.
A função Private DNS Zone Contributor
não será necessária se a implantação de registros A do DNS dos pontos de extremidade privados for automatizada por meio de políticas do Azure com o efeito deployIfNotExists
. O mesmo vale para a função User Access Administrator
porque você pode automatizar a implantação usando políticas de deployIfNotExists
.
Atribuições de função para produtos de dados
As seguintes atribuições de função são necessárias para implantar um produto de dados em uma zona de destino de dados:
Nome da função
Descrição
Escopo
Implante todas as zonas DNS privadas para todos os serviços de dados em uma única assinatura e grupo de recursos. A entidade de serviço precisa ser um Private DNS Zone Contributor
no grupo de recursos DNS global criado durante a implantação da zona de destino do gerenciamento de dados. Essa função é necessária para implantar registros A nos respectivos pontos de extremidade privados.
(Escopo do grupo de recursos) /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}
Implante todos os serviços de streaming de integração de dados em um único grupo de recursos dentro da assinatura da zona de destino de dados. A entidade de serviço requer uma atribuição de função Contributor
nesse grupo de recursos.
(Escopo do grupo de recursos) /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}
Para implantar pontos de extremidade privados na sub-rede de Link Privado do Azure especificada, criada durante a implantação da zona de destino de dados, a entidade de serviço Network Contributor
exige acesso nessa sub-rede.
(Escopo do recurso filho) /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName} /providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}"
Acesso a outros recursos
Fora do Azure, as equipes de aplicativos de dados exigem acesso a um repositório para armazenar artefatos de código, colaborar com eficiência e distribuir atualizações e alterações consistentemente em ambientes mais altos por meio de CI/CD. Você deve fornecer uma placa de projeto para permitir o desenvolvimento ágil, o planejamento de sprint, o acompanhamento de tarefas e o gerenciamento de comentários do usuário e solicitações de recursos.
Para automatizar CI/CD, estabeleça uma conexão com o Azure. Esse processo é feito na maioria dos serviços por meio de entidades de serviço. Devido a esse requisito, as equipes devem ter acesso a uma entidade de serviço para obter automação em seu projeto.
Gerenciar o acesso aos dados
Gerenciar o acesso aos dados usando grupos do Microsoft Entra. Adicione nomes principais de usuário ou nomes principais de serviço aos grupos do Microsoft Entra. Em seguida, adicione esses grupos aos serviços e conceda permissões ao grupo. Essa abordagem permite o controle de acesso refinado.
Para obter mais informações sobre como implementar a segurança para zonas de destino de gerenciamento de dados e zonas de destino de dados que administram seu patrimônio de dados, consulte Autenticação para análise em escala de nuvem no Azure.