我对如何继续感到有些困惑。我使用存档(节点 js 模块)作为将数据写入 zip 文件的一种方式。目前,当我写入文件(本地存储)时,我的代码可以正常工作。
var fs = require('fs');
var archiver = require('archiver');
var output = fs.createWriteStream(__dirname + '/example.zip');
var archive = archiver('zip', {
zlib: { level: 9 }
});
archive.pipe(output);
archive.append(mybuffer, {name: ‘msg001.txt’});
Run Code Online (Sandbox Code Playgroud)
我想修改代码,以便存档目标文件是 AWS S3 存储桶。查看代码示例,我可以在创建存储桶对象时指定存储桶名称和键(和主体),如下所示:
var s3 = new AWS.S3();
var params = {Bucket: 'myBucket', Key: 'myMsgArchive.zip' Body: myStream};
s3.upload( params, function(err,data){
…
});
Or
s3 = new AWS.S3({ parms: {Bucket: ‘myBucket’ Key: ‘myMsgArchive.zip’}});
s3.upload( {Body: myStream})
.send(function(err,data) {
…
});
Run Code Online (Sandbox Code Playgroud)
关于我的 S3 示例,myStream似乎是一个可读的流,我很困惑如何根据archive.pipe …
我有点困惑。我们已将 v7 Tomcat 服务器配置为仅使用 TSLv1.2 与连接的浏览器进行通信,并且我们指定了一组受限制的密码。使用 Firefox 浏览器(v60.3.0esr 64 位)。我们能够建立连接,但奇怪的是在我连接到站点后,我注意到商定的密码不在配置的 tomcat 密码列表中。
我的印象是,在配置 http 连接对象时,服务器作为 hello 连接否定的一部分会将连接限制为可用密码列表?我错过了什么?如果缺少 ciphers 参数,则可用密码列表将仅限于在 JVM 上配置的密码(这是我的理解)。因此,我是否还需要将 JVM 中的密码限制为我在 http 连接器元素中指定的同一组?
详细信息:Tomcat(v 7.0.77 java 1.8.0_151)
<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
maxThreads="150" scheme="https" secure="true" allowTrace="false"
clientAuth="false" sslProtocols="TLS" sslEnabledProtocols="TLSv1.2"
keystoreFile="/etc/tomcat/tomcat.keystore" keystorePass="XXXX"
ciphers="TLS_RSA_WITH_AES_256_CBC_SHA256,
TLS_DHE_RSA_WITH_AES_256_CBC_SHA,
TLS_DHE_DSS_WITH_AES_256_CBC_SHA,
TLS_RSA_WITH_AES_128_CBC_SHA256,
TLS_RSA_WITH_AES_128_CBC_SHA,
TLS_DHE_RSA_WITH_AES_128_CBC_SHA,
TLS_RSA_WITH_AES_256_GCM_SHA384,
TLS_RSA_WITH_AES_128_GCM_SHA256,
TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384,
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384,
TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA384,
TLS_ECDH_RSA_WITH_AES_256_CBC_SHA384" />
Run Code Online (Sandbox Code Playgroud)
我的 tomcat.config 中没有任何具体定义
JAVA_HOME="/usr/lib/jvm/jre"
CATALINA_BASE="/usr/share/tomcat"
CATALINE_HOME="/usr/share/tomcat"
JASPER_HOME="/usr/share/tomcat"
CATALINE_TMPDIR="/var/cache/tomcat/temp"
TOMCAT_USER="tomcat"
SECURITY_MANAGER="false"
SHUTDOWN_WAIT="30"
SHUTDOWN_VERBOSE="false"
CATALINA_PID="/var/run/tomcat.pid
Run Code Online (Sandbox Code Playgroud)
建立连接后,我在浏览器窗口中右键单击,选择 Inspect Element 并选择 Network 标记,然后单击客户端请求。然后我选择了安全选项卡(用于请求)并显示:
Protocol verson: TLSv1.2
Cipher suite: TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 …Run Code Online (Sandbox Code Playgroud)