2012-05-18 2 views
0

[CentOS 5.3, GlassFish 3.1.1, jdk1.6.30 64-битной, SPNEGO R7]не показывать пустую страницу после неудачной аутентификации

Я определил SPNEGO фильтр для аутентификации пользователей AD с использованием Kerberos (основной режим). Если пользователь предоставляет надлежащие credencials, содержимое страницы отправляется пользователю. Но если аутентификация не удалась, пустая страница с ошибкой 401 возвращается клиенту. У меня есть страница для ошибки 401, определенной в web.xml.

Мой вопрос: как отправить пользователю любой контент, если аутентификация SPNEGO (== SPNEGO filter) не удалась? Должен ли я определять какой-то параметр SPNEGO? Или я должен добавить еще один фильтр, чтобы добавить содержимое «не удалось войти», если предыдущий фильтр ничего не возвращает?

+0

Kerberos является не о сложной пользователю ЕД/р, а для обмена билетов. Фильтр разбит по дизайну. –

ответ

0

Я думаю, что параметр страницы ошибки в вашем web.xml должен делать то, что вы хотите, но SPNEGO должен отправить 403 (сбой входа) вместо 401 (неавторизованный). У меня аналогичная среда, но SPNEGO возвращает код состояния 403, который отображается в моем web.xml, как это:

<error-page> 
    <error-code>403</error-code> 
    <location>/access-forbidden.xhtml</location> 
</error-page> 
Смежные вопросы