问题
尝试在 WebSphere 应用程序服务器 (WAS ND,单节点) 9.0.0.7 上启用 SPNEGO 时出现错误。我在另一台服务器上成功了,但对于这台服务器,我找不到问题所在。
我收到以下错误消息:
org.ietf.jgss.GSSException, major code: 13, minor code: 0 major string: Invalid credentials minor string: Cannot get credential from JAAS Subject for principal: HTTP/[email protected]
从跟踪文件中可以看到:
javax.security.auth.login.FailedLoginException: Cannot retrieve key from keytab HTTP/[email protected]
配置
- 在域控制器上:
setspn -A HTTP/server.aa.bbb.ccc AD-ACCOUNT-1
ktpass -out AD-ACCOUNT-1.keytab -princ HTTP/[email protected] -mapuser AD-ACCOUNT-1 -crypto AES256-SHA1 -ptype KRB5_NT_PRINCIPAL /pass <PASSWORD>
- 已成功使用用户 配置 WAS 的 LDAP 连接
AD-ACCOUNT-1
。 - Keytab 存储为
/app/sysx/WebSphere/AppServer/AD-ACCOUNT-1.keytab
$AdminTask createKrbConfigFile {-krbPath /app/sysx/WebSphere/AppServer/profiles/InfoSphere/krb5.conf -realm DDDDDDD.BBB.CCC -kdcHost ddddddd.bbb.ccc -dns ddddddd.bbb.ccc -keytabPath /app/sysx/WebSphere/AppServer/AD-ACCOUNT-1.keytab -encryption aes256-cts-hmac-sha1-96}
- WAS Admin Web 控制台:全局安全 > SPNEGO Web 身份验证
- Kerberos 配置文件:
/app/sysx/WebSphere/AppServer/profiles/InfoSphere/krb5.conf
- 密钥表:
/app/sysx/WebSphere/AppServer/AD-ACCOUNT-1.keytab
- SPNEGO 过滤器:主机名:
server.aa.bbb.ccc
Kerberos 领域名称:DDDDDDD.BBB.CCC
过滤条件:request-url^=ibm/iis/igc/services|ibm/iis/igc/secure|ibm/iis/igc-rest;request-url!=noSPNEGO
修剪:Checked
- Kerberos 配置文件:
我尝试根据/etc/hosts
在网上找到的类似案例添加所有别名,但没有帮助。