当前位置: 首页 > 知识库问答 >
问题:

使用Java身份验证从共享路径读取文件。木卫一。文件

罗寒
2023-03-14

我有一个加密类(PGP加密util),只接受java.io.File对象。用于加密的内部方法(位于jar中)只接受java.io.File作为参数。

我需要从共享路径中读取一个文件,其中身份验证需要访问和ancrypt相同的文件,并写回相同的共享路径。所以我使用jcifs文件读取。它读取文件为SmbFile格式

我这里有2个疑惑

1)是否有可能将SmbFile转换为java.io.文件,而不将内容写入实际文件(甚至不是临时文件)?并将File对象传递给文件加密方法,如下所示。

File someFile = ConvertSmbFileToFile(SmbFile smb);
pgpEncryptionService.encryptFile(someFile,true);

2) 如果无法执行上述操作,是否可以使用SMB文件类型作为输入进行PGP加密?有人能分享相关链接吗?

我的项目安全只希望通过网络传输加密文件。因此,将SMB文件写入java。木卫一。文件似乎不是一个选项。即使是写入临时文件,也类似于允许未加密的数据通过网络层传输。所以临时文件也超出了范围。

共有2个答案

冯招
2023-03-14

我假设其目的是加密文件,而不是加密SMB流量。然后,解决方案可能是一个围绕SmbFile的包装类,它扩展了java。木卫一。文件我想您所需要的就是通过SmbFile的相同方法实现getInputStream()。

曾德水
2023-03-14

SMB 3及以上版本(3.1.1)支持加密/解密,因此您可以使用支持这些SMB方言的SMB库。(SMB 3支持ccm算法,3.1.1支持gcm)您只需确保其他主机支持SMB 3及以上版本。

如果我没有弄错的话,只有可视系统jNQ产品支持这些中小企业方言。

我认为jCIFS和jNQ支持OutStreamInputStream,所以也许你可以用它来代替java.io.file

祝你好运

 类似资料:
  • 问题内容: 有没有办法从Windows上的网络共享位置读取文件? 例如,假设我有这个简单的代码,该代码从 Addons 文件夹中读取一个名为 readMe.txt 的文本文件。 __ 我使用Windows批处理 runme.bat 执行该文件, 仅当我将带有ReadMe.txt,Sample.class,runme.bat文件的Addons文件夹放置在本地驱动器中时,蝙蝠才会运行并执行上述类。 将

  • 问题内容: 感谢使用此线程如何使用Java从Internet下载和保存文件? 我知道如何下载文件,现在的问题是我需要在我要下载的服务器上进行身份验证。这是Subversion服务器的http接口。我需要查询哪个领域? 使用最后一条评论中发布的代码,我得到了这个异常: 谢谢, 问题答案: 您扩展Authenticator类并进行注册。链接上的javadocs解释了如何。 我不知道这是否可以通过nio

  • 我看到了很多代码和示例,但我的应用程序还不能正常工作,我想在文件夹,如存储/模拟/0/Android/data/ir。esfandune。mohsen/files/Download/cnt\u imags/images/n1/n1(18)。jpg,我在清单中定义提供者: 和XML: 我的代码是: 但是当发送到其他应用程序时,不要分享任何东西

  • 问题内容: 我有一台服务器,使用Java应用程序处理数据库和文件。当我启动我的应用程序时,我使用以下命令提供有关文件访问服务器的报告: 每次启动我的应用程序(重新启动计算机后),即使服务器已打开,我也会得到错误的响应。原因是因为我必须提供另一个用户的身份验证。我要做的是通过要求我输入用户名/密码的Windows访问服务器,然后我得到了有关对服务器文件访问的真实响应。 有没有办法 通过Java 而不

  • 我有一个带有图形编辑器的项目(如GMF技术),我需要读取一个文件。Jar库位于项目的类路径上。 VectorSync_1.0.0.201403121100.jar具有如下结构: 矢量同步: 图标/矢量同步。gif 这个导入的项目的类路径。Jar文件是: 我使用此方法尝试访问. xml文件: 但使用的方法始终返回null。 你能帮我解决这个问题吗 谢谢

  • 我有一个applet类,它试图读取客户端系统中的文件。但是当访问这个文件时,我得到了java。木卫一。文件传输错误 JAVA安全AccessControlException:访问被拒绝(“java.io.FilePermission”C:\my\u download\mytext\u 11May“read”) 我可以使用JRE 1.6访问该文件。但是当小程序使用jre1时。8将引发上述异常。 我的