Руководство пользователя для разработчиков

Руководство пользователя для разработчиков

Авторизация для представлений Epsilon Metrics

С помощью Epsilon Metrics Auth API можно создавать API-ключи не только для таблиц в Epsilon Metrics (так называемые наборы данных), но и для представлений в Epsilon Metrics.

Epsilon Metrics использует PostgreSQL в качестве базы данных для хранения ваших наборов данных, поэтому вы можете создать представление в Epsilon Metrics так же, как это делается в PostgreSQL. Мы рекомендуем ознакомиться с этим разделом документации PostgreSQL, если хотите узнать больше о том, как создаются представления в PostgreSQL.

В чем преимущество использования представления с Epsilon Metrics Auth API? Чтобы ответить на этот вопрос, допустим, что у вас есть набор данных в Epsilon Metrics, и вы хотите ограничить часть информации из вашего набора данных при публикации карты или использовании SQL API. Например, у вас может быть набор данных с названием clients с приватной конфиденциальностью, и вы хотите построить карту только с клиентами из района Нью-Йорка. Вы можете создать представление, как показано в следующем блоке кода:

CREATE VIEW clients_nyc AS (
    SELECT * FROM clients WHERE area = 'NY'
);

Теперь вам нужно будет использовать Auth API для создания API-ключа для представления с полезной нагрузкой, которая устанавливает разрешения нового API-ключа, который будет создан. В этом примере мы предоставляем разрешение только на чтение или выбор нашему представлению, чтобы оно было доступно только при использовании API-ключа с Epsilon Metrics Maps API.

{
  "name": "Clients-NYC",
  "grants": [
    {
      "type": "apis",
      "apis": [
        "maps"
      ]
    },
    {
      "type": "database",
      "tables": [
        {
          "schema": "public",
          "name": "clients_nyc",
          "permissions": [
            "select"
          ]
        }
      ]
    }
  ]
}

Если вы попытаетесь получить доступ к данным этого представления с помощью Epsilon Metrics SQL API, вы получите ошибку “запрещено”, потому что этот API-ключ не имеет разрешений для доступа с использованием Epsilon Metrics SQL API.

Таким образом, создавая API-ключи для представлений в Epsilon Metrics с использованием Auth API, мы можем отображать частичную информацию, которую хотим, и одновременно сохранять конфиденциальность наших данных.