Я настраиваю Apache для аутентификации по LDAP и требую наличия нескольких групп. Я сделал это с помощью операторов require, однако мне нужно, чтобы аутентификация прошла успешно, если присутствуют все группы, а не только одна. Как мне сказать Apache выполнить все операторы require?
Вам холодно попробовать "Удовлетворять"директива apache, например: удовлетворить все.
В противном случае вы можете изменить свой фильтр, чтобы требовать группы, например (&(ou=foo)(ou=bar))
Если вы используете службу ldap, которая поддерживает вложенные группы, вы можете создать другую группу, содержащую необходимые группы, а затем вместо этого иметь ссылку на эту группу в apache. Затем при обновлении любой из исходных групп автоматически обновляется вложенная группа.
Однако это может не подойти вам.
"Удовлетворять"здесь не сработает, потому что он регулирует только взаимодействие между" allow "и" require ", а не между несколькими директивами" require ".
Если ваш LDAP имеет атрибуты memberOf (вы можете включить их с помощью член наложения в OpenLDAP), вы можете использовать «require ldap-filter», чтобы требовать членства в более чем одной группе.
К сожалению, memberOf не реплицируется надежно, начиная с OpenLDAP 2.4.31, поэтому не полагайтесь на него, если вы также используете syncrepl.