Principal de serviço no Fabric Data Warehouse
Aplica-se a:✅ Armazém no Microsoft Fabric
Uma principal de serviço do Azure (SPN) é 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 de usuário, as entidades de serviço são identidades não interativas baseadas em aplicativos 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 às 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, consulte Objetos de entidade de aplicativo e serviço no Microsoft Entra ID.
Pré-requisitos
Crie uma entidade de serviço, atribua perfis e crie secretos usando o Azure.
Verifique se o administrador do locatário pode habilitar As entidades de serviço podem usar APIs de malha no portal de administração da malha.
Certifique-se de que um utilizador com a função de Administrador do espaço de trabalho possa conceder acesso a um SPN através de Gerir acesso no espaço de trabalho.
Criar e acessar armazéns por meio de APIs REST usando SPN
Os utilizadores com a função de administrador, membro ou colaborador no espaço de trabalho podem utilizar principais de serviço para autenticação a fim de criar, atualizar, ler e eliminar itens do Warehouse através das APIs REST do Fabric . Isso permite automatizar tarefas repetitivas, como provisionamento ou gerenciamento de armazéns, sem depender das credenciais do usuário.
Se você usar uma conta delegada ou identidade fixa (identidade do proprietário) para criar o depósito, o depósito usará essa credencial ao acessar o OneLake. Isso cria um problema quando o proprietário deixa a organização, porque o armazém vai parar de funcionar. Para evitar isso, crie armazéns usando um SPN.
O Fabric também exige que o usuário faça login 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 List API.
Os armazéns criados por um SPN usando APIs REST serão exibidos na visualização em lista do espaço de trabalho no portal Fabric, com o nome do proprietário como SPN. Na imagem a seguir, uma captura de tela do espaço de trabalho no portal do Fabric, "Fabric Public API test app" é o SPN que criou o Contoso Marketing Warehouse.
Conectar-se a aplicativos cliente usando SPN
Você pode ligar-se a armazéns do Fabric usando princípios de serviço com ferramentas como o SQL Server Management Studio (SSMS) 19 ou versões mais recentes.
- Autenticação: Microsoft Entra Service Principal
- Nome de utilizador: ID do Cliente do SPN (criado através do Azure na secção Pré-requisitos)
- Password: Secret (criado através do Azure na secção Pré-requisitos)
Permissões do plano de controle
Os SPNs podem receber acesso a armazéns utilizando funções de espaço de trabalho através de Gerir acesso no espaço de trabalho. Além disso, os armazéns podem ser partilhados com um SPN através do portal Fabric utilizando Permissões de Item.
Permissões do plano de dados
Depois que os armazéns recebem permissões de plano de controle para um SPN por meio de funções de espaço de trabalho ou permissões de Item, os administradores podem usar comandos T-SQL, como GRANT
, para atribuir permissões específicas de plano de dados a entidades de serviço, para controlar com precisão a quais metadados/dados e operações um SPN tem acesso. Recomenda-se seguir o princípio do menor privilégio.
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 acesso seguro para que os desenvolvedores executem COPY INTO (com armazenamento compatível ou incompatível com firewall) e também executem programaticamente qualquer consulta T-SQL de acordo com um cronograma com pipelines do Data Factory.
Monitorização
Quando um SPN executa consultas no armazém, há várias ferramentas de monitorização que fornecem visibilidade sobre o utilizador ou SPN que executou a consulta. Você pode encontrar o usuário para a atividade de consulta das seguintes maneiras:
-
Visualizações de Gestão Dinâmica (DMVs): coluna
login_name
emsys.dm_exec_sessions
. -
Query Insights:
login_name
coluna noqueryinsights.exec_requests_history
modo de visualização. -
Atividade de consulta:
submitter
coluna na atividade de consulta do Fabric. - Aplicativo de métricas de capacidade: O cálculo do uso para operações de armazém executadas pelo SPN aparece como a ID do Cliente na coluna Utilizador na tabela de análise detalhada de operações em segundo plano.
Para obter mais informações, consulte Monitor Fabric Data warehouse.
API de assunção de controle
A propriedade dos armazéns pode ser alterada de um SPN para um usuário e de um usuário para um SPN.
Transferência de controlo do SPN ou de utilizador para utilizador: Consulte Alterar a propriedade do Fabric Warehouse.
Transferência de SPN ou usuário para SPN: utilize 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 com o Microsoft Fabric Data Warehouse:
- Não há suporte para modelos semânticos padrão para armazéns criados pelo SPN e, como resultado, recursos como listar tabelas no modo de exibição de conjunto de dados, criar relatório a partir do conjunto de dados padrão não funcionarão.
- A service principal para endpoints de análise SQL não é atualmente suportada.
- A entidade de serviço ou as credenciais do Entra ID não são suportadas atualmente para arquivos de erro COPY INTO.
- As entidades de serviço não são suportadas para Git APIs. O suporte a SPN existe apenas para APIs de pipeline de implantação .