Разграничение#
Раздел delineation используется для определения набора объектов ресурсов, составляющих данный тип объекта ресурса.
В следующем простом примере определяется тип entitlement/unixGroup, который состоит из всех объектов, имеющих класс groupOfNames в данном ресурсе.
Самый простой пример разделения типа объекта
<objectType>
<kind>entitlement</kind>
<intent>unixGroup</intent>
<delineation>
<objectClass>ri:groupOfNames</objectClass>
</delineation>
</objectType>
Теперь давайте расширим определение, чтобы включить базовый контекст.
Следующая конфигурация ограничивает тип entitlement/unixGroup объектами класса groupOfNames, которые находятся внутри ou=unixgroups,dc=example,dc=com организационной единицы.
Разделение типа объекта с ограничением базового контекста
<objectType>
<kind>entitlement</kind>
<intent>unixGroup</intent>
<delineation>
<objectClass>ri:groupOfNames</objectClass>
<baseContext>
<objectClass>ri:organizationalUnit</objectClass>
<filter>
<q:text>attributes/dn = "ou=unixgroups,dc=example,dc=com"</q:text>
</filter>
</baseContext>
</delineation>
</objectType>
Базовый контекст используется для поиска объектов типа entitlement/unixGroup путем добавления условия базового контекста к запросу поиска. Однако его также можно использовать в качестве правила классификации , которое помогает определить, принадлежит ли входящий объект класса groupOfNames типу entitlement/unixGroup или нет.
Использование базового контекста для классификации имеет некоторые ограничения, а именно:
Корень базового контекста должен быть указан фильтром
equal(„=“ знак) с единственным значением типа «Отличительное имя LDAP». То, что это отличительное имя, определяется наличием правила сопоставленияdistinguishedNameдля атрибута.Тень, которую классифицируют, должна иметь первичный или вторичный идентификатор, снова с установленным правилом соответствия
distinguishedName.
Смотрите DelineationMatcher для получения дополнительной информации.
Все элементы конфигурации разграничения обобщаются в следующей таблице.
Таблица 1. Список элементов конфигурации разграничения
Элемент |
Описание |
|---|---|
|
Класс объекта (например, |
|
Ссылка на дополнительные классы объектов для этого объекта. Ссылка должна указывать на определение класса объектов, и это определение должно быть помечено как вспомогательное. |
Определения атрибутов из этих классов «импортируются» в тип объекта. Однако в настоящее время эти вспомогательные классы объектов не используются для классификации; а именно решение о классификации не основано на их наличии в конкретном ресурсе объекта. |
— |
|
Определение базовой контекстной среды (контейнер ресурса объекта). Этот объект будет использоваться в качестве основы для поиска объектов данного типа. Обычно возвращаются только те объекты, которые находятся иерархически ниже |
|
Определение области действия поисковой иерархии. Она определяет, насколько «глубоко» следует проводить поиск в иерархии объектов. Это применимо только к ресурсам, поддерживающим иерархическую организацию объектов (например, ресурсы LDAP). Эта информация также используется для классификации объектов (вместе с |
|
Фильтр, определяющий набор объектов. Используется как для поиска, так и для классификации. Фильтры, указанные для подтипа, добавляются ко всем фильтрам, определенным в супертипе. |
|
Выражение, которое оценивается для проверки того, является ли ресурсный объект заданного типа. Предполагается, что он возвращает логическое значение. (Если условие отсутствует, предполагается, что оно всегда истинно, а именно классификация выполняется с использованием других средств.) Предпочтительно использовать декларативные средства для классификации, а именно базовый контекст и фильтр(ы). |
|
В каком порядке следует использовать эту спецификацию разграничения для классификации? Отсутствие значения означает, что его следует использовать в конце. |
|
Как следует использовать базовый контекст для классификации? (Смотрите ниже.) |
Таблица 2. Значения свойства baseContextClassificationUse
Значение |
Описание |
|---|---|
|
Базовый контекст должен использоваться (если он присутствует в разграничении). Если его нельзя применить, разграничение считается не соответствующим. |
|
Если базовый контекст неприменим, он используется. В противном случае оно игнорируется. Это настройка по умолчанию. |
|
Базовый контекст не используется для классификации. |