You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Open Liberty配置SPNEGO后未获取用户GSSCredentials的问题排查

Open Liberty SPNEGO配置问题:未收到客户端委托GSS凭证警告

问题详情

执行SPNEGO登录时,控制台出现如下警告:

[WARNING ] CWWKS4310W: The client delegated GSSCredentials were expected to be received but were not found for user: user1@EXAMPLE.COM

当前server.xml中的SPNEGO配置:

<spnego
        servicePrincipalNames="HTTP/liberty1.example.com"
        krb5Config="C:/krb5.ini"
        krb5Keytab="C:/krb5.keytab"
        authFilterRef="myAuthFilter"
/>

预期结果是在主题中看到user1的GSS凭证(例如:Private Credential: [GSSCredential: user1@EXAMPLE.COM 1.2.840.113554.1.2.2 Initiate),而非上述警告。


解决方案

核心配置补充

该警告的本质是Open Liberty期望获取客户端委托的GSS凭证,但当前配置未开启凭证委托功能,同时客户端也未发送相关凭证。需要在spnego配置中添加两个关键属性:

  • allowDelegation="true":开启服务器接收客户端凭证委托的权限
  • delegateToServer="true":指定服务器保留客户端的委托凭证,以便后续使用

修改后的完整SPNEGO配置:

<spnego
        servicePrincipalNames="HTTP/liberty1.example.com"
        krb5Config="C:/krb5.ini"
        krb5Keytab="C:/krb5.keytab"
        authFilterRef="myAuthFilter"
        allowDelegation="true"
        delegateToServer="true"
/>

额外验证要点

除了服务器端配置,还需确认以下环节:

  • 客户端配置:浏览器需允许凭证委托。比如IE/Edge需将Liberty服务器地址加入「本地Intranet」区域,并启用「允许委派信任的网站」;Firefox需在about:config中设置network.negotiate-auth.delegation-uris包含服务器地址。
  • Kerberos KDC配置:服务主体HTTP/liberty1.example.com必须被配置为允许委派(在AD中可通过设置msDS-AllowedToDelegateTo属性实现,或创建主体时指定委派权限)。
  • Kerberos配置一致性:客户端与服务器的krb5.ini配置需一致,确保默认Realm、KDC地址等参数正确。

完成上述配置后重启服务器,重新登录即可在主题中看到预期的GSS凭证,警告也会消失。


内容的提问来源于stack exchange,提问作者Zach Hein

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.03 07:30:59