用jcifs连netapp的nas报用户名密码错的解决办法

使用jcifs库连接NetApp NAS时遇到SmbAuthException,提示用户名或密码错误。原因是jcifs发送的密码哈希值与NetApp不兼容。通过将jcifs.smb.lmCompatibility属性设置为2,从NTLMv1改为LMv2或NTLM,问题得到解决。参考NetApp社区,级别2提供了更好的安全性。
摘要由CSDN通过智能技术生成


netapp设置没问题,在windows里访问也没问题

用代码smbfile来连接就一直报

jcifs.smb.SmbAuthException: Logon failure: unknown user name or bad password.

最后终于查到jcifs发的不是密码而是密码的某个哈希值

修改方法是

jcifs.Config.setProperty( "jcifs.smb.lmCompatibility", "2");

默认是3,netapp不支持

参考文章  https://communities.netapp.com/thread/24257


又查了一下这个配置

This client can perform NTLM and LMv2 authentication. The default behavior is to use NTLM version 1. This can be changed by using this property with an integer that specifies the "level" of security:

    评论
    添加红包

    请填写红包祝福语或标题

    红包个数最小为10个

    红包金额最低5元

    当前余额3.43前往充值 >
    需支付:10.00
    成就一亿技术人!
    领取后你会自动成为博主和红包主的粉丝 规则
    hope_wisdom
    发出的红包
    实付
    使用余额支付
    点击重新获取
    扫码支付
    钱包余额 0

    抵扣说明:

    1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
    2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

    余额充值