【问题标题】:Tomcat internet explorer kerberos authentication 401 un authorizedTomcat Internet Explorer kerberos 身份验证 401 未经授权
【发布时间】:2016-04-15 15:42:04
【问题描述】:

我们将 tomcat 配置为使用 kerberos 进行 Windows 身份验证(我们需要 SSO)。
我们通过 Internet Explorer 从不同的客户端计算机发送 HTTP Get,浏览器返回 401 并且标头说 Negotiate。
我们将 Internet Explorer 配置为使用集成安全性,并将 tomcat 站点地址添加为本地 Intranet。

在我看到的tomcat日志上:

Loaded from Java config
>>> KdcAccessibility: reset
>>> KrbCreds found the default ticket granting ticket in credential cache.
>>> Obtained TGT from LSA: Credentials:
  client=wfuser@MY.DOM
  server=krbtgt/MY.DOM@MY.DOM
  authTime=20160111063609Z
  startTime=20160111063609Z
  endTime=20160111163609Z
  renewTill=null
  flags=INITIAL;PRE-AUTHENT
  EType (skey)=17
  (tkt key)=18
  Search Subject for SPNEGO ACCEPT cred (<<DEF>>, sun.security.jgss.spnego.SpNegoCredElement)
Search Subject for Kerberos V5 ACCEPT cred (<<DEF>>, sun.security.jgss.krb5.Krb5AcceptCredential)
Found ticket for wfuser@MY.DOM to go to krbtgt/NIA.DOM@MY.DOM expiring on Mon Jan 11 18:36:09 IST 2016

可能是什么问题?这是 Internet Explorer 的问题吗?或者可能是tomcat问题?

【问题讨论】:

  • 您是否检查过浏览器发回“授权”请求标头的 HTTP 跟踪(如 liveHTTPHeaders 插件)。在日志中看到的 'TGT' 由 Tomcat 本身使用......请参阅您的其他帖子
  • 您能告诉我们您的 login.conf 文件/设置吗? docs.oracle.com/javase/7/docs/jre/api/security/jaas/spec/com/…
  • 根据您的输出感觉有些不对劲。 Tomcat 必须为机器帐户使用 keytab,或者如果在 Windows 上运行,则必须访问机器帐户的凭据缓存。您的日志文件中没有发生任何事情。除非您显示异常和更多日志输出,否则无法为您提供帮助。

标签: active-directory tomcat7 single-sign-on windows-authentication kerberos


【解决方案1】:

客户端和 Tomcat 服务器似乎位于不同的 Kerberos 领域(由于您标记帖子的方式,我假设由 Active Directory 控制)。也就是说,Active Directory 域客户端位于 MY.DOM 中,而 Tomcat 服务器位于 NIA.DOM 中。要使其按预期工作,它们需要位于相同的 AD 域/Kerberos 领域。根据日志sn -p,客户端和KDC显示在同一个领域——MY.DOM——根据这个:

>>> Obtained TGT from LSA: Credentials:
  client=wfuser@MY.DOM
  server=krbtgt/MY.DOM@MY.DOM

但 Tomcat 服务器一定不能,因为它似乎在向客户端请求来自名为 NIA.DOM 的 Kerberos 领域的推荐票。

Found ticket for wfuser@MY.DOM to go to krbtgt/NIA.DOM@MY.DOM expiring on Mon Jan 11 18:36:09 IST 2016

检查 MY.DOM 和 NIA.DOM 之间的 AD 信任关系,确保它是双向的并且没有损坏。

【讨论】:

    猜你喜欢
    • 2018-07-09
    • 1970-01-01
    • 2018-01-23
    • 1970-01-01
    • 2013-12-10
    • 1970-01-01
    • 1970-01-01
    • 2021-09-28
    • 2020-10-25
    相关资源
    最近更新 更多