Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
[Эта статья является предварительной документацией и может быть изменена.]
Безопасность на основе прав владения предоставляет доступ через право владения записями, команды, бизнес-подразделения и привилегии уровня организации. Безопасность на основе фильтров предоставляет доступ к данным записей, соответствующих критериям фильтрации. Например, вы можете предоставить доступ к записям, в столбце City которых указаны Редмонд, Сиэтл или Белвью.
Безопасность на основе фильтров можно использовать с помощью:
- Отфильтрованные таблицы владения записями.
- Таблицы принадлежности записей пользователям или командам.
- Таблицы владения организацией.
Important
- Эта функция находится в режиме предварительного просмотра.
- Предварительные версии функций не предназначены для использования в рабочей среде и могут иметь ограниченные функциональные возможности. Эти функции доступны до официального выпуска, чтобы клиенты могли получать ранний доступ и предоставлять отзывы.
Общие сведения о том, как работает безопасность на основе фильтров
Настройте безопасность на основе фильтров с двумя основными компонентами:
- Фильтр записей: Использует FetchXML для идентификации записей, которые соответствуют доступу.
- Фильтр записей сущностей: Связывает фильтр записей с таблицей Dataverse.
При связывании фильтра с таблицей Dataverse создает привилегии фильтра. Назначьте эти привилегии с помощью ролей безопасности. Когда пользователь обращается к данным, Dataverse оценивает фильтры из ролей безопасности пользователя и членства в группах. Фильтр сопоставления предоставляет соответствующую операцию доступа к данным.
В отфильтрованных таблицах владения записями привилегии фильтра определяют доступ к записям. Для таблиц с владением записями пользователем, командой или организацией привилегии фильтрации дополняют доступ, предоставляемый в рамках существующей модели безопасности.
Компоненты безопасности на основе фильтров
| Component | Описание |
|---|---|
| Фильтр записей | Сохраняет определение фильтра FetchXML. |
| Фильтр записей сущностей | Связывает фильтр записей с таблицей Dataverse. |
| Фильтрация привилегий | Предоставляет отфильтрованный доступ для определенной операции доступа к данным. |
| Роль безопасности | Назначает пользователям и командам права фильтрации. |
Dataverse объединяет все разрешённые фильтры из ролей безопасности пользователя и членства в командах. Запись, соответствующая любому авторизованному фильтру, получает соответствующий доступ.
Сравнение моделей владения
Безопасность на основе фильтров поддерживает все типы владения Dataverse.
| Функциональность | Принадлежит пользователю или команде | Принадлежащая организации | Отфильтрованное владение |
|---|---|---|---|
| Поддерживает владельца записи | Да | No | No |
| Поддерживает присваивание | Да | No | No |
| Поддерживает общий доступ | Да | No | No |
| Поддерживает доступ к иерархии бизнес-единиц | Да | No | No |
| Использование привилегий на основе владения | Да | No | No |
| Поддержка доступа на уровне организации | С помощью привилегий ролей | Да | Через привилегию фильтра "Все записи" |
| Поддерживает безопасность на основе фильтров | Да | Да | Да |
| Использует только фильтры для определения доступа | No | No | Да |
| Поддерживает переназначение записей | Да | No | No |
| Типичные варианты использования | Учетные записи, обращения, сделки и операционные бизнес-данные | Общие справочные данные и данные конфигурации | Управление доступом на основе атрибутов, доступ на основе прав, географическое сегментирование и классификация данных |
Выбор модели владения
Используйте таблицы, принадлежащие пользователю или команде, если у записей есть естественный владелец и бизнес-процессы требуют назначения, предоставления общего доступа, видимости для руководителя или доступа через иерархию бизнес-единиц.
Используйте таблицы с владением записями на уровне организации, если пользователи широко совместно используют записи по всей организации и им не требуется владение записями.
Используйте отфильтрованные таблицы владения записями, когда бизнес-атрибуты должны определять доступ вместо владения. Эта модель хорошо подходит для управления доступом на основе атрибутов (ABAC), безопасности на основе прав, нормативных границ и авторизации на основе конфиденциальности.
Примечание.
Вы можете применить безопасность на основе фильтров к таблицам с владением записями пользователем или командой, организацией, а также к отфильтрованным таблицам владения записями. Только отфильтрованные таблицы владения записями зависят исключительно от привилегий фильтра для доступа к записи.
Безопасность на основе фильтров с отфильтрованными таблицами владения
Отфильтрованное владение записью — это модель владения Dataverse, которая полностью определяет доступ через привилегии фильтра.
Отфильтрованные таблицы собственности не используют владельцев записей.
Отфильтрованные таблицы владения имеют следующие характеристики:
- Не содержат владельцев записей.
- Нельзя назначить пользователям или командам.
- Невозможно предоставить общий доступ пользователям или командам.
- Не используйте привилегии безопасности, основанные на владении.
- Определите доступ только с помощью привилегий фильтра.
Примечание.
Когда вы создаете таблицу владения записями с фильтрацией, Dataverse создает глобальную привилегию фильтра Все записи и назначает ее роли безопасности «Системный администратор».
Создание отфильтрованной таблицы владения записью
При создании таблицы Dataverse выберите "Отфильтрованный " в качестве типа владения. Инструкции см. в разделе Фильтрация права владения записями.
После создания таблицы:
- Создайте один или несколько фильтров записей.
- Создайте фильтры записей сущностей , чтобы связать фильтры с таблицей.
- Предоставьте привилегии созданного фильтра через роли безопасности.
- Назначьте роли безопасности пользователям или командам.
Применение безопасности на основе фильтра к таблицам владения записями пользователей или группы
Вы также можете применить безопасность на основе фильтров к существующим таблицам владения записями пользователей или команды.
Фильтрация привилегий добавляет доступ к существующей модели безопасности на основе владения:
- Пользователи продолжают владеть записями.
- Вы можете продолжать назначать и предоставлять общий доступ к записям.
- Доступ к иерархии бизнес-единиц остается неизменным.
- Права фильтра предоставляют дополнительный доступ на уровне строк.
Например, продавец может получить доступ к возможностям, которые они имеют. Фильтр может предоставить продавцу доступ к дополнительным возможностям на определенной территории.
Следующий фильтр предоставляет доступ к активным учетным записям на определенной территории:
<fetch
version="1.0"
output-format="xml-platform"
mapping="logical"
distinct="false">
<entity name="account">
<attribute name="entityimage_url" />
<attribute name="statecode" />
<attribute name="name" />
<attribute name="address1_city" />
<attribute name="primarycontactid" />
<attribute name="telephone1" />
<attribute name="accountid" />
<attribute name="new_owningbuname" />
<order attribute="name" descending="false" />
<filter type="and">
<condition
attribute="territoryid"
operator="eq"
value="a440958c-f6bc-f111-aaad-000d3a84e349" />
<condition
attribute="statecode"
operator="eq"
value="0" />
</filter>
</entity>
</fetch>
В следующем примере используется link-entity, чтобы предоставить менеджеру по продажам доступ к активным клиентским записям, принадлежащим коллеге, которого он замещает:
<fetch
version="1.0"
output-format="xml-platform"
mapping="logical"
distinct="true">
<entity name="account">
<attribute name="entityimage" />
<attribute name="statecode" />
<attribute name="name" />
<attribute name="parentaccountid" />
<attribute name="ownerid" />
<attribute name="telephone1" />
<attribute name="emailaddress1" />
<attribute name="accountid" />
<order attribute="name" descending="false" />
<filter type="and">
<condition
attribute="statecode"
operator="eq"
value="0" />
</filter>
<link-entity
name="crcd8_buddyrm"
alias="buddy"
link-type="inner"
from="crcd8_rm"
to="ownerid">
<filter type="and">
<condition
attribute="crcd8_buddyrmname"
operator="eq-userid" />
<condition
attribute="statecode"
operator="eq"
value="0" />
</filter>
</link-entity>
</entity>
</fetch>
Эффективный доступ
Для таблиц с владением записями пользователем или командой привилегии фильтра добавляют к безопасности на основе владения доступ на уровне строк. Они не заменяют и не ограничивают доступ, предоставляемый на основе права владения, общего доступа или привилегий роли безопасности.
Для отфильтрованных таблиц владения привилегии фильтрации определяют доступ к записям. Для таблиц с типом владения «Запись организации» привилегии фильтра добавляются к доступу, предоставленному привилегиями роли безопасности.
Эта аддитивная модель позволяет вводить доступ на основе атрибутов, сохраняя существующие правила доступа.
Дополнительные сведения о безопасности владения см. в разделе "Владение и доступ к записям".
Применение безопасности на основе фильтров к таблицам владения записями организации
Вы также можете применить фильтрацию безопасности к таблицам владения записями организации.
Стандартные привилегии для таблицы владения записью организации предоставляют доступ ко всем записям в таблице. Права доступа на основе фильтра предоставляют ещё один способ предоставить доступ к записям, соответствующим условиям фильтра. Они не ограничивают более широкий уровень доступа, который уже предоставляет роль безопасности.
Ниже приведены распространенные сценарии.
- Территориальный доступ
- Доступ по отделам.
- Элементы управления классификацией данных.
- Справочные данные общего доступа с ограниченной областью видимости.
Например, предоставьте пользователям доступ к записям, столбец "Территория" которого соответствует конкретному региону. Убедитесь, что другие привилегии их роли безопасности не предоставляют более широкий доступ к той же таблице.
Привилегии фильтрации обеспечивают детализированное разграничение доступа, сохраняя при этом модель данных владения записями в организации.
Дополнительные сведения о таблицах владения записями организации см. в разделе "Владение и доступ к записям".
Фильтрация привилегий
Когда вы связываете фильтр записей с таблицей с помощью фильтра записей сущности, Dataverse создает разрешения фильтра. Назначьте эти привилегии с помощью ролей безопасности.
Права фильтрации поддерживают следующие операции доступа к данным:
- Create.
- Прочитать.
- Напишите.
- Удалить.
- Добавление.
- Добавление в.
Каждая привилегия связана с определенным фильтром и определенной таблицей.
В следующем примере показаны привилегии для нескольких фильтров города:
| Filter | Привилегия |
|---|---|
| Город = Редмонд | Читайте |
| Город = Редмонд | Напишите |
| Город = Редмонд | Delete |
| Город = Сиэтл | Читайте |
| City = Bellevue | Читайте |
Создайте несколько фильтров и при необходимости назначьте разные привилегии каждой роли безопасности.
Предоставить права на использование фильтра в ролях безопасности
Управление привилегиями фильтра с помощью ролей безопасности Dataverse.
Чтобы предоставить фильтрованный доступ, выполните приведенные действия.
- Откройте роль безопасности.
- Выберите целевую таблицу.
- Выберите привилегию фильтра.
- Предоставьте привилегию роли.
- Назначьте роль пользователям или командам.
Пользователи получают все права доступа к фильтрам на основе назначенных им ролей безопасности и членства в командах.
Дополнительные сведения см. в разделе " Роли безопасности" и "Привилегии".
Example
Предположим, что таблица Customer содержит столбец "Город".
Создайте три фильтра записей:
- Город = Редмонд.
- Город = Сиэтл.
- Город = Bellevue.
Свяжите каждый фильтр записей с таблицей клиента с помощью фильтров записей сущностей.
Создайте три роли безопасности:
| Роль | Фильтрация привилегий |
|---|---|
| Продажи в Редмонде | Получить клиента, где Город = Редмонд |
| Продажи в Сиэтле | Прочитать клиентов, где город = "Сиэтл" |
| Bellevue Sales | Прочитать Customer, где City = Bellevue |
Каждая роль предоставляет доступ к записям клиентов, соответствующим фильтру. Пользователи могут иметь более широкий доступ через другие роли, членство в команде, владение или общий доступ.
Сводка
Безопасность на основе фильтров предоставляет доступ на уровне строк на основе значений данных. Используйте фильтры записей, фильтры записей сущностей, права фильтрации и роли безопасности для реализации управления доступом на основе атрибутов в Dataverse.
Добавьте безопасность на основе фильтра с таблицами владения записями пользователя, команды или организации, чтобы предоставить более широкий доступ к данным с использованием условий фильтрации. Выберите модель владения, которая соответствует вашим бизнес-требованиям. Помните, что только отфильтрованные таблицы владения используют фильтры в качестве эксклюзивного источника доступа к записи.
Дальнейшие действия
- Узнайте, как настроить таблицы владения с фильтрацией в разделе Владение записями с фильтрацией.
- Узнайте, как применять фильтры к существующим моделям владения записями в статье Добавление безопасности отфильтрованного представления в таблицы владения записями.
- Дополнительные сведения об архитектуре безопасности Dataverse в концепциях безопасности см. в Microsoft Dataverse.