我的计算机(Windows, JDK7更新21 x64),如mybox.domain2.company.com,连接到我公司的一个域。我可以通过三个不同的url访问一个站点:
http://mysite.domain1.company.com
或
http://XXX.XXX.XXX.XXX(ip format)
或
http://mysitealias
在IE, Firefox等中通过协商认证。这里domain1.company.com和domain2.company.com是我公司的两个域名。此站点位于IIS 7中,其身份验证为"协商"。
在google搜索并配置kerberos之后,我可以使用java中的URLConnection来访问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;
};
(请注意,所有主机名只是给出的例子)
Kerberos不是为处理IP地址而设计的。