Вот обзор настройки:
- У меня есть многоузловая установка WordPress 3.4.2.
- Я установил подключаемый модуль Active Directory Authentication Integration, чтобы пользователи могли использовать свои учетные данные AD. Это также позволяет назначать группы AD каждому сайту, чтобы администраторам сайта не приходилось вручную назначать разрешения.
- Я установил плагин « Конфиденциальность в сети» , поэтому необходимо войти на определенные сайты, прежде чем вы сможете увидеть какой-либо контент. Анонимные пользователи видят только страницу входа.
Во многих отношениях эта установка работает. У меня, однако, есть одна проблема, которая мешает мне перейти на нашу первичную многопользовательскую установку WordPress:
- Боб является членом группы «Поддержка ИТ» в AD.
- Боб также является членом группы «Пользователи домена» в AD.
- Главный сайт (www.mysite.com) заблокирован, чтобы разрешить только "
Domain Users
" членам войти в систему. - Суб-сайт (www.mysite.com/itsupport) заблокирован, чтобы только "
IT Support
" участники могли войти в систему. - Боб посещает www.mysite.com и получает запрос на аутентификацию. Он вводит свои учетные данные AD и допускается на сайт.
- Теперь, когда он вошел на сайт www.mysite.com, Боб щелкает ссылку, чтобы перейти на сайт www.mysite.com/itsupport, и получает сообщение об ошибке, что он не является участником сайта.
- Похоже, что пользовательская запись не была создана в базе данных WordPress для этого подузла.
- Боб выходит из www.mysite.com.
- Теперь, когда он вышел из системы, Боб переходит на сайт www.mysite.com/itsupport и получает запрос на аутентификацию. Он вводит свои учетные данные AD и допускается на сайт.
- Похоже, что пользовательская запись в базе данных WordPress создается в этот момент для этого подузла.
- Теперь, если он выйдет из системы и зайдет на сайт www.mysite.com, он сможет без проблем перейти на сайт поддержки.
Если я удаляю записи пользователя Боба для обоих сайтов и отключаю плагин «Сетевая конфиденциальность», Боб может войти на сайт www.mysite.com, а затем перейти на его сайт поддержки. Но если я удаляю его записи и снова включаю плагин Network Privacy, проблема снова появляется.
У меня была такая же проблема с другим плагином конфиденциальности, хотя я не могу вспомнить, какой именно.
Если вы можете определить проблему или настроить нечто подобное, я готов попробовать что угодно, если я отвечаю основным критериям использования групп AD и возможности заблокировать определенные сайты.
Ответы:
Попробуйте другой подход. Вместо использования плагинов, я предлагаю немного изменить WordPress, как описано в следующем ответе.
/programming//a/39195424/3157038
Так что в вашем случае вы должны настроить установку WordPress следующим образом:
В дополнение к конфигурации, указанной в ответе, с которым я связан, добавьте следующее в файлы wp-config обеих установок wordpress:
источник
Если у вас установлена многосайтовая установка, вам следует переключить сайт технической поддержки ИТ на поддомен.
Вы, вероятно, испытываете несоответствие имени пользователя cookie. Поскольку он установлен в корне домена, он одинаков для обоих сайтов. Так что если вы настроите support.example.com, это должно быть яснее, чем example.com/support
Если только у меня нет полного понимания, в этом случае попробуйте другой плагин, чтобы ограничить содержание для пользователя, и не запускайте его как суб-сайт.
источник