我正在努力争取一段时间把事情头对头,并解决这个问题,但没有运气。 我想通过AD使用Kerberos来验证我的Java应用程序用户。 我创建了KDC如下:使用Kerberos和WAS7对应用程序用户进行身份验证
[libdefaults]
default_realm = X.LOCAL
default_tkt_enctypes = des-cbc-md5 des-cbc-crc des3-cbc-sha1 rc4-hmac arcfour-hmac arcfour-hmac-md5 aes128-cts-hmac-sha1-96
default_tgs_enctypes = des-cbc-md5 des-cbc-crc des3-cbc-sha1 rc4-hmac arcfour-hmac arcfour-hmac-md5 aes128-cts-hmac-sha1-96
permitted_enctypes = des-cbc-md5 des-cbc-crc des3-cbc-sha1 rc4-hmac arcfour-hmac arcfour-hmac-md5 aes128-cts-hmac-sha1-96
[realms]
X.LOCAL = {
kdc = machine_name.X.LOCAL
default_domain = X.LOCAL
}
[domain_realm]
.X.LOCAL = X.LOCAL
如下我定义了一个新的境界: •全局安全性> JAAS - 应用程序登录 •创建一个新的登录名为“客户端”和分配的com.ibm .ws.security.auth.kerberos.Krb5LoginModuleWrapperClient资源。
在代码级别我设置的路径为KDC:System.setProperty(java.security.krb5.conf, “KDC” path);
试图登录:
loginContext = new LoginContext(moduleName, getUsernamePasswordHandler(userName, secret));
loginContext.login();
我越来越:
登录错误:com.ibm.security.krb5 .KrbException,状态码:14消息:KDC不支持加密类型
你会说加密类型不支持:)我知道。
问: 1)我错过了什么?(在此停留超过1周) 2)我在做什么错了?
谢谢你的时间。
我前段时间解决了这个问题。在我冷静下来之后,我做了很多你所建议的事情。我已将kbr5.conf设置为env属性,并仅使用rc4-hmac,des-cbc-md5进行加密。对于后期更新抱歉。 – user1531547 2012-09-03 14:07:41