Criar uma API para o GraphQL no Fabric e adicionar dados
Comece a usar a API de malha para GraphQL criando uma API e, em seguida, vinculando uma fonte de dados para expor os dados escolhidos por meio da API. O Fabric cria o esquema GraphQL automaticamente com base em seus dados, e os aplicativos estão prontos para se conectar em minutos.
Pré-requisitos
- Habilite a Configuração de administrador de locatário "Os usuários podem criar itens de malha".
Criando uma API para o GraphQL
Para criar uma API para o GraphQL:
Na página inicial do portal do Fabric, selecione Engenharia de dados na lista de cargas de trabalho.
Selecione API para GraphQL (visualização).
Como alternativa, selecione Nova>API para GraphQL (Visualização) em qualquer espaço de trabalho em Engenharia de Dados.
Insira um Nome para o item e selecione Criar.
Agora você tem uma API totalmente funcional para acessar seus dados no Fabric.
Conectar-se a uma fonte de dados e criar seu esquema
Neste ponto, a API está pronta, mas não está expondo nenhum dado. APIs para GraphQL são definidas em um esquema organizado em termos de tipos e campos, em um sistema fortemente tipado. O Fabric gera automaticamente o esquema GraphQL necessário com base nos dados que você escolhe expor aos clientes GraphQL.
Na nova API, escolha uma fonte de dados para expor escolhendo Selecionar fonte de dados.
Em seguida, selecione a opção de conectividade para sua API:
Aqui você pode definir como os clientes de API podem acessar a API para executar solicitações GraphQL com base em duas opções distintas:
- Logon único (SSO): use credenciais de cliente para se conectar a fontes de dados, o que significa que o usuário autenticado da API deve ter acesso à fonte de dados subjacente. Por exemplo, se você estiver expondo dados do Lakehouse para seus clientes de API, o usuário autenticado precisará ter acesso à API e ao Lakehouse. Mais especificamente , permissões de execução para a API GraphQL (opção Executar consultas e mutações ao adicionar permissões de acesso direto) e permissões de leitura ou gravação necessárias na fonte de dados de escolha de acordo. Como alternativa, o usuário pode ser adicionado como membro do espaço de trabalho com uma função de colaborador onde os itens da API e da fonte de dados estão localizados, o que dará o acesso necessário a ambos os itens de um único local. Para obter mais informações, consulte Conceder aos usuários acesso a espaços de trabalho.
- Credenciais salvas: use credenciais salvas para se conectar a fontes de dados, o que significa que o usuário autenticado da API não precisa de acesso direto à fonte de dados. Uma credencial salva é compartilhada para acessar os dados entre a API e as tabelas subjacentes na fonte de dados. Por exemplo, se você estiver expondo dados do Lakehouse para seus clientes de API, o usuário autenticado só precisa ter acesso direto à API (opção Executar consultas e mutações ao adicionar permissões de acesso direto) e não ao Lakehouse. Uma credencial salva é usada para conectar a API à fonte de dados e é compartilhada por todos os usuários autenticados da API. Essa opção é necessária se você estiver expondo uma fonte de dados do Azure, como um banco de dados SQL do Azure por meio do GraphQL. Depois de selecionar OK, você será solicitado a criar uma nova credencial salva depois de escolher uma fonte de dados na próxima etapa, se não houver uma credencial salva para ela já em vigor.
Uma vez selecionadas, essas opções são impostas para todas as fontes de dados adicionadas posteriormente à API. Não é possível misturar logon único e credenciais salvas na mesma API. Além disso, embora você possa usar UPNs (Nomes Principais de Usuário) ou SPNs (Nomes de Entidade de Serviço) para se conectar à sua API, as entidades de serviço oferecem suporte apenas ao logon único (SSO) atualmente. As entidades de usuário podem aproveitar o SSO ou as credenciais salvas, dependendo dos seus requisitos de segurança.
Nota
A API para GraphQL requer que os aplicativos cliente usem o Microsoft Entra para autenticação. Seu aplicativo cliente deve ser registrado e configurado adequadamente para executar chamadas de API no Fabric. O aplicativo registrado no Microsoft Entra requer permissões de API Item.Execute.All para o serviço do Power BI. Você pode encontrar um tutorial completo com instruções e código de exemplo para entidades de usuário e entidades de serviço em Connect Applications.
O hub de dados OneLake é exibido; Escolha a fonte de dados à qual deseja se conectar. Para o exemplo a seguir, escolhemos um ponto de extremidade de análise SQL da AdventureWorks vinculado a um banco de dados espelhado. Selecione Filtrar para ver apenas tipos específicos de fontes de dados do Fabric ou pesquise por uma palavra-chave específica. Quando estiver pronto, selecione Conectar.
A tela Obter dados é exibida, onde você pode escolher quais objetos deseja expor em seu esquema GraphQL.
Marque as caixas de seleção ao lado das tabelas individuais ou procedimentos armazenados que você deseja expor na API. Para selecionar todos os objetos em uma pasta, marque a caixa de seleção com o nome da fonte de dados na parte superior.
Selecione Carregar para iniciar o processo de geração do esquema GraphQL.
O esquema é gerado e você pode começar a prototipar consultas GraphQL (ler, listar) ou mutações (criar, atualizar, excluir) para interagir com seus dados.
Sua API para GraphQL agora está pronta para aceitar conexões e solicitações. Você pode usar o editor de API para testar e prototipar consultas GraphQL e o explorador de esquema para verificar os tipos de dados e campos expostos na API.
Resumo das permissões
A tabela abaixo resume as diferentes permutações suportadas e as permissões mínimas necessárias para clientes que acessam a API do GraphQL:
Chamador de API | Conectividade da origem de dados | Permissões necessárias da API do GraphQL | Permissões de fonte de dados necessárias | Entra no escopo do aplicativo |
---|---|---|---|---|
Usuário Principal (UPN) | Início de sessão único (SSO) | Executar consultas e mutações no nível da API | Permissões apropriadas de leitura/gravação concedidas ao UPN na fonte de dados | Item.Execute.All |
Entidade de Serviço (SPN) | Início de sessão único (SSO) | Executar consultas e mutações no nível da API | Permissões apropriadas de leitura/gravação concedidas ao SPN na fonte de dados | Item.Execute.All |
Usuário Principal (UPN) | Credenciais salvas | Executar consultas e mutações no nível da API | Permissões apropriadas de leitura/gravação concedidas à credencial salva (conexão) na fonte de dados | Item.Execute.All |
Entidade de Serviço (SPN) | Credenciais salvas | Atualmente não suportado | Atualmente não suportado | Atualmente não suportado |