使用JCIFS上传文件至NAS设备(Logon failure: unknown user name or bad password)解决

使用JCIFS上传文件至NAS设备(NETAPP FAS3140)
知识点:
1、安全认证方式
 
问题
jcifs.smb.SmbAuthException: Logon failure: unknown user name or bad password.
at jcifs.smb.SmbTransport.checkStatus(SmbTransport.java:596)
at jcifs.smb.SmbTransport.send(SmbTransport.java:722)
at jcifs.smb.SmbSession.sessionSetup(SmbSession.java:354)
at jcifs.smb.SmbSession.send(SmbSession.java:239)
at jcifs.smb.SmbTree.treeConnect(SmbTree.java:176)
at jcifs.smb.SmbFile.doConnect(SmbFile.java:925)
at jcifs.smb.SmbFile.connect(SmbFile.java:974)
at jcifs.smb.SmbFile.connect0(SmbFile.java:890)
at jcifs.smb.SmbFile.queryPath(SmbFile.java:1355)
at jcifs.smb.SmbFile.exists(SmbFile.java:1437)
at com.indigopacific.customagent.tool.FileUtil.IsFileExist(FileUtil.java:301)
at com.indigopacific.customagent.UploadAndUpdatePdfUseJcifsAgent.ePolicyIsExist(UploadAndUpdatePdfUseJcifsAgent.java:312)
at com.indigopacific.customagent.UploadAndUpdatePdfUseJcifsAgent.execute(UploadAndUpdatePdfUseJcifsAgent.java:61)
at com.indigopacific.customagent.test.Test.main(Test.java:32)
jcifs.smb.SmbAuthException: Logon failure: unknown user name or bad password.
at jcifs.smb.SmbTransport.checkStatus(SmbTransport.java:596)
at jcifs.smb.SmbTransport.send(SmbTransport.java:722)
at jcifs.smb.SmbSession.sessionSetup(SmbSession.java:354)
at jcifs.smb.SmbSession.send(SmbSession.java:239)
at jcifs.smb.SmbTree.treeConnect(SmbTree.java:176)
at jcifs.smb.SmbFile.doConnect(SmbFile.java:925)
at jcifs.smb.SmbFile.connect(SmbFile.java:974)
at jcifs.smb.SmbFile.connect0(SmbFile.java:890)
at jcifs.smb.SmbFile.queryPath(SmbFile.java:1355)
at jcifs.smb.SmbFile.exists(SmbFile.java:1437)
at com.indigopacific.customagent.tool.FileUtil.IsFileExist(FileUtil.java:301)判断文件是否存在失败:Logon failure: unknown user name or bad password.

at com.indigopacific.customagent.UploadAndUpdatePdfUseJcifsAgent.ePolicyIsExist(UploadAndUpdatePdfUseJcifsAgent.java:312)
at com.indigopacific.customagent.UploadAndUpdatePdfUseJcifsAgent.execute(UploadAndUpdatePdfUseJcifsAgent.java:61)
at com.indigopacific.customagent.test.Test.main(Test.java:32)
 
jcifs.smb.SmbAuthException: Logon failure: unknown user name or bad password.
at jcifs.smb.SmbTransport.checkStatus(SmbTransport.java:596)
at jcifs.smb.SmbTransport.send(SmbTransport.java:722)
at jcifs.smb.SmbSession.sessionSetup(SmbSession.java:354)
at jcifs.smb.SmbSession.send(SmbSession.java:239)
at jcifs.smb.SmbTree.treeConnect(SmbTree.java:176)
at jcifs.smb.SmbFile.doConnect(SmbFile.java:925)
at jcifs.smb.SmbFile.connect(SmbFile.java:974)
at jcifs.smb.SmbFile.connect0(SmbFile.java:890)
at jcifs.smb.SmbFile.queryPath(SmbFile.java:1355)
at jcifs.smb.SmbFile.exists(SmbFile.java:1437)
at com.indigopacific.customagent.tool.FileUtil.IsFileExist(FileUtil.java:301)
at com.indigopacific.customagent.UploadAndUpdatePdfUseJcifsAgent.ePolicyIsExist(UploadAndUpdatePdfUseJcifsAgent.java:312)
at com.indigopacific.customagent.UploadAndUpdatePdfUseJcifsAgent.execute(UploadAndUpdatePdfUseJcifsAgent.java:61)
at com.indigopacific.customagent.test.Test.main(Test.java:32)
java.sql.SQLException: 关闭的连接
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:146)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:208)
at oracle.jdbc.driver.PhysicalConnection.rollback(PhysicalConnection.java:1133)
at com.indigopacific.customagent.UploadAndUpdatePdfUseJcifsAgent.execute(UploadAndUpdatePdfUseJcifsAgent.java:117)
at com.indigopacific.customagent.test.Test.main(Test.java:32)

解决办法
   参考网址:https://communities.netapp.com/thread/24257
在使用JCIFS上传前加上下面这句话

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

 

原因是:

NAS设备的身份认证方式为NTLM,而JCIFS默认的身份认证方式为NTLMv2.



  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值