如何秘密地将功能上传到AWS中的S3存储桶

时间:2018-07-12 10:17:11

标签: amazon-s3 file-upload

当前我们正在连接一个文件共享路径以上传文件,现在我需要将此文件共享路径更改为s3存储桶。我需要连接S3存储桶以上传文件。 这是示例代码

import java.util.Vector;
import com.jcraft.jsch.*;


public class JSCH_FTP_Connection {

    public static void main(String[] args) throws JSchException, SftpException {

        Session session = null;
        JSch jsch = new JSch();
        ChannelSftp channelSftp = null;
         Channel     channel = null;
        String remoteDirectory = "/test";
        String getFtpHost="http://localhost:";
        String getFtpUser="test";
        String getFtpPasswd="test";
        session = jsch.getSession(getFtpUser,getFtpHost);
        java.util.Properties config = new java.util.Properties();

        config.put("StrictHostKeyChecking", "no");
        session.setPassword(getFtpPasswd);
        session.setConfig("cipher.s2c", "aes128-ctr,aes128-cbc,3des-ctr,3des-cbc,blowfish-cbc,aes192-cbc,aes256-cbc,aes256-ctr");
        session.setConfig(config);

        session.connect();
        channel = session.openChannel("sftp");
        channel.connect();
        channelSftp = (ChannelSftp)channel;
        channelSftp.cd(remoteDirectory);
        Vector filelist = channelSftp.ls(remoteDirectory);
        for(int i=0; i<filelist.size();i++){
            LsEntry entry = (LsEntry) filelist.get(i);
            System.out.println(entry.getFilename());
        }

    }

}

我正在使用jcsh.jar来上传文件。

1 个答案:

答案 0 :(得分:1)

AWS sdk可用于JAVA或Scala与s3进行交互。 请参阅以下链接以获取更多详细信息: https://aws.amazon.com/sdk-for-java/ https://docs.aws.amazon.com/AmazonS3/latest/dev/UploadObjSingleOpJava.html

对于python,您可以使用boto3库。