Autenticação do Microsoft Entra como uma alternativa para a autenticação SQL
Aplica-se a:✅ ponto de extremidade de análise do SQL e Warehouse no Microsoft Fabric
Este artigo aborda métodos técnicos que 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 ao uso de nomes de usuário e senhas por meio da autenticação SQL para iniciar sessão ao ponto de extremidade de análises SQL do lakehouse ou do warehouse no Microsoft Fabric. A autenticação do Microsoft Entra é recomendável e essencial para a criação de uma plataforma de dados segura.
Este artigo se concentra na autenticação do Microsoft Entra como uma alternativa para a autenticação SQL em itens do Microsoft Fabric, como um ponto de extremidade de análise SQL do Warehouse ou do Lakehouse.
Benefícios da autenticação do Microsoft Entra no Fabric
Um dos princípios centrais do Microsoft Fabric é a segurança desde o início. O Microsoft Entra é uma parte integral da segurança do Microsoft Fabric ao garantir proteção de dados, governança e conformidade robustas.
O Microsoft Entra tem uma função fundamental na segurança do Microsoft Fabric por diversos motivos:
- Autenticação: verifique usuários e entidades de serviço usando o Microsoft Entra ID, que concede tokens de acesso para operações no Fabric.
- Acesso seguro: conexão segura para aplicativos na nuvem usando qualquer dispositivo ou rede, garantindo a segurança das solicitações realizadas ao Fabric.
- Acesso condicional: os administradores podem estabelecer políticas para avaliar o contexto de logon do usuário, controlar o acesso ou impor etapas extras de verificação.
- Integração: o Microsoft Entra ID funciona sem complicações com todas as ofertas de SaaS da Microsoft, incluindo o Fabric, o que permite acesso fácil em diferentes dispositivos e redes.
- Plataforma abrangente: acesse o Microsoft Fabric com o Microsoft Entra ID usando qualquer método, seja pelo portal do Fabric, por uma cadeia de conexão SQL, pela API REST ou por um ponto de extremidade XMLA.
O Microsoft Entra adota uma política completa de Confiança Zero, oferecendo uma alternativa superior à autenticação SQL tradicional, que se limita a nomes de usuário e senhas. Essa abordagem:
- Previne a usurpação de identidade de usuários.
- Possibilita um controle de acesso granular, considerando a identidade do usuário, o ambiente, os dispositivos etc.
- Oferece suporte para recursos de segurança avançados, como a autenticação multifator do Microsoft Entra.
Configuração do Fabric
A autenticação do Microsoft Entra para uso com um ponto de extremidade de análises SQL do Warehouse ou do Lakehouse requer configuração tanto nas definições do Locatário quanto do Espaço de Trabalho.
Configuração do locatário
Um administrador do Fabric no seu locatário deve permitir o acesso ao SPN (nomes de entidade de serviço) para as APIs do Fabric, necessárias para que o SPN faça interface para cadeias de conexão SQL para os itens de ponto de extremidade de análise do Fabric ou SQL.
Essa configuração está localizada na seção Configurações do desenvolvedor e é indicada como As entidades de serviço podem usar APIs do Fabric. Certifique-se de que esteja Habilitada.
Configurações do espaço de trabalho
Um administrador do Fabric no seu workspace deve conceder acesso a um usuário ou SPN para acessar os itens do Fabric.
Existem duas maneiras pelas quais um Usuário/SPN pode receber acesso:
Conceder uma associação de usuário/SPN a uma função: qualquer função de workspace (Administrador, Membro, Colaborador ou Visualizador) é suficiente para se conectar a itens de warehouse ou lakehouse com uma cadeia de conexão SQL.
- Na opção Gerenciar acesso no Espaço de Trabalho, atribua a função Colaborador. Para obter mais informações, confira as funções de serviço.
Atribuir um usuário/SPN a um item específico: conceder acesso a um ponto de extremidade de análise de SQL ou Warehouse específico de um Lakehouse. Um administrador do Fabric pode escolher entre diferentes níveis de permissão.
- Navegue até o item relevante do Warehouse ou do ponto de extremidade das análises SQL.
- Selecione Mais opções e, em seguida, Gerenciar Permissões. Selecione Adicionar usuário.
- Adicione o Usuário/SPN na página Conceder acesso para pessoas.
- Atribua as permissões necessárias para um Usuário/SPN. Não escolha Permissões adicionais para conceder apenas permissões de conexão.
Você pode alterar as permissões padrão fornecidas ao Usuário ou SPN pelo sistema. Use os comandos T-SQL GRANT e DENY para modificar permissões conforme necessário, ou ALTER ROLE para adicionar subscrições para as funções.
No momento, SPNs não têm a capacidade de configurar permissões detalhadas com GRANT
/DENY
como as contas de usuário.
Suporte para identidades dos usuários e para nomes das entidades de serviço (SPNs)
O Fabric oferece suporte nativo para autenticação e autorização por parte de usuários do Microsoft Entra e para nomes das entidades de serviço (SPNs) em conexões SQL com itens de ponto de extremidade da análise de SQL e de warehouse.
- As identidades dos usuários são as credenciais exclusivas para cada usuário dentro de uma organização.
- Os SPNs representam objetos de aplicativos em um locatário e atuam como a identidade para as instâncias dos aplicativos, assumindo a função de autenticar e autorizar esses aplicativos.
Suporte para o protocolo TDS (Tabular Data Stream)
O Fabric usa o protocolo TDS, o mesmo que o SQL Server, quando você se conecta a 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 com uma instância do SQL Server, o TDS opera na porta TCP 1433. Para obter mais informações sobre conectividade SQL do Fabric e localizar a cadeia de conexão SQL, confira Conectividade.
Uma amostra de cadeia de conexão SQL é: <guid_unique_your_item>.datawarehouse.fabric.microsoft.com
.
Aplicativos e ferramentas clientes podem definir a propriedade de conexão Authentication
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, inclusive o suporte para MFA (autenticação multifator) do Microsoft Entra.
Modo de autenticação | Cenários | Comentários |
---|---|---|
Microsoft Entra Interativo | Utilizado por aplicativos ou ferramentas em situações nas quais a autenticação do usuário pode ocorrer de forma interativa, ou quando é aceitável ter intervenção manual para a verificação de credenciais. | Ative a MFA e as políticas de Acesso Condicional do Microsoft Entra para impor as regras organizacionais. |
Entidade de Serviço do Microsoft Entra | Utilizado por aplicativos para uma autenticação segura sem necessidade de intervenção humana, sendo ideal para a integração de aplicativos. | É aconselhável habilitar 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 requerem um nome de usuário e uma senha genéricos para muitos usuários, ou se outros métodos são inviáveis. | A MFA deve estar desativado e nenhuma política de acesso condicional pode ser configurada. É recomendável validar com a equipe de segurança do cliente, antes de optar por essa solução. |
Suporte dos drivers para a autenticação do Microsoft Entra
Embora a maioria dos drivers SQL inicialmente oferecesse suporte para a autenticação do Microsoft Entra, atualizações recentes ampliaram a compatibilidade para incluir a autenticação baseada em SPN. Essa melhoria simplifica a transição para a autenticação do Microsoft Entra em diversos aplicativos e ferramentas por meio de atualizações de drivers e inclusão de suporte para a autenticação do Microsoft Entra.
No entanto, às vezes é necessário realizar ajuste nas configurações adicionais, como habilitar determinadas portas ou firewalls, para facilitar a autenticação do Microsoft Entra no computador host.
Aplicativos e ferramentas devem atualizar drivers para versões que dão suporte à autenticação do Microsoft Entra e adicionar uma palavra-chave de 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 Microsoft.Data.SqlClient
, e com os drivers genéricos, como ODBC e JDBC. A transição para que os aplicativos funcionem com o Fabric pode ser gerenciada por meio da reconfiguração para usar a autenticação com base no Microsoft Entra ID.
Para obter mais informações: confira Conectividade com armazenamento de dados no Microsoft Fabric.
Microsoft OLE DB
O Driver do OLE DB para SQL Server é uma API de acesso a dados independente projetada para o OLE DB e lançada pela primeira vez com o SQL Server 2005 (9.x). Desde então, os recursos foram expandidos para incluir autenticação com base em SPN com a versão 18.5.0, além dos métodos de autenticação existentes em 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 do Microsoft Entra | Autenticação da Entidade de Serviço do Microsoft Entra |
Senha do Microsoft Entra | Autenticação de senha e nome de usuário do Microsoft Entra |
Para obter um snippet de código C# ao usar o OLE DB com a autenticação com base em SPN, confira System.Data.OLEDB.Connect.cs.
Driver ODBC do Microsoft
O Microsoft ODBC Driver for 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 efetuar a conexão com o SQL Server. A recomendação é para usar a versão mais recente para integrar aplicativos com o Fabric.
Para obter mais informações sobre a autenticação do Microsoft Entra com o ODBC, confira a amostra de código Using Microsoft Entra ID with the ODBC Driver.
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 do 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 snippet de código em Python ao usar o ODBC com a autenticação com base em SPN, confira pyodbc-dw-connectivity.py.
Microsoft JDBC Driver
O Microsoft JDBC Driver para SQL Server é um driver do JDBC Tipo 4 que fornece conectividade com o banco de dados por meio de interfaces de programação de aplicativo (APIs) JDBC padrão disponíveis na plataforma Java.
A partir da versão 9.2, o mssql-jdbc
introduz suporte para ActiveDirectoryInteractive
e ,ActiveDirectoryServicePrincipal
com suporte para ActiveDirectoryPassword
a partir das versões 12.2 e posteriores. Esse driver requer o formato de arquivo jars adicional como dependência, que deve ser compatível com a versão do mssql-driver
utilizada em seu aplicativo. Para obter mais informações, confira Dependências de recurso do JDBC Driver e Requisitos 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 do 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 snippet de código em Java ao usar o JDBC com a autenticação com base em SPN, confira fabrictoolbox/dw_connect.java e sample pom file pom.xml.
Microsoft.Data.SqlClient em .NET Core (C#)
O Microsoft.Data.SqlClient é um provedor de dados para o Microsoft SQL Server e o Banco de Dados SQL do Azure. Ele é uma junção dos dois componentes System.Data.SqlClient
que existem de forma independente no .NET Framework e no .NET Core, fornecendo um conjunto de classes para acessar bancos de dados do Microsoft SQL Server. O Microsoft.Data.SqlClient
é recomendado para todo desenvolvimento novo e futuro.
Modo de Autenticação | Mais informações |
---|---|
Microsoft Entra Interativo | Usando a autenticação interativa |
Entidade de Serviço do Microsoft Entra | Usar a autenticação de entidade de serviço |
Senha do Microsoft Entra | Usando autenticação de senha |
Snippets de código ao usar SPNs: