Защита, базирана на филтър, в Microsoft Dataverse (предварителен преглед)

[Тази статия е предварително издание на документацията и подлежи на промяна.]

Защитата, базирана на собственост, предоставя достъп чрез собственост върху записите, екипи, бизнес единици и привилегии на ниво организация. Базираната на филтър защита дава достъп чрез данни от записи, които отговарят на критериите за филтриране. Можете например да дадете достъп до записите, чиято колона "Град" съдържа Редмънд, Сиатъл или Белвю.

Можете да използвате защита, базирана на филтър, с:

  • Филтрирани таблици за собственост на записи.
  • Таблици за собственост на потребителски или екипен запис.
  • Таблици за собственост на записи на организацията.

Важно

  • Тази функция е в предварителен преглед.
  • Функциите за предварителен преглед не са предназначени за производствена употреба и може да са с ограничена функционалност. Тези функции са достъпни преди официалното издание, за да могат клиентите да получат ранен достъп и да дадат обратна връзка.

Разберете как работи защитата, базирана на филтър

Конфигуриране на защита, базирана на филтър, с два основни компонента:

  • Филтър за записи: Използва FetchXML, за да идентифицира записите, които отговарят на условията за достъп.
  • Филтър за запис на обект: Свързва филтър за записи с таблица на Dataverse.

Когато свързвате филтър с таблица, Dataverse създава привилегии на филтър. Дайте тези привилегии чрез права за достъп. Когато даден потребител осъществява достъп до данни, Dataverse оценява филтрите от ролите за защита и членствата в екипа на потребителя. Съвпадащ филтър предоставя съответната операция за достъп до данни.

За филтрирани таблици за собственост на записи привилегиите на филтър определят достъпа до записа. За таблиците със собствеността на потребител или екип и на организационен запис, привилегиите за филтриране се добавят към достъпа, предоставен чрез съществуващия модел на защита.

Компоненти за защита, базирани на филтър

Компонент Описание
Филтър за записи Съхранява дефиницията на FetchXML филтъра.
Филтър за запис на обект Свързва филтър за записи с таблица на Dataverse.
Привилегия за филтриране Предоставя филтриран достъп за конкретна операция за достъп до данни.
Защитна роля Присвоява привилегии за филтриране на потребители и екипи.

Dataverse комбинира всички упълномощени филтри от правата за достъп и членствата в екипа на потребителя. Запис, който съответства на всеки упълномощен филтър, получава съответния достъп.

Сравняване на моделите на собственост

Базираната на филтър защита поддържа всички типове собственост на Dataverse.

Възможност Потребител или собственост на екип Собственост на организацията Филтрирана собственост
Поддържа собственик на запис Да Не Не
Поддържа присвояване Да Не Не
Поддържа споделяне Да Не Не
Поддържа достъп до йерархия на бизнес единица Да Не Не
Използва привилегии, базирани на собственост Да Не Не
Поддържа достъп за цялата организация Чрез привилегии на роли Да Чрез привилегията за филтриране на всички записи
Поддържа защита, базирана на филтър Да Да Да
Използва само филтри, за да определи достъпа Не Не Да
Поддържа повторно присвояване на записи Да Не Не
Типични случаи на използване Партньори, случаи, възможности и оперативни бизнес данни Споделени справочни данни и конфигурационни данни Управление на достъпа, базирано на атрибути, базиран на права достъп, географско сегментиране и класификация на данните

Избор на модел на собственост

Използвайте таблиците със собствеността на записите за потребители или екипи, когато записите имат естествен собственик и бизнес процеси, изискващи присвояване, споделяне, видимост на ръководителя или достъп до йерархията на бизнес единицата.

Използвайте таблиците за собственост на записите на организацията, когато потребителите широко споделят записи в цялата организация и не се нуждаят от собственост.

Използвайте филтрирани таблици за собственост на записи, когато бизнес атрибутите трябва да определят достъпа вместо собствеността. Този модел работи добре за управление на достъпа, базирано на атрибути (ABAC), защита, базирана на права, регулаторни граници и удостоверяване, базирано на чувствителност.

Забележка

Можете да приложите защита, базирана на филтър, към потребител или екип и към собствеността върху записите на организацията и филтрирани таблици за собственост на записи. Само филтрираните таблици за собственост на записи разчитат изключително на привилегиите на филтър за достъп до записи.

Защита, базирана на филтър, с филтрирани таблици за собственост

Филтрираната собственост на записа е модел на собственост на dataverse, който определя достъпа изцяло чрез привилегиите на филтриране.

Филтрираните таблици за собственост не използват собственици на записи.

Филтрираните таблици за собственост имат следните характеристики:

  • Не съдържат собственици на записи.
  • Не могат да бъдат присвоени на потребители или екипи.
  • Не може да се споделя с потребители или екипи.
  • Не използвайте привилегии на защита, базирани на собственост.
  • Определете достъпа само с помощта на привилегиите на филтър.

Забележка

Когато създавате филтрирана таблица за собственост на записи, Dataverse създава глобална привилегия за филтриране на всички записи и я предоставя на роля за защита на системния администратор.

Създаване на филтрирана таблица за собственост на запис

Когато създавате таблица на dataverse, изберете Филтрирана като тип собственост. За инструкции вижте Филтрирана собственост на запис.

След като създадете таблицата:

  1. Създаване на един или повече филтри за записи.
  2. Създайте филтри за запис на обект , за да свържете филтрите с таблицата.
  3. Даване на генерираните привилегии на филтър чрез права за достъп.
  4. Дайте ролите за защита на потребители или екипи.

Прилагане на базирана на филтър защита към таблици за собственост на потребител или екипен запис

Можете също да приложите защита, базирана на филтър, към съществуващи таблици за собственост на потребителски или екипен запис.

Привилегиите за филтриране добавят достъп до съществуващия, базиран на собствеността модел на защита:

  • Потребителите продължават да притежават записи.
  • Можете да продължите да присвоявате и споделяте записи.
  • Достъпът до йерархията на бизнес единицата остава непроменен.
  • Привилегиите за филтриране предоставят допълнителен достъп на ниво ред.

Например един продавач може да получи достъп до възможностите, които притежава. Филтърът може да даде на продавача достъп до допълнителни възможности в определена територия.

Следният филтър предоставя достъп до активни акаунти в определена територия:

<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>

Примерът по-долу използва a, 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 създава привилегии на филтър. Дайте тези привилегии чрез права за достъп.

Привилегиите за филтриране поддържат тези операции за достъп до данни:

  • Създавайте.
  • Четене.
  • Пишете.
  • Изтриване.
  • Добави.
  • Добави към.

Всяка привилегия е свързана с конкретен филтър и конкретна таблица.

Следващият пример показва привилегиите за няколко филтъра за град:

Филтър Привилегия
Град = Redmond Прочитане
Град = Redmond Записване
Град = Redmond Изтриване
Град = Сиатъл Прочитане
Град = Белвю Прочитане

Създайте няколко филтъра и присвоете различни привилегии на всяка роля на защита, ако е необходимо.

Даване на привилегии на филтър в права за достъп

Управление на привилегиите за филтриране чрез права за достъп на dataverse.

За да предоставите филтриран достъп:

  1. Отворете роля на защита.
  2. Изберете целевата таблица.
  3. Изберете привилегията за филтриране.
  4. Даване на привилегия на ролята.
  5. Възложете ролята на потребители или екипи.

Потребителите получават всички привилегии за филтриране от присвоените им роли на защита и членства в екип.

За повече информация вижте Роли и привилегии за сигурност.

Пример

Да предположим, че таблицата "Клиент" включва колона "Град".

Създаване на три филтъра за записи:

  • Град = Редмънд.
  • Град = Сиатъл.
  • Град = Белвю.

Асоциирайте всеки филтър за записи с таблицата "Клиент", като използвате филтри за запис на обект.

Създаване на три права за достъп:

Роля Привилегия за филтриране
Продажби в Redmond Read Customer where City = Redmond
Продажби в Сиатъл Четене на клиента, където Град = Сиатъл
Продажби в Белвю Прочитане на клиента, където Град = Белвю

Всяка роля дава достъп до записи на клиенти, които отговарят на нейния филтър. Потребителите може да имат по-широк достъп чрез други роли, членства в екипа, собственост или споделяне.

Обобщена информация

Базираната на филтър защита дава достъп на ниво ред въз основа на стойности на данни. Използвайте филтри за записи, филтри за записи на обекти, привилегии на филтриране и роли на защита, за да реализирате управление на достъпа, базирано на атрибути, в Dataverse.

Добавете защита, базирана на филтър, с таблиците за собственост на потребители или екипи и със собствеността на записите на организацията, за да предоставите повече достъп до данните чрез условия за филтриране. Изберете модела на собственост, който отговаря на вашите бизнес изисквания. Не забравяйте, че само филтрираните таблици за собственост използват филтри като монополен източник на достъп до записи.

Следващи стъпки