2

JCIFS 似乎有两种连接远程驱动器的模式,第一种是创建一个使用

SMBFile(path, new NtlmPasswordAuthentication(domain, username, password));

第二个将使用访客凭据

SMBFile(path);

我有一种情况,Java 批处理尝试连接到远程位置,我不会提前知道凭据,但运行应用程序的配置文件有权访问远程 SMB 位置。有没有办法使用当前正在运行的用户凭据,而无需提示他们?

4

1 回答 1

1

可能不是您要寻找的答案,但 JCIFS 是 CIFS 协议的完全纯 Java 实现。它绝对无法从操作系统继承凭据。

但是,如果您使用的是 Windows 平台,则可以使用 UNC 文件名来访问数据,例如

FileInputStream s = new FileInputStream("\\\\server\\share\\file.txt");

只要凭据可用于正在运行的 Windows 会话,您就应该使用用户自己的凭据。

于 2013-07-18T16:19:51.473 回答