0

[CentOS 5.3、glassfish 3.1.1、jdk1.6.30 64bit、spnego R7]

我定义了一个 SPNEGO 过滤器来使用 Kerberos(基本模式)针对 AD 对用户进行身份验证。如果用户提供适当的凭据,则页面内容将发送给用户。但是如果认证不成功,则会向客户端返回一个带有 401 错误的空页面。我在 web.xml 中定义了一个 401 错误页面。

我的问题是:如果 SPNEGO 身份验证(==SPNEGO 过滤器)失败,如何向用户发送任何内容?我必须定义一些 SPNEGO 参数吗?或者如果之前的过滤器没有返回任何内容,我应该添加另一个过滤器来添加“登录失败”的内容吗?

4

1 回答 1

0

我认为 web.xml 中的错误页面设置应该做你想做的,但 SPNEGO 应该发送 403(登录失败)而不是 401(未授权)。我有一个类似的环境,但 SPNEGO 返回状态代码 403,它映射在我的 web.xml 中,如下所示:

<error-page>
    <error-code>403</error-code>
    <location>/access-forbidden.xhtml</location>
</error-page>
于 2012-12-17T13:42:56.703 回答