Перейти к содержанию
Educora
Продвинутый20 мин8 / 10

Публикация, совместный доступ и управление: рабочие области, обновление, RLS

Опубликуй отчёт в Service, назначь роли рабочей области, различай отчёты и дашборды, настрой обновление по расписанию и шлюз, покажи каждому менеджеру только его город с помощью безопасности на уровне строк (RLS) и распространяй контент как приложение (app).

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

Отчёт Лейлы готов. Теперь три требования: менеджеры Баку, Гянджи и Сумгайыта должны видеть только свой город, а директор — всё; цифры должны обновляться каждое утро в 07:00 из SQL Server в офисе; а отчёт должен аккуратно дойти до сотни человек. Это работа Power BI Service — публикация, обновление, безопасность и совместный доступ.

Публикация и рабочие области

  1. 1
    Создай рабочую область

    В Service выбери Workspaces › New workspace и назови её «Sales Analytics». Личная My workspace только для тебя; для командной работы нужна отдельная рабочая область.

  2. 2
    Опубликуй

    В Desktop выбери Home › Publish › «Sales Analytics». В рабочей области появятся два элемента: семантическая модель и отчёт.

  3. 3
    Назначь роли

    В рабочей области выбери Manage access › добавь человека или группу и выбери роль: Admin, Member, Contributor или Viewer. Удобнее добавлять группы Microsoft Entra, а не отдельных людей.

РольОсновные возможности
Adminвсё: удалить рабочую область, добавлять и удалять любых пользователей
Memberсоздавать и изменять контент, публиковать и обновлять приложение, добавлять пользователей с ролями ниже
Contributorсоздавать, изменять и удалять контент, планировать обновление
Viewerтолько просматривать и взаимодействовать с визуальными элементами; RLS действует именно на эту роль
В рабочей области на общей ёмкости все возможности, кроме просмотра, требуют лицензии Pro или PPU.

Отчёты и дашборды

СвойствоДашбордОтчёт
Страницыодна страницаодна или несколько
Где создаётсятолько в Serviceв Desktop и в Service
Источникплитки из нескольких отчётов и моделейодна семантическая модель
Фильтры и срезынетесть
Оповещенияесть у плиток карточек, KPI и датчиковнет
Визуальный элемент закрепляют из отчёта на дашборде командой Pin visual (значок булавки); щелчок по плитке открывает исходный отчёт.

Обновление по расписанию и шлюзы

Модель Import — снимок данных: даже если источник изменился, числа в Service остаются старыми до обновления. В рабочей области выбери семантическую модель › Refresh › Schedule refresh, переведи Configure a refresh schedule в On и задай частоту и время (например, 07:00). С Pro доступно до 8 обновлений по расписанию в день, с PPU или ёмкостью Premium/Fabric — до 48. Облачные источники (SharePoint, OneDrive, Azure SQL) обновляются без шлюза, а для SQL Server в офисе или файла на компьютере нужен шлюз (gateway).

ШлюзДля когоПримечание
On-premises data gatewayкоманда и организацияпостоянно работает на сервере, управляется администратором, обслуживает многих пользователей и источники
On-premises data gateway (personal mode)один пользовательна своём компьютере; если он выключен, обновление не удаётся

Безопасность на уровне строк (RLS)

  1. 1
    Создай роль

    В Desktop выбери Modeling › Manage roles › New, назови роль «Baku». В Select tables выбери Store, в Filter data задай City = Baku (или напиши DAX через Switch to DAX editor) и нажми Save.

  2. 2
    Проверь в Desktop

    Modeling › View as › отметь «Baku»: все визуальные элементы должны показывать только строки Баку (итог 345 ₼).

  3. 3
    Назначь участников в Service

    После публикации в рабочей области открой у семантической модели More options (...) › Security: добавь в роль пользователей или группы безопасности, затем проверь через Test as role.

Статический RLS: по роли на город
// Role "Baku" on table Store
[City] = "Baku"
// Role "Ganja"
[City] = "Ganja"
// Role "Sumgait"
[City] = "Sumgait"
Динамический RLS: одна роль для всех
// One role "Managers" on table Store
// Store has a column ManagerEmail
[ManagerEmail] = USERPRINCIPALNAME ()
USERPRINCIPALNAME () возвращает в Service UPN вошедшего пользователя (обычно похож на e-mail). При открытии нового филиала в динамическом варианте достаточно добавить строку в Store, новая роль не нужна.
ПользовательРоль в рабочей областиВидитTotal Sales
aysel@contoso.comViewerBaku345
murad@contoso.comViewerGanja110
leyla@contoso.comViewerSumgait210
director@contoso.comMemberвсё665
В Store[ManagerEmail] записан адрес менеджера каждого города. Директор — Member, поэтому RLS на него не действует, и он видит все 665 ₼.

Совместный доступ и приложения

Доставить контент можно тремя способами. Общий доступ (Share) отправляет один отчёт нескольким людям по ссылке. Доступ к рабочей области — для авторов, работающих вместе. Приложение (app) — самый аккуратный путь к множеству читателей: в рабочей области выбери Create app, отбери страницы и навигацию, с помощью аудиторий (audiences) показывай разным группам разный контент, а после изменений нажимай Update app. Подтверждение (endorsement) надёжных семантических моделей как Promoted или Certified подсказывает пользователям, какому источнику доверять.

Главное

  • Home › Publish создаёт в рабочей области семантическую модель и отчёт; роли — Admin, Member, Contributor, Viewer.
  • Дашборд — одностраничная панель плиток, существующая только в Service; отчёт многостраничный и интерактивный.
  • Обновление по расписанию: Pro — 8 в день, PPU/ёмкость — 48; локальным источникам нужен шлюз.
  • Роли RLS создаются в Desktop, участники назначаются в Service; RLS действует только на Viewer.
  • Для множества читателей — приложение, для соавторов — рабочая область.

Проверь себя

Вопросов: 10. Каждый правильный ответ приносит XP.

1 / 10
Директор в рабочей области имеет роль Member и видит все города, несмотря на RLS. Почему?