Extensão

Access Control

Conceda acesso granular ao schema (com base no usuário estar conectado, ter algum papel ou capacidade, ou por IP), para gerenciar quem pode acessar quais dados.

Logo
Target Image

Click to watch tutorial video - 08:04

Defina Listas de Controle de Acesso para gerenciar o acesso granular à API para seus usuários.

Listas de Controle de Acesso

Esta extensão nos permite criar Listas de Controle de Acesso, para gerenciar quem pode acessar os diferentes elementos (operações, campos e directives) do schema GraphQL, usando as seguintes regras:

  • Desabilitar o acesso
  • Conceder acesso somente se o usuário estiver conectado ou desconectado
  • Conceder acesso somente se o usuário tiver algum papel
  • Conceder acesso somente se o usuário tiver alguma capacidade
  • Conceder acesso somente se o visitante vier de um IP permitido
Editor da Lista de Controle de Acesso
Editor da Lista de Controle de Acesso

Indicamos quais regras devem ser satisfeitas para acessar quais elementos do schema, entre operações, campos, campos globais e directives.

Ao executar uma query GraphQL, se ela contiver algum dos elementos do schema selecionados na Lista de Controle de Acesso, as regras escolhidas serão avaliadas.

Se alguma regra não for satisfeita, o acesso a essa operação, campo ou directive será negado.

Modo de Schema Público/Privado

Quando o acesso a um campo ou directive é negado por meio do Controle de Acesso, há 2 maneiras de a API se comportar:

Modo público: Os campos no schema são expostos e, quando a permissão não é satisfeita, o usuário recebe uma mensagem de erro com uma descrição do motivo pelo qual a permissão foi rejeitada. Esse comportamento torna os metadados do schema sempre disponíveis.

Modo privado: O schema é personalizado para cada usuário, contendo apenas os campos disponíveis para ele ou ela, e assim, ao tentar acessar um campo proibido, a mensagem de erro informa que o campo não existe. Esse comportamento expõe os metadados do schema apenas para os usuários que podem acessá-los.

Modo de schema público/privado individual

Por exemplo, no modo público, podemos obter esta resposta:

{
  "errors": [
    {
      "message": "You must have role 'author' to access field 'title' for type 'Post'",
      "locations": [
        {
          "line": 86,
          "column": 3
        }
      ]
    }
  ]
}

Enquanto no modo privado podemos obter esta resposta:

{
  "errors": [
    {
      "message": "There is no field 'title' on type 'Post'",
      "locations": [
        {
          "line": 86,
          "column": 3
        }
      ]
    }
  ]
}

Comprar pacote All-Inclusive

Pessoal
$79
/ano
“All-Inclusive” pacote
Licença para 1 domínio
Comprar ->
  • 1 domínio
  • Suporte
  • Atualizações do produto
Organização
$99
/ano
“All-Inclusive” pacote
Licença para 3 domínios
Comprar ->
  • 3 domínios
  • Suporte
  • Atualizações do produto
Profissional
$199
/ano
“All-Inclusive” pacote
Licença para 10 domínios
Comprar ->
  • 10 domínios
  • Suporte
  • Atualizações do produto

A licença é válida por 1 ano (renovável a cada ano). Os preços estão em USD.

Precisa de mais domínios? Fale conosco

Garantia de reembolso de 30 dias

Adquira qualquer extensão com a confiança de que você pode solicitar um reembolso

Testimonial image

“Este plugin é de outro nível! Leva seu site a um patamar completamente novo e o transforma em uma máquina poderosa. Quanto mais você explora o que ele pode fazer, mais impressionado você fica. Se você está em dúvida — é só pegar, você vai se arrepender se não pegar! A documentação fala por si mesma e é sólida como poucas. Leo (o desenvolvedor) é um dos desenvolvedores mais brilhantes e antenados que já conheci. É super responsivo e claramente sabe do que está falando. Estou sinceramente empolgado com tudo que este plugin consegue fazer. As possibilidades são praticamente infinitas e, se SEO é importante para você, essa ferramenta vai ajudar seu site a ranquear forte.”

olmate - Desenvolvedor web

Assine nossa newsletter

Fique por dentro de todas as atualizações do Gato GraphQL.