Migrar GraphQL para a rede de distribuição de dados Hasura
Nesta página
- Antes de começar
- Migrar para Hasura
- Autorizar Hasura para MongoDB
- Crie um novo projeto e conecte-se ao Hasura
- Teste suas queries do GraphQL
- Autorização e autenticação
- Configurar resolvedores personalizados ou lógica de negócios
- Atualizar aplicativos do cliente
- Desligue os endpoints do MongoDB Atlas App Services
Importante
Consulte sempre a documentação oficial do MongoDB Atlas e do Hasura para obter as informações mais atualizadas e precisas. Etapas específicas podem variar dependendo dos detalhes do seu projeto e das tecnologias utilizadas.
A Hasura capacita os desenvolvedores a criar e implantar rapidamente APIs GraphQL e REST no MongoDB e muitas outras fontes de dados . Ao reduzir radicalmente o tempo de desenvolvimento de API , o Hasura permite o acesso rápido aos dados, reduz o conflito entre equipes e serviços e permite que as empresas reduzam o tempo de lançamento no mercado de produtos e recursos baseados em dados.
Antes de começar
Crie uma conta no site da Hasura cloud.hasura.io.
Migrar para Hasura
A migração dos seus pontos de conexão da GraphQL API do MongoDB Atlas App Services para o Hasura é um processo de várias etapas que envolve a configuração do seu ambiente no Hasura, a configuração de conexões de banco de dados de dados, a migração de esquemas e a implementação de mecanismos de autorização e autenticação. Abaixo está um guia expandido detalhando cada etapa, com foco em autorização e controle de acesso baseado em função (RBAC) dentro do Hasura. Para obter mais informações, consulte o Hasura Docs.
Para migrar para Hasura:
Autorizar Hasura para MongoDB
O Hasura pode se conectar a um banco de dados MongoDB Atlas novo ou existente e gerar a API GraphQL para você.
Go para cloud.mongodb.com
e navegue até a página Acesso à Rede no painel do Atlas .
Clique no botão ADD IP ADDRESS e insira 0.0.0.0/0
. Descreva esta entrada como Hasura. Para obter um endereço IP exclusivo, entre em contato com o departamento de vendas da Hasura sobre a implantação no Private DDN.
Agora o Hasura Cloud pode se comunicar com sua instância do MongoDB Atlas.
Na página Banco de dados, localize o cluster Atlas que está conectado ao seu App Services App e clique em Connect. Selecione a opção Drivers e copie a connection string.
Crie um novo projeto e conecte-se ao Hasura
Os Hasura Docs contém os detalhes para executar as seguintes etapas:
Instalar CLI (Pré-requisitos)
Faça login usando a CLI
Inicialize um novo supergrafo em um diretório vazio
Conecte-se aos dados
Introspecção sua fonte de dados
Construa seu supergraph local
Comece seu supergraph
Criar um projeto no Hasura cloud
Crie e implemente seu supergraph
Teste suas queries do GraphQL
Você pode usar a página API Explorer no Console Hasura para testar algumas queries GraphQL.
O Hasura também usa a interface GrafiQL, que é semelhante a como você testa queries no Atlas App Services.
Autorização e autenticação
A Hasura não lida diretamente com a autenticação. Em vez disso, ele depende de variáveis de sessão fornecidas por um serviço de autenticação externo. Essas variáveis de sessão incluem informações do usuário, função e organização cruciais para determinar os direitos de acesso aos dados. Para obter detalhes, consulte a Documentação de Autenticação Docs
As permissões de acesso a dados, incluindo roles e expressões de regra, podem ser convertidas em regras de permissão baseadas em roles Hasura.
Todos os métodos de autenticação fornecidos pelo Atlas são compatíveis com os métodos de autenticação Webhook e JSON web token da Hasura. Se você estiver usando a autenticação por e-mail/senha, anônima ou de chave de API, use o Hasura Webhook. Se você estiver usando um JSON web token personalizado, integre-se diretamente ao método de autenticação do JSON web token da Hasura.
A Hasura recomenda o uso de um IdP externo para gerenciar processos de autenticação para maior segurança e flexibilidade. Você pode integrar o Hasura a qualquer fornecedor de autenticação de sua escolha, como Auth0, Firebase Auth, Amazon Web Services Cognose ou até mesmo uma solução personalizada para verificar o usuário e definir as variáveis de sessão necessárias. Para configurar o JSON web token ou a autenticação do webhook no Hasura, consulte a documentação em:
Configurar resolvedores personalizados ou lógica de negócios
Se os endpoints da GraphQL API existentes incluírem resolvedores personalizados ou lógica de negócios, você precisará implementá-los no Hasura. O Hasura suporta:
Esquemas remotos por meio do GraphQL Connector
Queries personalizadas por meio dequeries nativas para o MongoDB
Mutações personalizadas por meio de mutações nativas para o MongoDB
Atualizar aplicativos do cliente
Atualize todos os aplicativos cliente que interagem com seus pontos de GraphQL API para ponto para as novas URLs dos pontos de conexão Hasura. Qualquer cliente Apollo existente funcionará com o Hasura. Refatore as queries e mutações do GraphQL do aplicação para se alinhar com a sintaxe e o esquema do Hasura, garantindo a compatibilidade com a nova estrutura da GraphQL API .
Desligue os endpoints do MongoDB Atlas App Services
Depois de verificar se os pontos de conexão da GraphQL API estão totalmente migrados e operacionais no Hasura, você pode excluir seu aplicativo MongoDB Atlas App Services para evitar custos desnecessários. Lembre-se de que os endpoints do Atlas GraphQL não serão mais suportados a partir de 30 de setembro de 2025.