Название: Статическое встраивание Перенаправлено с :

  • /docs/latest/embedding/signed-embedding


Статическое встраивание

Также известно как: автономное встраивание или подписанное встраивание.

В общем, встраивание работает путем отображения URL-адреса Glarus BI внутри iframe на вашем сайте. Статическое встраивание (или подписанное встраивание) — это iframe, который загружает URL-адрес Glarus BI, защищенный подписанным JSON Web Token (JWT). Glarus BI загрузит URL-адрес только в том случае, если запрос предоставит JWT, подписанный с секретом, общим для вашего приложения и вашей Glarus BI. JWT также включает ссылку на ресурс для загрузки, например, идентификатор панели управления и любые значения для заблокированных параметров.

Вы можете использовать статическое встраивание с песочницей данных, drill-through, и пользовательские данные не ловятся в использовании аналитики поскольку подписанные JWT не создают сеансы пользователей (сеансы на стороне сервера). Для этих функций ознакомьтесь с интерактивным встраиванием.

Однако вы можете ограничить данные в статических вставках для определенных людей или групп с помощью блокировки параметров.

Как работает статическое встраивание

Если вы хотите настроить интерактивные фильтры Glarus BI в вашем iframe, ваш веб-сервер должен будет делать запросы к Glarus BI для обновления данных каждый раз, когда посетитель веб-сайта обновляет виджет фильтра.

Чтобы запросить обновленные данные из Glarus BI, ваш веб-сервер сгенерирует новый URL встраивания. Например, если посетитель веб-сайта вводит значение «true» во встроенный виджет фильтра, Ваш веб-сервер сгенерирует новый URL-адрес для встраивания с дополнительным параметром:

your_metabase_embedding_url?filter=true

Чтобы запретить людям редактировать URL-адрес внедрения для получения доступа к другим частям вашей Glarus BI ​​(например, изменив параметр на filter=company_secrets), ваш веб-сервер добавит подписанный JWT к новому URL-адресу встраивания:

your_metabase_embedding_url/your_signed_jwt?filter=true

Подписанный JWT генерируется с использованием вашего секретного ключа Glaris BI. Секретный ключ сообщает Glarus BI, что запрос на отфильтрованные данные можно доверять, поэтому можно безопасно отображать результаты по новому URL-адресу встраивания. Обратите внимание, что этот секретный ключ является общим для всех статических встраиваний, поэтому тот, у кого есть доступ к этому ключу, будет иметь доступ ко всем встроенным артефактам.

Если вы хотите встроить диаграммы с дополнительными интерактивными функциями, напримерdrill-down или запросы self-service, см. интерактивное встраивание.

Включение функции встраивания в Metabase

  1. Перейдите в Настройки > Настройки администратора > Встраивание.

  2. Включите Включить встраивание.

Создание встраиваемого запроса или дашборда

Чтобы создать статическое встраивание:

  1. Перейдите к запросу или дашборду, которые вы хотите встроить в свой веб-сайт.

  2. Нажмите на значок общего доступа. На дашбордах значок находится в правом верхнем углу. На запросах он находится в правом нижнем углу.

  3. Выберите Встроить.

  4. На карточке Статическое встраивание нажмите кнопку: Настроить.

  5. Необязательно: Предварительный просмотр внешнего вида вставки.

  6. Необязательно: Добавить параметры встраивания.

  7. Щелкайте Опубликовать.

Предварительный просмотр

Добавление URL-адреса встраивания на ваш сайт

URL-адрес встраивания для вопроса или панели управления — это URL-адрес Glarus BI, который будет отображаться в iframe вашего сайта. Он генерируется вашим веб-сервером с использованием вашего URL-адреса сайта Glarus BI, подписанный JWT, and параметры:

metabase_site_url/embed/question/your_jwt_token?parameter_name=value

Когда вы сделали запрос или дашборд встраиваемым, Вам необходимо будет разместить URL-адрес для встраивания на своем веб-сайте:

  1. Перейдите к запросу или дашборду > значок совместного доступа > Встроить.

  2. Внесите любые изменения и скопируйте код.

  3. Предварительный просмотр кода

  4. Добавьте код в код сервера, который создает ваш веб-сайт.

  5. Добавьте код интерфейса в код, который генерирует страницу, на которой вы хотите, чтобы отображался встроенный элемент.

