通过python xmlrpc与opennebula 4.8通信
我正试图通过通过python xmlrpc与opennebula 4.8通信,python,opennebula,Python,Opennebula,我正试图通过xmlrpc和python与opennebula 4.8通信。代码如下: import xmlrpclib import re import hashlib server = 'http://10.1.7.205:2633/RPC2' user = "oneadmin" password = "pass" password = hashlib.sha1(password).hexdigest() one_auth = '{0}:{1}'.format(user, password)
xmlrpc
和python
与opennebula 4.8
通信。代码如下:
import xmlrpclib
import re
import hashlib
server = 'http://10.1.7.205:2633/RPC2'
user = "oneadmin"
password = "pass"
password = hashlib.sha1(password).hexdigest()
one_auth = '{0}:{1}'.format(user, password)
def getProxy():
return xmlrpclib.ServerProxy(server)
def getVMInfo(id):
response = getProxy().one.vm.info(one_auth,id)
if response[0]:
return response[1]
else:
raise Exception(response[1])
-->
我有一个来自的例子,但它不能与新版本的opennebula一起工作,作者也不再从事这个项目。我也遇到了类似的问题,尽管我使用的是opennebula 4.0.1,使用的是PHP。似乎在某种程度上,身份验证字符串中的密码不再是散列的。(当我编写旧代码时,它使用的是OpenNebula 3.0中的哈希密码。)您可以尝试使用sha1哈希函数删除该行,然后重试 这样看起来不太安全。另一方面,如果有人已经得到了你的代码,并且他/她/它可以继续做OpenNebulaAPI提供的任何事情,哈希处理与否应该没有多大区别
Exception: [VirtualMachineInfo] User couldn't be authenticated, aborting call.