Autenticação do Microsoft Entra como alternativa à autenticação SQL

Aplica-se a:✅ ponto de extremidade de análise SQL e Warehouse no Microsoft Fabric

Este artigo aborda os métodos técnicos que os usuários e clientes podem empregar para fazer a transição da autenticação SQL para a autenticação do Microsoft Entra no Microsoft Fabric. A autenticação do Microsoft Entra é uma alternativa aos nomes de usuário e senhas via autenticação SQL para entrar no ponto de extremidade de análise SQL do lakehouse ou do Warehouse no Microsoft Fabric. A autenticação Microsoft Entra é aconselhável e vital para a criação de uma plataforma de dados segura.

Este artigo se concentra na autenticação do Microsoft Entra como uma alternativa à autenticação SQL em itens do Microsoft Fabric, como um ponto de extremidade de análise SQL do Warehouse ou Lakehouse.

Benefícios da autenticação do Microsoft Entra no Fabric

Um dos princípios fundamentais do Microsoft Fabric é a segurança por design. O Microsoft Entra é parte integrante da segurança do Microsoft Fabric, garantindo forte proteção de dados, governança e conformidade.

O Microsoft Entra desempenha um papel crucial na segurança do Microsoft Fabric por vários motivos:

  • Autenticação: verifique os usuários e as entidades de serviço usando o Microsoft Entra ID, que concede tokens de acesso para operações no Fabric.
  • Acesso seguro: conecte-se com segurança a aplicativos na nuvem a partir de qualquer dispositivo ou rede, protegendo as solicitações feitas ao Fabric.
  • Acesso condicional: os administradores podem definir políticas que avaliam o contexto de login do usuário, controlam o acesso ou impõem etapas adicionais de verificação.
  • Integração: o Microsoft Entra ID funciona perfeitamente com todas as ofertas de SaaS da Microsoft, incluindo o Fabric, permitindo fácil acesso entre dispositivos e redes.
  • Plataforma ampla: obtenha acesso ao Microsoft Fabric com o Microsoft Entra ID por meio de qualquer método, seja por meio do portal Fabric, cadeia de conexão SQL, API REST ou ponto de extremidade XMLA.

O Microsoft Entra adota uma política completa de Zero Trust, oferecendo uma alternativa superior à autenticação SQL tradicional limitada a nomes de usuário e senhas. Esta abordagem:

  • Impede a representação do usuário.
  • Permite um controle de acesso refinado considerando a identidade do usuário, ambiente, dispositivos, etc.
  • Suporta segurança avançada, como autenticação multifator Microsoft Entra.

Configuração de malha

A autenticação do Microsoft Entra para uso com um ponto de extremidade de análise SQL do Warehouse ou Lakehouse requer configuração nas configurações de Locatário e Espaço de Trabalho .

Configuração do locatário

Um administrador do Fabric em seu locatário deve permitir o acesso do SPN às APIs do Fabric, necessárias para que o SPN faça interface para cadeias de conexão SQL com itens de ponto de extremidade do Fabric Warehouse ou do SQL Analytics.

Essa configuração está localizada na seção Configurações do desenvolvedor e as entidades de serviço rotuladas como ios podem usar APIs de malha. Certifique-se de que está ativado.

Captura de tela do portal Fabric da página Configurações do desenvolvedor em Configurações do locatário.

Configuração do espaço de trabalho

Um administrador de malha em seu espaço de trabalho deve conceder acesso a um usuário/SPN para acessar itens de malha.

Há dois meios pelos quais um usuário/SPN pode ter acesso:

  • Conceder uma associação de usuário/SPN à função de Colaborador do Espaço de Trabalho: A função de Colaborador do Espaço de Trabalho permite que a identidade Usuário/SPN acesse todos os itens do Fabric por meio de cadeias de conexão SQL.

    1. Na opção Gerenciar acesso no espaço de trabalho, atribua a função de Colaborador. Para obter mais informações, consulte Funções de serviço.

    Captura de tela do portal do Fabric mostrando a função de Colaborador atribuída a um Usuário na opção Gerenciar acesso no espaço de trabalho.

  • Atribua um usuário/SPN a um item específico: conceda acesso a um ponto de extremidade específico do Warehouse ou da análise SQL. Um administrador de malha pode escolher entre diferentes níveis de permissão.

    1. Navegue até o item de ponto de extremidade relevante do Warehouse ou da análise SQL.
    2. Selecione Mais opções e, em seguida , Gerir Permissões. Selecione Adicionar utilizador.
    3. Adicione o Usuário/SPN na página Conceder acesso às pessoas.
    4. Atribua as permissões necessárias a um Usuário/SPN. Escolha sem permissões adicionais para conceder somente permissões de conexão.

    Captura de tela do portal Fabric da página Conceder acesso às pessoas.

