基于docstring的此方法接受以下参数:
文档字符串:Session.userauth_publickey_fromfile(自己,用户名, privatekey ,密码=”,publickey =无)与公众进行身份验证 文件中的密钥。
但是official project description有这个例子:
session.userauth_publickey_fromfile( 用户名 'my_pkey.pub' ,'my_pkey','')
因此,在此示例中,第二个参数是公钥,但是文档字符串说它必须是私钥。
在文档字符串中还有2个位置参数,但在给定的示例中有4个。
那么正确的参数组合是什么?
谢谢。
P.S。此外,尚不清楚应以哪种格式显示私钥和公钥。应该像文件或字节的路径一样吗?如果以字节为单位,那么为什么整个函数都称为“ _fromfile”?非常令人困惑。
答案 0 :(得分:1)
问题:尚不清楚哪种格式应为
privatekey
和publickey
GitHub上的消息来源:
def userauth_publickey_fromfile(self, username not None, privatekey not None, passphrase='', publickey=None):
在Documentation中,仅对publickey
解释了types
。
出于安全原因,私钥绝不应存储在python脚本内。
您必须从访问限制的文件存储中读取它。
您是对的,应按userauth_publickey(...)
中的说明解释参数。
答案 1 :(得分:0)
终于找到了正确的参数组合:
session.userauth_publickey_fromfile(user, '<path to private key file>')
在我的情况下,没有密码短语,因此未提供。 不知道为什么作者以这种方式实现此功能。 “私钥”是必填字段,可以随时从中生成公钥。但是它们也为“ publickey =“提供了其他关键字参数。