Дополнительные примеры см. в нашем репозитории справочных приложений.

Предварительный просмотр кода для встраивания

  1. Перейдите к вопросу или панели инструментов > значок общего доступа > Встроить этот элемент в приложение.

  2. Нажмите Код.

  3. В верхнем блоке кода вы найдете пример кода для вашего веб-сервера. Вы также найдете фрагмент iframe для встраивания в ваш шаблон HTML или одностраничное приложение.

Когда вы вносите изменения в настройки стиля, внешнего вида или предварительного просмотра параметров, Glarus BI обновит код и выделит изменения. Обязательно скопируйте эти изменения в ваш фактический код сервера.

Примеры кода для встраивания

Glarus BI может генерировать код для:

  • Clojure

  • Node.js

  • Python

  • Ruby

Для ножниц iframe:

  • ERB

  • JSX

  • Mustache

  • Pug/Jade

Изменение запроса или дашборда

Вы можете изменить параметры вашего встроенного дашборда:

  1. Щелкайте Опубликовать снова.

  2. Обновить код на вашем сервере так, чтобы он соответствовал коду, сгенерированному Glarus BI (Code >высокий блок).

Отключение встраивания для запроса или дашборда

Вы можете найти список всех встраиваемых запросов или дашбордов в Настройки администратора > Встраивание.

  1. Перейдите к встраиваемому запросу или дашборду.

  2. Нажмите на значок общего доступа (квадрат со стрелкой, указывающей вверх справа).

  3. Выберите Встроить этот элемент в приложение.

  4. Нажмите Отменить публикацию.

Настройка внешнего вида статическиого встраивания

Вы можете изменить то, как выглядит встроенный запрос или дашборд в iframe (что не изменит его внешний вид в вашем экземпляре Glarus BI).

При настройке статической вставки щелкните вкладку Внешний вид и поэкспериментируйте с различными настройками внешнего вида.

Настройки включают:

  • Рамку

  • Название

  • Тема (светлая, темная, прозрачная)

  • Скачивание данных (questions only)*

Когда вы вносите изменения во внешний вид вставки, Glarus BI выделит изменения, внесенные в код.

Глобальные настройки внешнего вида, такие как цвета и шрифты, используемые во всем экземпляре Glarus BI, см. в Настройка внешнего вида Glarus BI.

Автоматическое обновление результатов встроенного дашборда

Автоматическое обновление доступно только для дашбордов, но не для вопросов.

Чтобы обновлять результаты дашборда с определенной частотой, можно параметризовать встроенный URL с помощью refresh. Например, чтобы настроить встроенный дашборд на обновление каждые 60 секунд, нужно добавить refresh=60 к URL.

Например, следующий код для создания URL-адреса iframe для дашборда будет отображать заголовок дашборда и обновлять его результаты каждые 60 секунд.

var iframeUrl =
  METABASE_SITE_URL + "/embed/dashboard/" + token + "#titled=true&refresh=60";

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

Повторная генерация статического секретного ключа встраивания

Ваш секретный ключ встраивания используется для подписи JWT для всех ваших URL-адресов встраивания.

  1. Перейдите в Настройки > Настройки администратора > Внедрение.

  2. На карточке Статическое встраивание нажмите Управление.

  3. В разделе Регенерировать секретный ключ нажмите Регенерировать ключ.

Этот ключ является общим для всех статических встраиваний. Тот, у кого есть доступ к этому ключу, может получить доступ ко всем встроенным артефактам, поэтому храните этот ключ в безопасности. Если вы регенерируете этот ключ, вам нужно будет обновить код сервера с помощью нового ключа.

Изменение размера дашборда для соответствия их содержимому

Дашборды имеют фиксированное соотношение сторон, поэтому, если вы хотите, чтобы они автоматически изменяли свой размер по вертикали для соответствия их содержимому, вы можете использовать iFrame Resizer script. Metabase serves a copy for convenience:

<script src="http://metabase.example.com/app/iframeResizer.js"></script>
<iframe src="http://metabase.example.com/embed/dashboard/TOKEN" onload="iFrameResize({}, this)"></iframe>

Пользовательские пункты назначения на дашбордах статического встраивания

Вы можете использовать только опцию URL для пользовательских пунктов назначения на дашбордах статического встраивания. Внешние URL-адреса будут открываться в новой вкладке или окне.

Еще почитать