Autenticação para análise de escala de nuvem no Azure
Autenticação é o processo de verificação da identidade do usuário ou aplicativo. É preferível um provedor único de identidade de origem, que lide com o gerenciamento de identidades e a autenticação. Esse provedor é conhecido como serviço de diretório. Ele fornece métodos para armazenar dados de diretório e disponibilizá-los para usuários e administradores de rede.
Qualquer solução data lake deve usar e integrar-se a um serviço de diretório existente. Para a maioria das organizações, o serviço de diretório para todos os serviços relacionados à identidade é o Active Directory. É o banco de dados primário e centralizado para todas as contas de serviço e de usuário.
Na nuvem, o Microsoft Entra ID é um provedor de identidade centralizado e a fonte preferencial para gerenciamento de identidade. Delegar autenticação e autorização para o Microsoft Entra ID permite cenários como políticas de acesso condicional, que exigem que o usuário esteja em um local específico. Ele oferece suporte à autenticação multifator, para aumentar o nível de segurança de acesso. Os serviços de dados devem ser configurados com a integração da ID do Microsoft Entra sempre que possível.
Para serviços de dados que não dão suporte à ID do Microsoft Entra, você deve executar a autenticação usando uma chave de acesso ou token. Você deve armazenar a chave de acesso em um repositório de gerenciamento de chaves, como o Azure Key Vault.
Os cenários de autenticação para a análise em escala de nuvem são:
- autenticação de usuário: os usuários se autenticam por meio da ID do Microsoft Entra usando suas credenciais.
- Autenticação de aplicativo para serviço: aplicativos se autenticam usando entidades de serviço.
- Autenticação serviço a serviço: os recursos do Azure são autenticados usando identidades gerenciadas, que são gerenciadas automaticamente pelo Azure.
Cenários de autenticação
Autenticação de usuário
Os usuários que se conectam a um recurso ou serviço de dados devem apresentar uma credencial. Essa credencial prova que os usuários são quem eles afirmam ser. Em seguida, podem acessar o serviço ou recurso. A autenticação também permite que o serviço detecte a identidade dos usuários. O serviço decide o que um usuário pode ver e fazer após a identidade ser verificada.
O Azure Data Lake Storage Gen2, o Banco de Dados SQL do Azure, o Azure Synapse Analytics e o Azure Databricks dão suporte à integração da ID do Microsoft Entra. O modo interativo de autenticação de usuário exige que os usuários forneçam credenciais em uma caixa de diálogo.
Importante
Não insira credenciais de usuário em código em um aplicativo para fins de autenticação.
Autenticação serviço a serviço
Mesmo quando um serviço acessa outro serviço sem interação humana, ele deve apresentar uma identidade válida. Essa identidade prova a autenticidade do serviço, permitindo que o serviço acessado determine as ações permitidas.
Para autenticação entre serviços, o método preferencial para autenticação de serviços do Azure é identidades gerenciadas. As identidades gerenciadas para recursos do Azure permitem autenticação para qualquer serviço que ofereça suporte à autenticação do Microsoft Entra sem credenciais explícitas. Para obter mais informações, confira O que são as identidades gerenciadas para recursos do Azure.
Identidades gerenciadas são entidades de serviço, que só podem ser usadas com recursos do Azure. Por exemplo, uma identidade gerenciada pode ser criada diretamente para uma instância de Azure Data Factory. Essa identidade gerenciada, registrada com a ID do Microsoft Entra como um objeto, representa a instância do Data Factory. Em seguida, pode ser usada para autenticação em qualquer serviço, como Data Lake Storage, sem credencial no código. O Azure cuida das credenciais usadas pela instância de serviço. A identidade pode conceder autorização a recursos de serviço do Azure, como uma pasta no Azure Data Lake Storage. Quando você exclui essa instância do Data Factory, o Azure limpa a identidade no Microsoft Entra ID.
Benefícios do uso de identidades gerenciadas
As identidades gerenciadas devem ser usadas para autenticar um serviço do Azure em outro serviço ou recurso do Azure. Elas oferecem os seguintes benefícios:
- Uma identidade gerenciada representa o serviço para o qual ela é criada. Ela não representa um usuário interativo.
- As credenciais de identidade gerenciada são mantidas, gerenciadas e armazenadas no Microsoft Entra ID. Não há senha a ser mantida pelo usuário.
- Com identidades gerenciadas, os serviços do cliente não usam senhas.
- A identidade gerenciada atribuída pelo sistema é excluída com a instância do serviço.
Esses benefícios significam que a credencial é mais protegida e o comprometimento da segurança é menos provável.
Autenticação de aplicativo para serviço
Outro cenário de acesso envolve um aplicativo, como um aplicativo móvel ou Web, acessando um serviço do Azure. O aplicativo deve apresentar sua identidade, que deve ser verificada.
Uma entidade de serviço do Azure é a alternativa a aplicativos e serviços que não dão suporte a identidades gerenciadas para autenticação nos recursos do Azure. É uma identidade criada especificamente para aplicativos, serviços hospedados e ferramentas automatizadas para acessar recursos do Azure. As funções atribuídas à entidade de serviço controlam seu acesso. Por motivos de segurança, é recomendável usar entidades de serviço com ferramentas ou aplicativos automatizados em vez de permitir que eles entrem com uma identidade de usuário. Para obter mais informações, confira Objetos de aplicativo e entidade de serviço no Microsoft Entra ID.
Diferença entre identidade gerenciada e entidade de serviço
Entidade de serviço | Identidade gerenciada |
---|---|
Identidade de segurança criada manualmente no Microsoft Entra ID para uso por aplicativos, serviços e ferramentas para acessar recursos específicos do Azure. | É um tipo especial de entidade de serviço. Trata-se de uma identidade automática, criada quando um serviço do Azure é criado. |
Usado por qualquer aplicativo ou serviço e não está vinculado a um serviço específico do Azure. | Representa uma instância de serviço do Azure em si. Ele não pode ser usado para representar outros serviços do Azure. |
Tem ciclo de vida independente. Você deve excluí-la explicitamente. | É excluída automaticamente quando a instância de serviço do Azure é excluída. |
Autenticação baseada em senha ou em certificado. | Não há senha explícita a ser fornecida para autenticação. |
Observação
As identidades gerenciadas e as entidades de serviço são criadas e mantidas somente no Microsoft Entra ID.
Práticas recomendadas para autenticação na análise em escala de nuvem
Na análise em escala de nuvem, garantir práticas de autenticação robustas e seguras é primordial. Práticas recomendadas para autenticação em várias camadas, incluindo bancos de dados, armazenamento e serviços de análise. Usando a ID do Microsoft Entra, as organizações podem aprimorar a segurança com recursos como MFA (autenticação multifator) e políticas de acesso condicional.
Camada | Serviço | Recomendações |
---|---|---|
Bancos de Dados | Banco de Dados SQL do Azure, SQL MI, Synapse, MySQL, PostgreSQL, etc. | Use a ID do Microsoft Entra para autenticação com bancos de dados como PostgreSQL, SQL do Azuree MySQL. |
Armazenamento | ADLS (Azure Data Lake Storage) | Use o ID do Microsoft Entra para autenticar entidades de segurança (usuário, grupo, entidade de serviço ou identidade gerenciada) com ADLS usando chave compartilhada ou SAS, pois oferece segurança aprimorada por meio de suporte à autenticação multifator (MFA) e políticas de acesso condicional. |
Armazenamento | ADLS do Azure Databricks | Conecte-se ao ADLS usando o Catálogo do Unity, em vez de acesso direto no nível de armazenamento criando uma credencial de armazenamento usando uma identidade gerenciada e um local externo. |
Análise | Azure Databricks | Use o SCIM para sincronizar usuários e grupos do Microsoft Entra ID. Para acessar recursos do Databricks usando APIs REST, use OAuth com uma entidade de serviço do Databricks. |
Importante
Permitir que os usuários do Azure Databricks tenham acesso direto em nível de armazenamento ao ADLS bypassa as permissões, auditorias e recursos de segurança do Unity Catalog, incluindo controle de acesso e monitoramento. Para proteger e controlar totalmente os dados, o acesso aos dados armazenados no ADLS para usuários do workspace do Azure Databricks deve ser gerenciado por meio do Catálogo do Unity.
Próximas etapas
Autorização para análise em escala de nuvem no Azure