jcifs.smb.SmbAuthException尽管用户名和密码在Ubuntu上是正确的

时间:2016-07-01 13:28:21

标签: java ubuntu spring-boot ntlm smb

我们正致力于春季启动应用程序。在我们的应用程序中,我们必须从任何操作系统的远程机器共享文件我们共享文件夹以获取共享文件夹中存在的对象列表。我们正在使用SMB和NTLMAuthentication。

用于身份验证:

  NtlmPasswordAuthentication credential = new NtlmPasswordAuthentication(
                    informationStoreDefinition.getProperties().get(DOMAIN),
                    informationStoreDefinition.getProperties().get(USER),
                    informationStoreDefinition.getProperties().get(PASSWORD)
            );

稍后我们尝试使用代码获取共享文件夹列表:

 SmbFile file = ((CifsContainerObject) simpleObject).smbFile;
 SmbFile[] list = file.listFiles();

我们尝试过这些组合来访问/共享文件夹:

  • Windows操作系统到Ubuntu - 工作!!
  • Windows操作系统到Windows操作系统 - 工作!!
  • Ubuntu到Windows - 失败
  • Ubuntu到Ubuntu - FAILED

我们在以上两种情况下收到此错误: jcifs.smb.SmbAuthException:登录失败:未知用户名或密码错误。

代码抛出错误:SmbFile[] list = file.listFiles();。我们的用户名,密码和域都是正确的。我们在Windows网络上访问了Linux文件夹,我们成功地访问了共享文件夹以及我们在Windows机器上获取Linux共享文件夹的响应。那为什么抛出这个错误?

1 个答案:

答案 0 :(得分:2)

对于共享文件夹,我使用的步骤是 -

  • 右键单击要共享的文件夹

  • 点击属性

  • 转到“本地网络共享”标签

  • 选中其他框

然后按照这些链接 - https://askubuntu.com/questions/19361/cant-access-ubuntus-shared-folders-from-windows-7

http://ubuntuhandbook.org/index.php/2014/05/ubuntu1404-file-sharing-samba/