我正在尝试从机密管理器中检索 ppk 文件的内容并使用它来连接到 SFTP。
如果我将文件存储在本地并传递文件,我可以轻松地做到这一点。
const sshConfig = { //This works
host: 'host',
port: 22,
username: 'username',
passphrase:'passphrase',
privateKey: fs.readFileSync(ppkFile.ppk),
readyTimeout: 99999,
};
如果我尝试传递存储在 AWS SecretsManager 中的 ppk 文件的内容,它将不起作用。
const sshConfig = { //This doesn't work
host: 'host',
port: 22,
username: 'username',
passphrase:'passphrase',
privateKey: fs.readFileSync('file contents retrieved as a string from secretsmanager'),
readyTimeout: 99999,
};
我之前也尝试过将从 AWS SecretsManager 返回的字符串转换为缓冲区,而不是使用 fs.readFileSync 但这不起作用。
const sshConfig = { //This doesn't work
host: 'host',
port: 22,
username: 'username',
passphrase:'passphrase',
privateKey: Buffer.from('file contents retrieved as a string from secretsmanager'),
readyTimeout: 99999,
};
可以这样做吗?如果可以,有人可以帮我做对吗?