Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Безопасность Direct Lake гарантирует, что только авторизованные пользователи могут запрашивать таблицы Delta в OneLake. С помощью ролей рабочей области можно управлять разрешениями на доступ к данным. Участники рабочей области, члены и администраторы могут считывать данные в OneLake. Вы также можете предоставить доступ к данным в OneLake с помощью разрешений на уровне элементов и вычислений. Третий вариант — использовать безопасность OneLake для обеспечения детальной безопасности на основе ролей во всех вычислительных модулях Fabric. В этой статье объясняется, как выровнять модели разрешений, выбирать единый вход (SSO) или фиксированные удостоверения, а также использовать безопасность на уровне объектов (OLS) и безопасность на уровне строк (RLS). Дополнительные сведения см. в обзоре безопасности OneLake.
Основные понятия и терминология
В этой статье предполагается, что вы знакомы с этими понятиями:
- Direct Lake использует общие выражения M в метаданных семантической модели для ссылки на источники данных с помощью функций доступа к данным Power Query: AzureStorage.DataLake для Direct Lake в OneLake и Sql.Database для Direct Lake на конечных точках SQL. Однако Direct Lake не использует эти функции для чтения исходных таблиц Delta. Она считывает таблицы Delta непосредственно через API OneLake.
- Чтобы убедиться, что только авторизованные пользователи запрашивают данные, Direct Lake проверяет разрешения доступа к данным действующего удостоверения. Эффективная идентификация зависит от конфигурации подключения к данным. По умолчанию Direct Lake использует единый вход (Идентификатор Microsoft Entra) и использует удостоверение текущего пользователя, запрашивающего семантику модели. Вы также можете связать модель Direct Lake с конкретным облачным подключением, чтобы обеспечить фиксированную идентификацию.
- Если вы предоставляете разрешения на доступ к данным с помощью ролей рабочей области, только члены роли Участников (или выше) могут читать данные в OneLake. Однако средства просмотра рабочих областей не имеют разрешения на чтение в OneLake. Зрители и пользователи, не входящие в роль рабочей области, могут получить доступ на чтение с помощью сочетания разрешений элемента, разрешений на вычисления или ролей безопасности OneLake.
- Безопасность OneLake позволяет членам ролей "Администратор рабочей области" и "Член рабочей области" определять гранулярную безопасность на основе ролей для пользователей в роли "Просмотрщик". Укажите таблицы, к которым средство просмотра или пользователь с явным разрешением на чтение может получить доступ, исключая определенные строки или столбцы. Дополнительные сведения о ролях безопасности OneLake см. в статье "Безопасность таблиц" в OneLake, безопасность на уровне столбцов в OneLake и RLS в OneLake.
Конфигурация подключения
Настройте подключения к данным для модели Direct Lake так же, как и другие семантические типы моделей. Дополнительные сведения см. в статье "Подключение к облачным источникам данных" в службе Power BI .
Так как Direct Lake подключается только к источникам данных Fabric, конфигурация единого входа (Microsoft Entra ID) по умолчанию работает, поэтому вам не нужно привязывать семантические модели к явным подключениям к данным. Такой подход снижает сложность конфигурации и снижает затраты на управление.
При использовании единого входа (Идентификатор Microsoft Entra) Direct Lake проверяет, что текущий пользователь, запрашивающий семантическую модель, имеет доступ на чтение к данным. Только пользователи с доступом на чтение могут запрашивать данные. На следующем снимке экрана показана модель Direct Lake с конфигурацией по умолчанию для единого входа.
Если вы используете явное подключение к данным с фиксированным удостоверением вместо единого входа, Direct Lake не требует разрешения на чтение базовых данных. Если Microsoft Entra SSO остается отключенным в подключении к данным, доступ к данным Direct Lake определяется разрешениями фиксированного удостоверения.
Замечание
Подключение к данным можно настроить для использования единого входа и фиксированного удостоверения. Direct Lake проверяет разрешения текущего пользователя в момент выполнения запроса и использует фиксированную учетную запись для обрамления и перекодирования в момент обновления. Чтобы использовать фиксированное удостоверение для запросов и обновлений, убедитесь, что единый вход отключен в конфигурации подключения к данным.
Требования к проверке подлинности
Модели Direct Lake используют проверку подлинности Идентификатора Microsoft Entra. В конфигурации подключения к данным выберите OAuth 2.0, учетная запись службы или идентификатор рабочей области в качестве метода проверки подлинности. Другие методы, такие как проверка подлинности ключа или SAS, могут отображаться в пользовательском интерфейсе конфигурации, но не поддерживаются для моделей Direct Lake.
Требования к разрешениям
Требования к разрешениям различаются между Direct Lake в конечных точках SQL и Direct Lake в OneLake. Это связано с тем, что Direct Lake в конечных точках SQL использует конечную точку аналитики SQL целевого источника данных, а Direct Lake в OneLake использует API OneLake для проверки разрешений.
Direct Lake на конечных точках SQL
Direct Lake на конечных точках SQL выполняет проверки разрешений через аналитику SQL, чтобы определить, есть ли у эффективной идентификации необходимые права доступа к данным. В частности, фактической учётной записи не требуется разрешение на непосредственное чтение таблиц Delta в OneLake. Достаточно иметь доступ на чтение к артефакту Fabric, например лейкхаус, и разрешение SELECT на таблицу через конечную точку аналитики SQL. Это связано с тем, что Fabric предоставляет необходимые разрешения семантической модели для чтения таблиц Delta и связанных с ними файлов Parquet (чтобы загрузить данные столбцов в память). Семантическая модель имеет разрешение периодически читать SQL-аналитический конечный пункт, чтобы проверить, какие данные может получить пользователь запроса (или фиксированная идентичность).
Direct Lake на OneLake
Direct Lake в OneLake не использует конечную точку аналитики SQL для проверок разрешений. Он использует OneLake Security. Если служба безопасности OneLake включена, функция Direct Lake на платформе OneLake использует текущего пользователя (или фиксированное удостоверение) для обработки ролей безопасности OneLake и применения правил OLS и RLS в целевом объекте платформы Fabric. Если функция "Безопасность OneLake" не включена, Direct Lake в OneLake требует, чтобы эффективное удостоверение имело разрешения Read и ReadAll на целевой артефакт Fabric для доступа к его таблицам Delta в OneLake. Дополнительные сведения о разрешениях Read и ReadAll см. в разделе "Разрешения элемента" в статье "Общие сведения о безопасности OneLake".
Замечание
Участники (или более высокие уровни) имеют разрешения Read и ReadAll в OneLake. Зрители и пользователи, не входящие в роли рабочей области, должны получить разрешения на чтение и полное чтение или быть добавлены в группу безопасности OneLake. Дополнительные сведения об управлении группами безопасности OneLake см. в модели управления доступом к данным OneLake.
Пользователи Direct Lake
В следующих сценариях перечислены минимальные требования к разрешениям.
| Scenario | Direct Lake на конечных точках SQL | Direct Lake на OneLake | Comments |
|---|---|---|---|
| Пользователи могут просматривать отчеты | — предоставьте разрешение на чтение отчетов и разрешение на чтение для семантической модели. — Если Direct Lake использует единый вход, предоставьте пользователям по крайней мере разрешение на чтение для целевого артефакта Fabric и разрешения SELECT для таблиц. |
— предоставьте разрешение на чтение отчетов и разрешение на чтение для семантической модели. — Если Direct Lake использует SSO (единый вход), предоставьте пользователям по крайней мере разрешение на чтение для целевого артефакта Fabric, добавьте их в роль безопасности OneLake, или предоставьте им разрешение ReadAll. |
Отчеты не должны принадлежать той же рабочей области, что и семантическая модель. Для получения дополнительной информации, см. статью Стратегия для потребителей только для чтения. |
| Пользователи могут создавать отчеты | — предоставление разрешения на сборку для семантической модели. — Если Direct Lake использует единый вход, предоставьте пользователям по крайней мере разрешение на чтение для целевого артефакта Fabric и разрешения SELECT для таблиц. |
— предоставление разрешения на сборку для семантической модели. — Если Direct Lake использует SSO (единый вход), предоставьте пользователям хотя бы разрешение Чтение для целевого артефакта Fabric и добавьте их в роль безопасности OneLake или предоставьте им разрешение ReadAll. |
Пользователи могут создавать отчеты только в таблицах и столбцах, к которых у них есть доступ. Это может быть подмножество полного набора таблиц и столбцов в модели. Дополнительные сведения см. в статье Стратегия для создателей содержимого. |
| Пользователям разрешено запрашивать семантическую модель, но им запрещен доступ к lakehouse или конечной точке SQL аналитики. | — Привяжите модель Direct Lake к облачному подключению с фиксированной идентификацией и оставьте единую аутентификацию (SSO) отключенной. — предоставьте фиксированному удостоверению по крайней мере разрешение на чтение для целевого артефакта Fabric и разрешение SELECT для таблиц. — Не предоставляйте пользователям никаких разрешений для целевого артефакта Fabric. |
- Привяжите модель Direct Lake к облачному подключению с зафиксированной идентификацией и оставьте единый вход отключенным. — Предоставьте фиксированному удостоверению по крайней мере разрешение на чтение для целевого артефакта Fabric и добавьте его в роль безопасности OneLake или предоставьте ему разрешение ReadAll . — Не предоставляйте пользователям никаких разрешений для целевого артефакта Fabric. |
Подходит только в случае, если для облачного подключения используется фиксированное удостоверение. |
| Пользователи могут запрашивать семантические модели и конечную точку аналитики SQL, однако им запрещено запрашивать озерохранилище | — предоставьте разрешения на чтение и чтение данных для целевого артефакта Fabric. | Неприменимо. | Важно. Запросы, отправленные в конечную точку аналитики SQL, будут обходить разрешения доступа к данным, применяемые семантической моделью. |
| Управление семантической моделью, включая параметры обновления | — требуется владение семантической моделью. | — требуется владение семантической моделью. | Дополнительные сведения см. в владении семантической моделью. |
Это важно
Всегда тестируйте разрешения перед выпуском семантической модели и отчетов в рабочую среду.
Дополнительные сведения см. в разделе "Разрешения семантической модели".
Владельцы Direct Lake
Помимо эффективного удостоверения (текущего пользователя или фиксированного удостоверения), Direct Lake также требует, чтобы владелец семантической модели имел доступ на чтение к исходным таблицам, чтобы Direct Lake могли структурировать семантическую модель при обновлении данных. Независимо от того, кто обновляет модель Direct Lake, Direct Lake проверяет разрешение владельца, чтобы убедиться, что модель разрешена для доступа к данным. Требования к доступу к данным владельца совпадают с требованиями к пользователям, запрашивающим модель.
Если у владельца семантической модели нет необходимых разрешений на доступ к данным, Direct Lake вызывает следующую ошибку во время обрамления: We cannot refresh this semantic model because one or multiple source tables either do not exist or access was denied. Please contact a data source admin to verify that the tables exist and ensure that the owner of this semantic model does have read access to these tables. Some restricted tables including fully restricted and partially restricted (indicating column constraints): '\<list of tables\>'.
Ярлыки к исходным таблицам
Ярлыки — это объекты OneLake, которые добавляются в lakehouse Fabric или другой артефакт Fabric, чтобы указать на внутренние или внешние местоположения хранилища. В модели Direct Lake таблицы Delta, добавленные с помощью сочетаний клавиш, отображаются как собственные в артефакте подключенной структуры, так как сочетания клавиш прозрачны при доступе к данным через API OneLake.
При доступе к ярлыкам через конечные точки SQL Direct Lake сначала проверяет, что эффективное удостоверение (текущего пользователя или фиксированное удостоверение) может получить доступ к таблице в источнике данных семантической модели. Для внутренних сочетаний клавиш после прохождения этой проверки Direct Lake использует удостоверение владельца источника данных для чтения таблицы Delta с помощью ярлыка в артефакте Fabric таблицы. Владелец источника данных должен иметь права доступа к целевому местоположению OneLake. Для внешних сочетаний клавиш владелец источника данных также должен использовать разрешение на облачное подключение к внешней системе, в которую размещается таблица Delta. Для получения дополнительной информации см. ярлыки OneLake.
Direct Lake над OneLake имеет разные требования к разрешениям, так как конечная точка аналитики SQL не участвует. Когда пользователь обращается к данным через внутреннюю ссылку к другому расположению OneLake, действующее удостоверение (текущий пользователь или фиксированное удостоверение) должно иметь разрешение в целевом расположении. Эффективное удостоверение должно быть Участником (или выше), иметь разрешения Чтение и ЧтениеВсего, или являться в роли безопасности OneLake, которая предоставляет доступ на чтение.
Безопасность на уровне объектов (OLS) и безопасность на уровне строк (RLS)
Обе модели OneLake Security и Direct Lake поддерживают OLS и RLS. OLS позволяет владельцам артефактов и администраторам защищать определенные таблицы или столбцы. RLS можно использовать для ограничения доступа к данным на уровне строки на основе фильтров. Вы можете определить OLS и RLS в OneLake Security, в модели Direct Lake или в обоих местах.
Это важно
Direct Lake не поддерживает конечную точку SQL Analytics, OLS/RLS. Чтобы вернуть корректные данные, Direct Lake возвращается через конечные точки SQL в режим DirectQuery, если артефакт Fabric использует OLS или RLS. Если резервный механизм DirectQuery отключен, запросы через конечные точки SQL терпят сбой при определении OLS/RLS на конечной точке аналитики SQL. Direct Lake в OneLake избегает этого ограничения.
Прямой доступ к OneLake с OLS/RLS и с безопасностью OneLake OLS/RLS
Direct Lake в OneLake оценивает возможность доступа к защищённым объектам OLS/RLS, разрешая роли безопасности OneLake активной идентичности и применяя определённые правила OLS/RLS. Роли безопасности OneLake обрабатываются так же, как роли Direct Lake. Если эффективное удостоверение относится к нескольким ролям в OneLake Security и Direct Lake, то Direct Lake сначала объединяет роли OneLake Security, а затем пересекает результат с ролями Direct Lake.
В этой таблице перечислены распространенные ситуации устранения неполадок, вызванные конфликтом правил OneLake Security и Direct Lake.
| Scenario | Comments |
|---|---|
| Строки не были возвращены из-за фильтрации RLS | Если действующее удостоверение не имеет разрешений доступа на уровне строк, запросы могут возвращать пустые результаты. Это поведение ожидается, если фильтры RLS исключают все строки для текущего пользователя. |
| Не удается найти таблицу Не удается найти столбец Не удалось разрешить имя Недопустимое имя таблицы, переменной или функции |
Эти ошибки обычно возникают, когда отсутствуют разрешения объекта после применения ролей Безопасности OneLake. |
Различия областей применения RLS/OLS
Применение OLS и RLS в OneLake Security применяет правила для всех вычислительных подсистем и обеспечивает единый контроль доступа для пользователей. Это означает, что независимо от подсистемы вычислений — lakehouse, хранилища, семантической модели или другого артефакта — правила безопасности OneLake управляют доступом к данным пользователя. В отличие от этого, OLS/RLS, определенные в семантической модели Direct Lake, применяются только в пределах этой модели. Другие вычислительные подсистемы не применяют эти правила безопасности Direct Lake, которые могут создавать различные результаты при доступе пользователей к данным через другие пути.
Это важно
При использовании как OneLake Security OLS/RLS, так и Direct Lake OLS/RLS пользователи с доступом к OneLake способны продолжать работать и получать данные, даже если правила модели Direct Lake накладывают дополнительные ограничения на данные, поскольку правила уровня модели не выходят за рамки модели. Используйте OneLake Security для комплексного контроля доступа во всех вычислительных модулях.
Метаданные модели OneLake OLS и семантической модели
Метаданные семантической модели включают определения таблиц, столбцов, связей и других элементов схемы. Пользователи с разрешениями уровня build или выше могут просматривать метаданные модели с помощью XML для анализа (XMLA) и REST-интерфейсов API. Дополнительные сведения см. в разделе "Разрешения семантической модели".
Чтобы защитить имена чувствительных таблиц и столбцов в OneLake с помощью OneLake OLS, помните, что OneLake Security применяется только к членам роли Просмотрщика рабочей области. OneLake OLS не предотвращает членов роли рабочей области Участник (или выше) от обнаружения защищенных таблиц или столбцов, так как у них уже есть разрешение на запись ко всем артефактам рабочей области. Члены роли просмотра с разрешениями сборки или более высокого уровня в модели Direct Lake могут обнаруживать конфиденциальные сведения о схеме с помощью метаданных семантической модели. Эти более привилегированные зрители по-прежнему не имеют доступа к данным, но они могут видеть, что защищенные таблицы и столбцы существуют.
Модель Direct Lake может существовать в той же рабочей области, что и исходный артефакт или в отдельной рабочей области. Предоставьте пользователю в той же рабочей области (или выше) доступ к модели Direct Lake с помощью разрешений к элементу. В отдельной рабочей области пользователь может быть участником (или выше) или иметь разрешения на сборку (или выше) элемента для доступа к метаданным модели.
Интеграция OneLake OLS и Git
Интеграция Git позволяет разработчикам интегрировать процессы управления жизненным циклом приложений (ALM) на платформу Fabric. Репозиторий Git сохраняет структуру рабочей области, включая все поддерживаемые артефакты. Разработчики имеют полную видимость метаданных всех своих элементов в репозитории Git. Метаданные модели Direct Lake позволяют им видеть, что защищенные таблицы или столбцы существуют, даже если у них нет доступа к целевому источнику данных в другой рабочей области. Дополнительные сведения см. в статье "Что такое интеграция Microsoft Fabric Git"?
Соображения и ограничения
Рассмотрим эти ограничения безопасности Direct Lake.
Замечание
Возможности и функции семантических моделей Direct Lake и безопасность OneLake быстро развиваются. Периодически проверяйте наличие обновлений.
- Назначьте зрителям рабочей области роли безопасности OneLake, которые предоставляют доступ на чтение к артефактам Fabric источника. Если в исходном артефакте есть ярлыки для другого артефакта Fabric, пользователю также нужен доступ на чтение к целевому артефакту Fabric каждого ярлыка.
- Используйте фиксированный идентификатор для изоляции пользователей от артефакта исходной структуры Fabric. Привязка модели Direct Lake к облачному подключению. Оставьте SSO отключенным в облачном подключении, чтобы использовать статическое удостоверение личности для обновлений и запросов.
- Семантические модели Direct Lake, использующие безопасность Fabric OneLake в исходном артефакте, не поддерживают операции резервного копирования.
- Двунаправленные связи не поддерживаются в модели Direct Lake, если артефакт source Fabric использует oneLake security RLS.
- Во время общедоступной предварительной версии безопасность OneLake поддерживает только статические RLS в одной таблице.
- Во время общедоступной предварительной версии безопасность OneLake не поддерживает динамические определения или сложные конфигурации ролей, например объединение нескольких ролей OLS и RLS в связанных таблицах.
- Объединить разрешения RLS и OLS безопасности OneLake в одну роль для каждого пользователя вместо назначения нескольких ролей.
- Если конфигурация безопасности OneLake изменяется, например, из-за изменений ярлыков или ссылок в целевом артефакте, обновите Direct Lake в моделях OneLake, которые обращаются к этому артефакту. Если включена автоматическая синхронизация, служба обычно обновляет их автоматически. В противном случае обновите модели вручную.
- Если в системе Lakehouse предусмотрена система безопасности OneLake:
- Конечная точка аналитики SQL по умолчанию связана с идентификацией владельца Lakehouse, поэтому безопасность SQL аналитики в OneLake соответствует уровню безопасности владельца (без ограничений). Direct Lake в SQL сохраняет использование Direct Lake, если не будут добавлены дополнительные роли доступа к SQL.
- Конечная точка аналитики SQL может быть изменена на SSO. В этом случае роли безопасности OneLake добавляются в виде гранулированных правил управления доступом в SQL, и пользователь не может редактировать эти роли на аналитической конечной точке SQL. На этом этапе Direct Lake в SQL всегда возвращается к DirectQuery.