Compartilhar via


Entidade de serviço no Fabric Data Warehouse

Aplica-se a:✅ Warehouse no Microsoft Fabric

Um principal de serviço (SPN) do Azure é uma identidade de segurança usada por aplicativos ou ferramentas de automação para acessar recursos específicos do Azure. Ao contrário das identidades do usuário, as entidades de serviço são identidades não interativas baseadas em aplicativo que podem receber permissões precisas, tornando-as perfeitas para processos automatizados ou serviços em segundo plano. Usando entidades de serviço, você pode se conectar a suas fontes de dados com segurança, minimizando os riscos de erro humano e vulnerabilidades baseadas em identidade. Para saber mais sobre entidades de serviço, confira Objetos de aplicativo e entidade de serviço no Microsoft Entra ID.

Pré-requisitos

  1. Criar uma entidade de serviço, atribuir funções e criar segredos usando o Azure.

  2. Verifique se o administrador de locatários pode habilitar Entidades de serviço podem usar APIs do Fabric no portal de administração do Fabric.

  3. Verifique se um usuário com a função de workspace de Administrador pode conceder acesso a um SPN por meio de Gerenciar o acesso no Workspace.

    Captura de tela do portal do Fabric da janela pop-up Gerenciar acesso.

Criar e acessar armazéns por meio de APIs REST usando SPN

Usuários com a função de workspace de administrador, membro ou colaborador podem usar entidades de serviço para autenticação, para criar, atualizar, ler e excluir itens do Warehouse por meio das APIs REST do Fabric. Isso permite automatizar tarefas repetitivas, como provisionar ou gerenciar armazéns sem depender das credenciais do usuário.

Se você usar uma conta delegada ou uma identidade fixa (identidade do proprietário) para criar o armazém, o armazém usará essa credencial ao acessar o OneLake. Isso cria um problema quando o proprietário deixa a organização, pois o armazém deixará de funcionar. Para evitar isso, crie armazéns usando um SPN.

O Fabric também exige que o usuário entre a cada 30 dias para garantir que um token válido seja fornecido por motivos de segurança. Para um data warehouse, o proprietário precisa entrar no Fabric a cada 30 dias. Isso pode ser automatizado usando um SPN com a API de Lista.

Captura de tela de uma chamada POST da API do Fabric usando um SPN.

Os warehouses criados por um SPN usando APIs REST serão exibidos na exibição de lista de Workspace no portal do Fabric, com o nome do Proprietário como o SPN. Na imagem a seguir, uma captura de tela do workspace no portal do Fabric, "Aplicativo de teste da API Pública do Fabric", é o SPN que criou o Contoso Marketing Warehouse.

Captura de tela do portal do Fabric da lista de itens do workspace. Um warehouse é mostrado. Seu proprietário não é uma conta pessoal, e sim um SPN.

Conectar-se a aplicativos cliente usando SPN

Você pode se conectar aos warehouses do Fabric usando entidades de serviço com ferramentas como o SQL Server Management Studio (SSMS) 19 ou versões superiores.

  • Autenticação: Entidade de Serviço do Microsoft Entra
  • nome de usuário: ID do cliente do SPN (criada por meio do Azure na seção Pré-requisitos)
  • Senha: Segredo (criado por meio do Azure na seção Pré-requisitos)

Captura de tela de fazer login no Fabric usando um SPN no SSMS (SQL Server Management Studio).

Permissões do painel de controle

Os SPNs podem receber acesso a warehouses usando funções de workspace por meio de Gerenciar o acesso no workspace. Além disso, os warehouses podem ser compartilhados com um SPN por meio do portal do Fabric usando as Permissões de Item.

Permissões do plano de dados

Depois que os warehouses recebem permissões de painel de controle para um SPN por meio de funções de workspace ou permissões de item, os administradores podem usar comandos T-SQL, como GRANT, para atribuir permissões do plano de dados específicas às entidades de serviço, para controlar precisamente a quais metadados/dados e operações um SPN tem acesso. É recomendável seguir o princípio do privilégio mínimo.

Por exemplo:

GRANT SELECT ON <table name> TO <service principal name>;

Depois que as permissões são concedidas, os SPNs podem se conectar a ferramentas de aplicativo cliente, como o SSMS, fornecendo assim acesso seguro para os desenvolvedores executarem COPY INTO (com e sem o armazenamento habilitado para firewall) e também para executar qualquer consulta T-SQL programaticamente segundo um agendamento com pipelines do Data Factory.

Captura de tela de uma consulta e resulta no SSMS (SQL Server Management Studio), em que o usuário acessou um objeto de Armazenamento do Azure usando o SPN.

Monitorar

Quando um SPN executa consultas no warehouse, há várias ferramentas de monitoramento que fornecem visibilidade para o usuário ou SPN que executou a consulta. Você pode encontrar o usuário para a atividade de consulta das seguintes maneiras:

Para obter mais informações, confira Monitorar o data warehouse do Fabric.

API de tomada de controle

A propriedade de armazéns pode ser alterada de um SPN para um usuário e de um usuário para um SPN.

  • Tomada de controle de SPN ou usuário para usuário: confira Alterar a propriedade do warehouse do Fabric.

  • Tomada de controle de SPN ou usuário para SPN: use uma chamada POST na API REST.

    POST <PowerBI Global Service FQDN>/v1.0/myorg/groups/{workspaceid}/datawarehouses/{warehouseid}/takeover
    

Limitações

Limitações das entidades de serviço do Data Warehouse do Microsoft Fabric:

  • Não há suporte para modelos semânticos padrão para warehouses criados por SPN e, como resultado, recursos como listar tabelas no modo de exibição de conjunto de dados, criar relatório do conjunto de dados padrão não funcionará.
  • Atualmente, não há suporte para a entidade de serviço para pontos de extremidade de análise SQL.
  • Atualmente, não há suporte para credenciais do Entra ID ou entidade de serviço com arquivos de erro de COPY INTO.
  • Não há suporte para entidades de serviço em APIs Git. O suporte para SPN existe apenas para APIs do pipeline de implantação.