Node.js SSL Cassandra Apache [英] Node.js SSL Cassandra Apache
问题描述
我在代码node.js中包含SSL加密有问题。我已配置数据库,但无法通过SSL连接到应用程序。所有的时间,我得到一个错误。也许有人有相同的或知道做什么,因为我厌倦了第四天。我给你需要的一切。
client_encryption_options:enabled:true keystore:E:/apache-cassandra-2.1.4/conf/.keystore keystore_password:cassandra#require_client_auth:false#Set trustore和truststore_password如果require_client_auth是真的#信任:CONF / .truststore#truststore_password:下面卡桑德拉#更先进默认:#协议:TLS#算法:SunX509#store_type:JKS#cipher_suites:[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]
https://github.com/PatrickCallaghan/datastax-ssl-example =nofollow noreferrer> https://github.com/PatrickCallaghan/datastax-ssl-example
var cassandra = require('cassandra-driver'); var fs = require('fs'); var assert = require('assert')var sslOptions = {key:fs.readFileSync('server-key.pem'),cert:fs.readFileSync('server-cert.pem'),ca:[fs.readFileSync 'client-cert.pem')]}; var client = new cassandra.Client({contactPoints:['127.0.0.1'],authProvider:new cassandra.auth.PlainTextAuthProvider('cassandra','cassandra'),sslOptions: sslOptions}); client.connect(function(err){assert.ifError(err);})
请帮助
[authentication] username = cassandrapassword = cassandra [connection] hostname = 127.0.0.1port = 9042factory = cqlshlib.ssl.ssl_transport_factory [ssl] certfile = E:/certs/localhost_user1.pemvalidate = true ##可选,默认为true
解决方案带有certyficates的新截图.cer和pem
var cassandra = require('cassandra-driver'); var fs = require('fs'); var assert = require('assert'); var sslOptions = {key:fs.readFileSync('client-key.pem'),cert: fs.readFileSync('client-cert.pem'),ca:[fs.readFileSync('localhost.cer')]}; var client = new cassandra.Client({contactPoints:['127.0.0.1'],authProvider: new cassandra.auth.PlainTextAuthProvider('cassandra','cassandra'),sslOptions:sslOptions}); client.connect(function(err){assert.ifError(err);})client.on('log',function level,className,message,furtherInfo){console.log('log event:%s - %s',level,message);});
>
I have a problem with inclusion SSL encryption in the code node.js. I have configured the database but can not connect to the application via SSL. All the time I get an error. Maybe there is someone who has had the same or know what to do because I get tired of the fourth day. I give everything you need.
client_encryption_options: enabled: true keystore: E:/apache-cassandra-2.1.4/conf/.keystore keystore_password: cassandra # require_client_auth: false # Set trustore and truststore_password if require_client_auth is true # truststore: conf/.truststore # truststore_password: cassandra # More advanced defaults below: # protocol: TLS # algorithm: SunX509 # store_type: JKS # cipher_suites: [TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]
for generate cert's https://github.com/PatrickCallaghan/datastax-ssl-example
var cassandra = require('cassandra-driver'); var fs = require('fs'); var assert = require('assert') var sslOptions = { key: fs.readFileSync('server-key.pem'), cert: fs.readFileSync('server-cert.pem'), ca: [ fs.readFileSync('client-cert.pem') ] }; var client = new cassandra.Client({ contactPoints : ['127.0.0.1'], authProvider : new cassandra.auth.PlainTextAuthProvider('cassandra', 'cassandra'), sslOptions : sslOptions }); client.connect(function(err){ assert.ifError(err); })
please help
[authentication] username = cassandra password = cassandra [connection] hostname = 127.0.0.1 port = 9042 factory = cqlshlib.ssl.ssl_transport_factory [ssl] certfile = E:/certs/localhost_user1.pem validate = true ## Optional, true by default.
解决方案new screenshoots with certyficates .cer and pem
var cassandra = require('cassandra-driver'); var fs = require('fs'); var assert = require('assert'); var sslOptions = { key : fs.readFileSync('client-key.pem'), cert : fs.readFileSync('client-cert.pem'), ca : [fs.readFileSync('localhost.cer')] }; var client = new cassandra.Client({ contactPoints : ['127.0.0.1'], authProvider : new cassandra.auth.PlainTextAuthProvider('cassandra', 'cassandra'), sslOptions : sslOptions }); client.connect(function (err) { assert.ifError(err); }) client.on('log', function (level, className, message, furtherInfo) { console.log('log event: %s -- %s', level, message); });
这篇关于Node.js SSL Cassandra Apache的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文