とりわけ、ssh/scp を介して別のホストにファイルをプッシュする必要がある python/django アプリケーションを開発しています。セキュリティのために、キーベースの認証を使用したいのですが、ファイルシステムではなく、django データベースに秘密鍵を保存したいと考えています。DBからキーを取得し、一時ファイルに書き込み、そのファイルを指定する以外に、これを行う方法はありますか?
質問する
954 次
1 に答える
0
paramiko を使用すると、キーをファイルシステムに書き込む必要がないようにいくつかのトリックを実行できます。paramiko connectを使用すると、pkey を引数として指定できます。
PKey
オブジェクトには、次のようなfrom_private_key
ファイルオブジェクト(StringIO
データベースから取得したキーを使用)を受け取るメソッドがあります。
f = StringIO.StringIO()
# retreive your key from db
f.write(your_key)
private_key = paramiko.RSAKey.from_private_key(f)
ssh.connect(server, username=username,pkey=private_key)
于 2012-09-12T23:58:03.133 に答える