Мой компьютер (Windows, JDK7 update 21 x64), такой как mybox.domain2.company.com, подключен к домену моей компании. Я могу получить доступ к сайту в трех различных сайтах:Почему аутентификация Kerberos в Java не поддерживает прямой доступ к IP или доступ к псевдониму хоста
http://mysite.domain1.company.com
или
http://XXX.XXX.XXX.XXX(ip format)
или
http://mysitealias
через переговоры аутентификации в IE, Firefox и т.д. Здесь domain1.company.com и domain2.company.com - это два домена в моей компании. Этот сайт размещен в IIS 7, а его аутентификация - «Negotiate».
После прибегая к помощи и настройки Kerberos, я могу использовать URLConnection в Java, чтобы получить доступ к
http://mysite.domain1.company.com
. Тем не менее, я могу использовать IP или хост-псевдоним в браузерах для этого, но не в Java. Может ли кто-либо получить прямой доступ к IP или доступ к алиасу хоста?
krb5.conf:
[libdefaults]
default_realm = DOMAIN2.COMPANY.COM
default_tkt_enctypes = des3-cbc-sha1 des-cbc-md5 des-cbc-crc
default_tgs_enctypes = des3-cbc-sha1 des-cbc-md5 des-cbc-crc
[domain_realm]
.domain1.company.com = DOMAIN1.COMPANY.COM
.domain2.company.com = DOMAIN2.COMPANY.COM
login.conf:
com.sun.security.jgss.krb5.initiate {
com.sun.security.auth.module.Krb5LoginModule required;
};
(. Пожалуйста, обратите внимание, все имена хостов просто выдаются, например)
Возможно, это возможно, но 1. Браузеры могут получить доступ к странице через переговоры IIS. Я хочу знать, как браузеры справляются с этим. 2. Даже если IP не поддерживается, а как насчет псевдонимов доменов? –
Просто потому, что это переговоры. Если Kerberos терпит неудачу, браузер вернется к NTLM. –
Я также думал, что может быть какое-то отступление. Но я думаю, что правильно обработал NTLM (можно получить доступ к другим сайтам NTLM), но сайт, о котором мы говорили, не может инициировать часть аутентификации ntlm моего кода. Поэтому, если мы сможем правильно справиться с этим, проблема будет решена. Спасибо за вашего гида. Можете ли вы дать дополнительную информацию о том, как отступить и справиться с этим на Java? –