Kerberos加密級別不支援的問題

weixin_34208283發表於2018-12-03

1.問題現象

Zookeeper開啟kerberos認證後出現如下問題,不支援的加密級別:

2017-02-23 09:20:57,048 [myid:1] - WARN  [NIOWorkerThread-1:ZooKeeperServer@1080] - Client failed to SASL authenticate: javax.security.sasl.SaslException: GSS initiate failed [Caused by GSSException: Failure unspecified at GSS-API level (Mechanism level: Encryption type AES256 CTS mode with HMAC SHA1-96 is not supported/enabled)]

2.原因分析

由於"Java密碼擴充套件(JCE)無限制許可權策略檔案"導致的,是jdk安裝包的問題,需要替換jdk。
因為某些國家的進口管制限制,Java釋出的執行環境包中的加解密有一定的限制。
比如預設不允許256位金鑰的AES加解密,解決方法就是修改策略檔案。

3.解決方法

需要在替換java安全目錄下面的兩個策略:
把local_policy.jar,US_export_policy.jar替換
目錄java/jdk1.7.0_80/jre/lib/security裡的jar包即可

4.參考網址:

http://czj4451.iteye.com/blog/1986483
https://knowledge.safe.com/articles/395/enabling-aes256-in-the-java-runtime-environment-fo.html
http://www.oracle.com/technetwork/java/javase/downloads/jce-7-download-432124.html

相關文章