2016-11-16 2 views
0

デバイスに接続するためのクラスがあります。私はJavascript - ssh2接続のパスワードにアクセスする

app.js

myConn = new myConnection(); 

myConnection.js

は、私は、リモートデバイス上でコマンドを実行したクラス内の機能を持っている私のアプリケーションでは、クラスのインスタンスで
function myConnection(){  
    this.settings = { 
     host: '192.168.225.195', 
     port: 22, 
     username: 'sysadmin', 
     password: 'pass' 
    }; 
} 

を行っていますそれにはパスワードが必要です。これが起こると、stderr.onが実行され、パスワードと改行文字が送信されます。

myConnection.prototype.installPatch = function(callback){ 
    this.conn.exec('sudo -S bash /tmp/update.sh', function(err, stream){ 
     var standardMsgs = ''; 
     var errorMsgs = ''; 
     if(err) throw err; 
     stream.on('close', function(code, signal) {     
      callback(standardMsgs, errorMsgs);  
     }).on('data', function(data) { 
      standardMsgs += "<br>" + data; 
      console.log('STDOUT: ' + data);    
     }).stderr.on('data', function(data) { 
      errorMsgs += data; 
      console.log('STDERR: ' + data); 
      stream.write(myConn.conn.config.password + '\n'); 
     }); 
    });  
} 

これはapp.jsで名前の変更「myConnは」「installpatchは」で同じ変更を必要となるので、私は

stream.write(myConn.conn.config.password + '\n'); 

とパスワードにアクセスするためのファンではない動作しますが関数。私は

stream.write(this.settings.password + '\n'); 

を使用することを意図していた

は、私は私がMyConnectionとクラス内からパスワードを取得することができます任意の他のオプションを持っていますか?私は明らかなことをちょうど見落とすことを望む。

答えて

0

私はそれが私の顔に私を主演していたと思います。

stream.write(stream._client.config.password + '\n'); 

変更

stream.write(myConn.conn.config.password + '\n'); 

関連する問題