2016-02-04 18 views
1

У меня установлена ​​проверка подлинности Spnego на моем веб-сервере Tomcat 7. Он отлично работает для пользователей Ubuntu 14.04 и Windows 10. Тем не менее, все пользователи, использующие Chrome/Firefox/IE, получают следующую ошибку:Аутентификация Spnego Kerberos дает запрос «Ошибка повторения (34)» для пользователей Windows 7

GSSException: Failure unspecified at GSS-API level (Mechanism level: Request is a replay (34)) Я не могу определить причину этого. Как я могу отладить эту проблему, поскольку она специфична для пользователей Windows 7?

ответ

1

Проверьте, синхронизированы ли ваш сервер и клиенты.

+0

Это приведет к тому, что «часы слишком велики». –

+0

В любом случае, мои серверные и клиентские часы синхронизированы. – xennygrimmato

0

В моем случае, когда я работаю с Solr, это исключение запускается. Затем я внес изменения в Solrconfig.xml для поддержки Kerberos.

<directoryFactory name="DirectoryFactory" class="solr.HdfsDirectoryFactory"> 
     <str name="solr.hdfs.home">hdfs://nas.XYZ.lan:8020/user/solr</str> 
     <bool name="solr.hdfs.blockcache.enabled">true</bool> 
     <int name="solr.hdfs.blockcache.slab.count">1</int> 
     <bool name="solr.hdfs.blockcache.direct.memory.allocation">true</bool> 
     <int name="solr.hdfs.blockcache.blocksperbank">16384</int> 
     <bool name="solr.hdfs.blockcache.read.enabled">true</bool> 
     <bool name="solr.hdfs.nrtcachingdirectory.enable">true</bool> 
     <int name="solr.hdfs.nrtcachingdirectory.maxmergesizemb">16</int> 
     <int name="solr.hdfs.nrtcachingdirectory.maxcachedmb">192</int> 
     <bool name="solr.hdfs.security.kerberos.enabled">true</bool> 
     <str name="solr.hdfs.security.kerberos.keytabfile">/etc/krb5.keytab</str> 
     <str name="solr.hdfs.security.kerberos.principal">solr/[email protected]</str> 
    </directoryFactory> 
+0

Вы наконец нашли решение своей проблемы? Спасибо. –

+0

есть. В большинстве случаев это работало для меня. –

0

У меня возникла эта проблема, когда я передавал токен, который был сгенерирован один раз и повторно использовал один и тот же токен в заголовке.

val tokenLoadedOnce=KrbHttpClient.token get.addHeader("Authorization", s"Negotiate $tokenLoadedOnce")

Вместо этого, когда я сгенерировал токен EVERYTIME и добавил его в заголовок, эта проблема была решена.

get.addHeader("Authorization", s"Negotiate ${KrbHttpClient.token}")

 Смежные вопросы

  • Нет связанных вопросов^_^