Я пытаюсь следовать этому учебнику для spring-security-kerberos У меня есть таблица ключей с одним участником:
ktutil: rkt http-web.keytab
ktutil: l
slot KVNO Principal
---- ---- ---------------------------------------------------------------------
1 3 HTTP/aulfeldt.hta.nightly@WAD.ENG.HYTRUST.COM
Эта таблица ключей была сгенерирована при победеКонтроллер домена 2k8 с этой командой:
ktpass /out http-web.keytab /mapuser aulfeldt-hta-nightly@WAD.ENG.HYTRUST.COM /princ HTTP/aulfeldt.hta.nightly@WAD.ENG.HYTRUST.COM /pass *
, который был скопирован через тестовый веб-сервер, используемый в spnego.xml:
<bean class="org.springframework.security.extensions.kerberos.SunJaasKerberosTicketValidator">
<property name="servicePrincipal" value="HTTP/aulfeldt.hta.nightly@WAD.ENG.HYTRUST.COM" />
<property name="keyTabLocation" value="/WEB-INF/http-web.keytab" />
<property name="debug" value="true" />
</bean>
, но не может найтипринципал:
Key for the principal HTTP/aulfeldt.hta.nightly@WAD.ENG.HYTRUST.COM not available in
jndi:/localhost/spring-security-kerberos-sample-1.0.0.CI-SNAPSHOT/WEB-INF/http-web.keytab
[Krb5LoginModule] authentication failed
Unable to obtain password from user
Я попытался присоединить веб-сервер (Centos 5.5, tomcat6) к AD WAD.ENG.HYTRUST.COM и войти в систему, используя учетные данные AD, а затем использовать участника из / etc /krb5.keytab просто чтобы посмотреть, можно ли его прочитать ... тот же ответ.Я также перепробовал множество вариантов в верхнем и нижнем регистре имен.
ps проверил это из git этим утром.