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

Включение настраиваемого визуального элемента

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

Что необходимо учитывать перед включением настраиваемого визуального элемента

Внимание!

Пользовательский визуальный элемент может содержать код, подвергающий риску безопасность или конфиденциальность, поэтому такой элемент в отчете отключен до тех пор, пока не будет выбран параметр "Включить пользовательские визуальные элементы". Ниже приведены некоторые рекомендации, помогающие решить, следует ли включать пользовательский визуальный элемент:

  1. Убедитесь, что вы доверяете автору и источнику пользовательских визуальных элементов, используемых в отчете.

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

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

Рекомендации по безопасности для ИТ-специалистов, связанные с включением пользовательского визуального элемента

Внимание!

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

  1. Реализуйте процесс проверки для пользовательских визуальных элементов в пределах организации. Проверенные пользовательские визуальные элементы следует предоставлять для общего доступа внутренним пользователям через внутренний веб-сайт, например библиотеку документов SharePoint или документ OneNote.
  2. Составьте инструкции для бизнес-пользователей о надлежащем использовании пользовательских визуальных элементов, а также создайте группу электронной почты, куда бизнес-пользователи могут направлять вопросы, связанные с безопасностью и конфиденциальностью.
  3. Оцените код JavaScript в PBIVIZ-файле пользовательского визуального элемента.

Оценка кода JavaScript в пользовательском визуальном элементе

Пользовательский визуальный элемент использует JavaScript и поэтому может подвергать риску безопасность или конфиденциальность. Если вы получаете пользовательский визуальный элемент или PBIX-файл с пользовательским визуальным элементом из неизвестного источника, рекомендуется проанализировать его код JavaScript для подтверждения его безопасности.

Чтобы оценить код JavaScript в пользовательском визуальном элементе, извлеките код этого пользовательского визуального элемента. Вот как это можно сделать:

  1. Сохраните PBIVIZ-файл в папке.

  2. Переименуйте файл в ZIP-файл.

  3. Извлеките ZIP-файл в локальную папку.

Содержимое файла пользовательского визуального элемента

Ниже приведено содержимое PBIVIZ-файла.

Файл Описание
./package.json Файл манифеста, который указывает, какие файлы требуется загружать для данного пользовательского визуального элемента.
./resources Содержит код CSS, TypeScript и JavaScript, используемый пользовательским визуальным элементом.
./resources/<name> <name> — это имя пользовательского визуального элемента.
./resources/<name>.css Файл ресурсов css для пользовательского визуального элемента.
./resources/<name>.js Код, который выполняется, когда пользователь щелкает Enable custom visuals (Включить пользовательские визуальные элементы) или выполняет импорт пользовательского визуального элемента. Предупреждение. Код JavaScript может подвергать риску безопасность или конфиденциальность.
./resources/<name>.ts Исходный код JavaScript для визуального элемента в формате TypeScript. Предупреждение. Код JavaScript или TypeScript может подвергать риску безопасность или конфиденциальность.
./resources/<name>.png Значок, отображаемый пользователю для данного визуального элемента.

После извлечения PBIVIZ-файла вы можете оценить код. Ниже приведены некоторые рекомендации и угрозы, на которые следует обратить внимание.

Рекомендации по оценке кода JavaScript или TypeScript

Код JavaScript или TypeScript может подвергать риску безопасность или конфиденциальность. Ниже приведены некоторые рекомендации и угрозы, на которые следует обратить внимание.

Рекомендации по оценке кода JavaScript

  • Всегда проверяйте содержимое JS-файла. Это тот код, который выполняется непосредственно. Возможно, что содержимое TS-файла не компилируется в JS-файл входящий в состав пользовательского визуального элемента.

  • Всегда проверяйте содержимое TS-файла. Можно загрузить TS-файл в средства разработчика, экспортировать визуальный элемент и сравнить полученный JS-файл в недавно созданном PBIVIZ-файле с исходным JS-файлом, содержащимся в визуальном элементе.

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

  • Всегда проверяйте визуальный элемент в тестовой учетной записи с минимальными привилегиями, которая не имеет доступа к конфиденциальным данным. Оптимальной тестовой учетной записью является локальная учетная запись, располагающая сведениями для входа только в службу Power BI.

Угрозы для поиска в коде JavaScript

  • Проверьте сетевую активность при использовании визуального элемента в режимах редактирования и просмотра. Убедитесь, что вы удовлетворены выполняемыми запросами. Запросы к ресурсам за пределами домена Power BI должны отсутствовать, если только автор визуального элемента заранее не сообщил об обратном.

  • Любые данные, покидающие домен Power BI, должны соответствовать ожидаемому "нормальному" режиму работы. Например, если визуальный элемент реализует видеопроигрыватель, который использует интерфейс iFrame для просмотра видео с другого сайта, для правильного воспроизведения видео некоторые сведения должны передаваться в запросах IFrame. Однако если вы видите, что передаются все данные, следует дополнительно изучить такую ситуацию на соответствие требованиям.

  • Проверьте, осуществляет ли пользовательский визуальный элемент передачу или сохранение личных сведений.

  • Проверьте, пытается ли пользовательский визуальный элемент получить доступ к ресурсам локального компьютера, например путем записи файлов на диск или обращения к файлам cookie.

  • Проверьте пользовательский визуальный элемент на наличие запутанного кода или кода, не имеющего четкого назначения.

  • Сохраняйте копии всех проанализированных в прошлом визуальных элементов.

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

  • Если вы нашли что-то подозрительное или непонятное, сообщите об этом нам.

См. также:

Визуализации в Power BI
Пользовательские визуализации в Power BI
Коллекция пользовательских визуальных элементов Power BI
Добавление пользовательских визуализаций в отчет (Power BI Desktop)
Добавление пользовательских визуализаций в отчет (служба Power BI)
Скачивание пользовательских визуализаций из коллекции
Создание визуализации и ее отправка в коллекцию
Приступая к работе со средствами разработчика для пользовательских визуальных элементов (предварительная версия)
Видео. Создание пользовательских визуализаций для Power BI вместе с Сачином Пэтни (Sachin Patney) и Нико Кристаш (Nico Cristache)
Появились дополнительные вопросы? Ответы на них см. в сообществе Power BI.