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 de malha em seu locatário deve permitir o acesso de nomes de entidade de serviço (SPN) às APIs de malha, necessárias para que o SPN faça interface para cadeias de conexão SQL com itens de ponto de extremidade de malha ou armazém de análise SQL.
Essa configuração está localizada na seção Configurações do desenvolvedor e é rotulada As entidades de serviço podem usar APIs de malha. Certifique-se de que está ativado.
Configuração do espaço de trabalho
Um administrador de malha em seu espaço de trabalho deve conceder acesso a um usuário ou 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 a uma função: qualquer função de espaço de trabalho (Administrador, Membro, Colaborador ou Visualizador) é suficiente para se conectar a itens de depósito ou lakehouse com uma cadeia de conexão SQL.
- 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.
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 de um Lakehouse. Um administrador de malha pode escolher entre diferentes níveis de permissão.
- Navegue até o item de ponto de extremidade relevante do Warehouse ou da análise SQL.
- Selecione Mais opções e, em seguida , Gerir Permissões. Selecione Adicionar utilizador.
- Adicione o Usuário/SPN na página Conceder acesso às pessoas.
- Atribua as permissões necessárias a um Usuário/SPN. Escolha sem permissões adicionais para conceder somente permissões de conexão.
Você pode alterar as permissões padrão dadas ao usuário ou 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
/DENY
o .
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)
A malha usa o protocolo TDS (Tabular Data Stream), o mesmo do SQL Server, quando você se conecta com uma cadeia de conexão.
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 do Fabric SQL e como localizar a cadeia de conexão SQL, consulte Conectividade.
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 Microsoft 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. Recomendamos a validação com a equipa de segurança do cliente antes de optar por esta soluçã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.
Os aplicativos e ferramentas devem atualizar os drivers para versões que ofereçam suporte à autenticação do Microsoft Entra e adicionar uma palavra-chave do modo de autenticação em sua cadeia de conexão SQL, como ActiveDirectoryInteractive
, ActiveDirectoryServicePrincipal
ou ActiveDirectoryPassword
.
O Fabric é compatível com os drivers nativos da Microsoft, incluindo OLE DB, e drivers genéricos, Microsoft.Data.SqlClient
como 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: