我在Linux服务器上的Plone CMS安装中使用netsight.windowsauthplugin版本2.3.1。域/域是一个Windows域。 我的sysadmin给了我一个.keytab文件并设置了DNS A和PTR记录,我已经配置了/etc/krb5.conf(就像我在另一台服务器上的spring java webapp一样),配置了zope,但是当我尝试从我的电脑上使用Intrernet Explorer登录,我收到一个错误:
GSSError :(('未指定的GSS失败。次要代码可能提供更多 信息',851968),('找不到与HTTP / @'匹配的密钥表条目, 39756033))
我错过了什么?我的plone python解释器无法解析一个正确的名称?它无法读取keytab或krb5.conf文件?
答案 0 :(得分:0)
在SSO工作之前,有很多可能/可能出错(或必须正确)。要直接关注错误报告,似乎Plone中的PAS插件无法正确获取GSSAPI服务名称。
在github(https://github.com/netsight/netsight.windowsauthplugin)的最新主版本中,有一个' GSSAPI服务'您可以添加到存储在acl_users中的SPNEGO对象的属性。使用此版本并将GSSAPI服务属性设置为' HTTP@www.mydomain.com'。
注意' @'在这里,我认为默认值netsight.windowsauthplugin在计算添加' /'的位置时也是错误的。作为分隔符(暗示它是SPN,但它是对kerberos库的GSSAPI服务提示。
如果在此之后遇到其他问题,请首先尝试通过在启动Plone站点之前添加KRB5_TRACE = / location /到/ krbtrace-mysite.log环境变量来启用kerberos库跟踪(假设您可以从一些unixy环境中的终端)。这个KRB5_TRACE只适用于较新的kerberos版本,但是当你必须进一步调试时,它将为你提供更多的洞察力。