Расширение

Access Control

Предоставляйте детальный доступ к схеме (в зависимости от того, авторизован ли пользователь, имеет ли он роль или права, либо по IP), чтобы управлять тем, кто и к каким данным может получить доступ.

Logo
Target Image

Click to watch tutorial video - 08:04

Определяйте списки контроля доступа для управления детальным доступом к API для ваших пользователей.

Списки контроля доступа

Это расширение позволяет нам создавать списки контроля доступа, чтобы управлять тем, кто может обращаться к различным элементам (операциям, полям и директивам) схемы GraphQL, используя следующие правила:

  • Запретить доступ
  • Предоставить доступ только если пользователь авторизован или нет
  • Предоставить доступ только если пользователь имеет определённую роль
  • Предоставить доступ только если пользователь имеет определённые права
  • Предоставить доступ только если посетитель приходит с разрешённого IP
Редактор списка контроля доступа
Редактор списка контроля доступа

Мы указываем, какие правила должны быть выполнены для доступа к каким элементам схемы — из числа операций, полей, глобальных полей и директив.

При выполнении GraphQL-запроса, если он содержит какой-либо из выбранных элементов схемы из списка контроля доступа, выбранные правила оцениваются.

Если какое-либо правило не выполняется, доступ к данной операции, полю или директиве запрещается.

Режим публичной/приватной схемы

Когда доступ к полю или директиве запрещён через контроль доступа, API может вести себя двумя способами:

Публичный режим: Поля схемы открыты, и когда разрешение не выполняется, пользователь получает сообщение об ошибке с описанием причины отказа. Такое поведение делает метаданные схемы всегда доступными.

Приватный режим: Схема настраивается индивидуально для каждого пользователя, содержа только те поля, которые доступны ему, и поэтому при попытке обратиться к запрещённому полю сообщение об ошибке говорит, что поле не существует. Такое поведение открывает метаданные схемы только тем пользователям, которые имеют к ним доступ.

Индивидуальный публичный/приватный режим схемы

Например, в публичном режиме мы можем получить такой ответ:

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

Тогда как в приватном режиме мы можем получить такой ответ:

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

Купить пакет All-Inclusive

Личный
$79
/год
“All-Inclusive” пакет
Лицензия на 1 домен
Купить ->
  • 1 домен
  • Поддержка
  • Обновления продукта
Организация
$99
/год
“All-Inclusive” пакет
Лицензия на 3 доменов
Купить ->
  • 3 доменов
  • Поддержка
  • Обновления продукта
Профессиональный
$199
/год
“All-Inclusive” пакет
Лицензия на 10 доменов
Купить ->
  • 10 доменов
  • Поддержка
  • Обновления продукта

Лицензия на 1 год (ежегодное продление). Цены в USD.

Нужно больше доменов? Свяжитесь с нами

Гарантия возврата денег в течение 30 дней

Покупайте любое расширение с уверенностью, что можете запросить возврат средств

Testimonial image

“Этот плагин — следующий уровень! Он выводит ваш сайт на совершенно новую орбиту и превращает его в настоящую машину. Чем больше вы исследуете его возможности, тем сильнее будете удивлены. Если сомневаетесь — просто берите: потом будете жалеть, что не взяли раньше! Документация говорит сама за себя и сделана на совесть. Лео (разработчик) — один из самых острых и сообразительных специалистов, с которыми мне приходилось иметь дело. Отвечает молниеносно и явно знает своё дело. Честно говоря, я в восторге от того, на что способен этот плагин. Возможности практически безграничны, и если вам важно SEO — этот инструмент поможет вашему сайту занять высокие позиции.”

olmate - Веб-разработчик

Подпишитесь на нашу рассылку

Будьте в курсе всех обновлений Gato GraphQL.