Проведя некоторое время, в том числе просматривая форумы docussion на sourceforge, я не смог запустить механизм пропуска-аутентификации SPNEGO.Кажется, нет примера конфигурации.Я открыл вопрос SPNEGO на странице sourceforce, но сейчас я применил обходной путь.
Я взял последнюю сборку spnego.(build r9, скачано здесь ).
В классе SpnegoHttpFilter Я создал глобальную переменную под названием "excludePattern".
private String excludePattern = null;
В моем web.xml моего веб-приложения я создал новый параметр init следующим образом:
<init-param>
<param-name>excludePattern</param-name>
<param-value>.*rest.*</param-value>
</init-param>
В классе SpnegoHttpFilter Мне нужно прочитатьпараметр web.xml выглядит следующим образом:
this.excludePattern = filterConfig.getInitParameter("excludePattern");
Afterwords, в классе SpnegoHttpFilter Я иду в функцию doFilter () и вставляю следующее:
String url = httpRequest.getRequestURL().toString();
if (Pattern.matches(this.excludePattern, url)) {
chain.doFilter(request, response);
LOGGER.fine("Excluded URL requested");
return;
}
Теперь код проверяет данный шаблон по запрошенному URL.Если шаблон является частью URL, аутентификация будет пропущена.
Надеюсь, скоро сделаю оригинальное решение, созданное spnego developpers.Пока я не использую этот обходной путь.