首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >kinit错误- AD 2008身份验证

kinit错误- AD 2008身份验证
EN

Stack Overflow用户
提问于 2014-04-26 10:00:22
回答 1查看 105关注 0票数 1

我正在尝试使用AD凭据对我的应用程序进行身份验证。在创建krb5.ini文件之后,我使用kinit进行测试。我相信ini文件中的所有领域信息都是正确的,但在使用kinit进行测试时仍然收到以下错误。

代码语言:javascript
复制
Exception: krb_error 0 Cannot find any provider supporting ARCFOUR No error
KrbException: Cannot find any provider supporting ARCFOUR
    at
 sun.security.krb5.internal.crypto.ArcFourHmacEType.encrypt(ArcFourHm
 cEType.java:68)
    at
  sun.security.krb5.internal.crypto.ArcFourHmacEType.encrypt(ArcFourHm
    cEType.java:60)                                                                                                                                                                                                                        
    at sun.security.krb5.EncryptedData.<init>(EncryptedData.java:122)
    at sun.security.krb5.KrbAsReq.init(KrbAsReq.java:355)
    at sun.security.krb5.KrbAsReq.<init>(KrbAsReq.java:180)
    at sun.security.krb5.internal.tools.Kinit.<init>(Kinit.java:253)
    at sun.security.krb5.internal.tools.Kinit.main(Kinit.java:107)
 Caused by: java.security.NoSuchAlgorithmException: Cannot find any provider
 suporting ARCFOUR
    at javax.crypto.Cipher.getInstance(DashoA13*..)
    at
  sun.security.krb5.internal.crypto.dk.ArcFourCrypto.encrypt(ArcFourCrpto.java:279)
EN

回答 1

Stack Overflow用户

发布于 2020-10-27 16:11:25

您需要在krb5.ini配置和conf/security/java.security中启用RC4-HMAC

我认为RC4在Oracle JDK (>= 1.8.u060)中与MD5一起因为已知的不安全性而被列入黑名单,但MS Active Directory Kerberos实现对密钥交换是严格要求的。也许您必须通过从JDKs conf/ jdk.certpath.disabledAlgorithms /java.security的jdk.tls.disabledAlgorithms和jdk.certpath.disabledAlgorithms中删除RC4来重新启用它。

有关详细信息,请参阅https://www.java.com/en/configure_crypto.html

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23305736

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档