Безопасно ли использовать реализацию 1.2.840.113556.1.4.1941 в случае циклических зависимостей?
Прекращается ли использование 1.2.840.113556.1.4.1941 изящно, если есть циклические зависимости в dl (a -> b -> ситуация)
1 ответ
В LDAP_MATCHING_RULE_IN_CHAIN
OID отлично справляется с циклическими зависимостями. Это им не подавится.
Например, я рекомендовал использовать это при определении, является ли пользователь членом группы.
Подумайте, есть ли у вас такая установка:
Group A
Group B
Group B
User 1
Group A
И вы хотите знать, если User 1
является членом Group A
. Вы бы установили базу поиска наGroup A
, и используйте этот запрос:
(member:1.2.840.113556.1.4.1941:=CN=User 1,OU=Users,DC=example,DC=com)
Запрос будет успешным (он не захлебнется круговыми группами), и вы получите 1 результат (Group A
), указывая, что да, User 1
является членом Group A
. (Если вы не получили результатов, это будет означать, что пользователь не является членом группы)
Вы никогда не должны использовать LDAP_MATCHING_RULE_IN_CHAIN
условие, не ограничивая базу поиска или не используя другие условия (например, сопоставление определенной учетной записи), в противном случае вы получите очень неэффективный запрос, выполнение которого займет вечность, потому что он должен смотреть на всю цепочку членства для каждого существующего объекта.