Você pode alterar as permissões padrão dadas ao usuário/SPN pelo sistema. Use os comandos T-SQL GRANT e DENY para alterar as permissões, conforme necessário, ou ALTER ROLE para adicionar associação a funções.

Atualmente, os SPNs não têm a capacidade de contas de usuário para configuração de permissão detalhada com GRANT/DENYo .

Suporte para identidades de usuário e nomes de entidade de serviço (SPNs)

O Fabric oferece suporte nativo à autenticação e autorização para usuários do Microsoft Entra e SPN (nomes principais de serviço) em conexões SQL para itens de ponto de extremidade de análise de depósito e SQL.

  • As identidades de usuário são as credenciais exclusivas para cada usuário dentro de uma organização.
  • Os SPNs representam objetos de aplicativo dentro de um locatário e atuam como a identidade para instâncias de aplicativos, assumindo a função de autenticar e autorizar esses aplicativos.

Suporte para fluxo de dados tabulares (TDS)

O Fabric suporta nativamente o protocolo TDS (Tabular Data Stream), também conhecido como cadeia de conexão SQL. Portanto, o Fabric é compatível com qualquer aplicativo ou ferramenta capaz de se conectar a um produto com o Mecanismo de Banco de Dados SQL. Semelhante a uma conexão de instância do SQL Server, o TDS opera na porta TCP 1433. Para obter mais informações sobre a conectividade Fabric SQL, consulte Conectividade.

Para obter a cadeia de conexão, selecione Mais opções em um depósito de malha ou item de ponto de extremidade de análise SQL.

Captura de tela do portal Fabric do menu de contexto Mais opções. A opção Copiar cadeia de conexão SQL é realçada.

Uma cadeia de conexão SQL de exemplo se parece com: <guid_unique_your_item>.datawarehouse.fabric.microsoft.com.

Aplicativos e ferramentas de cliente podem definir a Authentication propriedade de conexão na cadeia de conexão para escolher um modo de autenticação do Microsoft Entra. A tabela a seguir detalha os diferentes modos de autenticação do Entra, incluindo o suporte para autenticação multifator (MFA) do Microsoft Entra.

Modo de autenticação Cenários Comentários
Microsoft Entra Interativo Utilizado por aplicativos ou ferramentas em situações em que a autenticação do usuário pode ocorrer interativamente, ou quando é aceitável ter intervenção manual para verificação de credenciais. Ative as políticas de Acesso Condicional MFA e Microsoft Entra para impor regras organizacionais.
Entidade de Serviço Microsoft Entra Usado por aplicativos para autenticação segura sem intervenção humana, mais adequado para integração de aplicativos. Aconselhável ativar as políticas de Acesso Condicional do Microsoft Entra.
Senha do Microsoft Entra Quando os aplicativos não podem usar a autenticação baseada em SPN devido à incompatibilidade, ou exigem um nome de usuário e senha genéricos para muitos usuários, ou se outros métodos são inviáveis. O MFA deve estar desativado e nenhuma política de acesso condicional pode ser definida. Recomenda-se validar com a equipa de segurança do cliente antes de optar por esta solução.

Fluxograma mostrando os modos de autenticação do Microsoft Entra e os pontos de decisão.

Suporte de driver para autenticação Microsoft Entra

Embora a maioria dos drivers SQL tenha vindo inicialmente com suporte para autenticação do Microsoft Entra, as atualizações recentes expandiram a compatibilidade para incluir a autenticação baseada em SPN. Esse aprimoramento simplifica a mudança para a autenticação Microsoft Entra para vários aplicativos e ferramentas por meio de atualizações de driver e adição de suporte para autenticação Microsoft Entra.

No entanto, às vezes é necessário ajustar configurações adicionais, como habilitar determinadas portas ou firewalls para facilitar a autenticação do Microsoft Entra na máquina host.

Aplicativos e ferramentas devem atualizar drivers para versões que ofereçam suporte à autenticação Entra e adicionar uma palavra-chave de modo de autenticação em sua cadeia de conexão SQL, como ActiveDirectoryInteractive, ActiveDirectoryServicePrincipalou ActiveDirectoryPassword.

O Fabric é compatível com os drivers nativos da Microsoft, incluindo OLE DB, e drivers genéricos, Microsoft.Data.SqlClientcomo ODBC e JDBC. A transição para que os aplicativos trabalhem com o Fabric pode ser gerenciada por meio da reconfiguração para usar a autenticação baseada em ID do Microsoft Entra.

