Может ли пользователь с отключенной учетной записью просматривать "Слияние" анонимно?
Я использую Confluence 3.5.13.
У меня есть SSO-аутентификация для нашего леса Active Directory, работающего с использованием плагина NTLMv2 от TechTime.
Пользователи с активной учетной записью в Confluence входят в систему автоматически, а пользователи без учетной записи могут просматривать пространства как анонимные. Здесь нет проблем.
Однако существует проблема с пользователями, у которых есть учетная запись в базе данных Confluence, которая была отключена. Что бы они ни пытались получить, они получают страницу с надписью: "Вам не разрешено выполнять это действие".
У меня такой вопрос: возможно ли настроить Confluence так, чтобы человек с отключенной учетной записью мог просматривать как анонимный пользователь?
Удаление учетной записи пользователя невозможно из-за ссылок на контент, который они добавили в прошлом. Они могут выйти из системы, но как только они перейдут на другую страницу, SSO снова аутентифицирует их, и им отказывают в доступе.
Я думаю, что мне нужен способ предоставить пользователям с отключенными учетными записями глобальное разрешение "Использовать слияние", сохраняя при этом их отключенный статус для других целей.
Я также разместил этот вопрос на форумах Atlassian, так что гонка идет на хороший ответ.;-)
1 ответ
От Эда в TechTime:
Можно заставить IOPlex Jespa (библиотеку, которая фактически выполняет аутентификацию NTLM под капотом) устанавливать анонимную идентификацию в сеанс при выходе из системы. Это предотвратит повторный вход пользователей в систему сразу после явного выхода из системы, но также исключит возможность повторного входа в систему, просто нажав на что-нибудь за пределами страницы выхода из системы. Если вы хотите пойти по этому пути, просто добавьте / измените это в определении фильтра Jespa в web.xml:
<init-param>
<param-name>http.parameter.anonymous.name</param-name>
<param-value>logout</param-value>
</init-param>
<init-param>
<param-name>http.parameter.logout.name</param-name>
<param-value>logout</param-value>
</init-param>
<init-param>
<param-name>fallback.location</param-name>
<param-value>/login.action?logout=true</param-value>
</init-param>
Это говорит Джеспе 3 вещи:
- если вы видите параметр выхода из системы в URL, выполните выход из системы.
- если вы видите параметр выхода из системы в URL, установите анонимную личность
- если по какой-то причине аутентификация не удалась - перейдите в форму входа и установите анонимную идентификацию, пока вы находитесь на ней
Отсюда я также добавил некоторый код в notpermitted.vm для перенаправления в logout.action, а также login.vm для перенаправления на домашнюю страницу при выходе из системы. Это клочок, но Эд сказал, что они собираются обновить плагин, чтобы не входить в систему отключенного пользователя.