Para obter mais informações, consulte Conectividade com data warehousing no Microsoft Fabric.

Microsoft OLE DB

O driver OLE DB para SQL Server é uma API de acesso a dados autônoma projetada para OLE DB e lançada pela primeira vez com o SQL Server 2005 (9.x). Desde então, os recursos expandidos incluem autenticação baseada em SPN com a versão 18.5.0, adicionando aos métodos de autenticação existentes de versões anteriores.

Modo de autenticação Cadeia de conexão SQL
Microsoft Entra Interativo Autenticação interativa do Microsoft Entra
Entidade de Serviço Microsoft Entra Autenticação da entidade de serviço do Microsoft Entra
Senha do Microsoft Entra Autenticação de nome de usuário e senha do Microsoft Entra

Para obter um trecho de código C# usando OLE DB com autenticação baseada em SPN, consulte System.Data.OLEDB.Connect.cs.

Microsoft ODBC Driver

O driver ODBC da Microsoft para SQL Server é uma única biblioteca de vínculo dinâmico (DLL) que contém suporte em tempo de execução para aplicativos que usam APIs de código nativo para se conectar ao SQL Server. Recomenda-se usar a versão mais recente para que os aplicativos se integrem ao Fabric.

Para obter mais informações sobre a autenticação do Microsoft Entra com ODBC, consulte Usando a ID do Microsoft Entra com o código de exemplo do driver ODBC.

Modo de Autenticação Cadeia de conexão SQL
Microsoft Entra Interativo DRIVER={ODBC Driver 18 for SQL Server};SERVER=<SQL Connection String>;DATABASE=<DB Name>;UID=<Client_ID@domain>;PWD=<Secret>;Authentication=ActiveDirectoryInteractive
Entidade de Serviço Microsoft Entra DRIVER={ODBC Driver 18 for SQL Server};SERVER=<SQL Connection String>;DATABASE=<DBName>;UID=<Client_ID@domain>;PWD=<Secret>;Authentication=ActiveDirectoryServicePrincipal
Senha do Microsoft Entra DRIVER={ODBC Driver 18 for SQL Server};SERVER=<SQL Connection String>;DATABASE=<DBName>;UID=<Client_ID@domain>;PWD=<Secret>;Authentication=ActiveDirectoryPassword

Para obter um trecho de código python usando ODBC com autenticação baseada em SPN, consulte pyodbc-dw-connectivity.py.

Microsoft JDBC Driver

O Microsoft JDBC Driver for SQL Server é um driver JDBC Tipo 4 que fornece conectividade de banco de dados por meio das interfaces de programa de aplicativo (APIs) JDBC padrão disponíveis na plataforma Java.

A partir da versão 9.2, mssql-jdbc introduz suporte para ActiveDirectoryInteractive e ActiveDirectoryServicePrincipal, sendo ActiveDirectoryPassword suportado nas versões 12.2 e superiores. Este driver requer jars adicionais como dependências, que devem ser compatíveis com a mssql-driver versão do usado em seu aplicativo. Para obter mais informações, consulte Dependências de recursos do driver JDBC e Requisito de configuração do cliente.

Modo de Autenticação Mais informações
Microsoft Entra Interativo Conectar-se usando o modo de autenticação ActiveDirectoryInteractive
Entidade de Serviço Microsoft Entra Conectar-se usando o modo de autenticação ActiveDirectoryServicePrincipal
Senha do Microsoft Entra Conectar-se usando o modo de autenticação ActiveDirectoryPassword

Para obter um trecho de código java usando JDBC com autenticação baseada em SPN, consulte fabrictoolbox/dw_connect.java e exemplo de arquivo pom pom.xml.

Microsoft.Data.SqlClient no .NET Core (C#)

O Microsoft.Data.SqlClient é um provedor de dados para o Microsoft SQL Server e o Banco de Dados SQL do Azure. É uma união dos dois System.Data.SqlClient componentes que vivem independentemente no .NET Framework e no .NET Core, fornecendo um conjunto de classes para acessar bancos de dados do Microsoft SQL Server. Microsoft.Data.SqlClient é recomendada para todos os desenvolvimentos novos e futuros.

Modo de Autenticação Mais informações
Microsoft Entra Interativo Usando autenticação interativa
Entidade de Serviço Microsoft Entra Usando a autenticação da entidade de serviço
Senha do Microsoft Entra Usando autenticação de senha

Trechos de código usando SPNs: