Python 对Cloudera Manager ApiResource使用加密密码,而不是明文密码

Python 对Cloudera Manager ApiResource使用加密密码,而不是明文密码,python,html,cloudera,Python,Html,Cloudera,我尝试在python脚本中使用加密密码,以便使用Cloudera Manager API进行Cloudera备份灾难恢复 是我尝试运行的BDR脚本(创建复制代码): 当我硬编码密码时 (ApiResource(server_host="hostname",username="ugsk187",password="xyz",version=14,use_tls=True)), (ApiResource(server_host="hostname",username="ugsk187",pas

我尝试在python脚本中使用加密密码,以便使用Cloudera Manager API进行Cloudera备份灾难恢复

是我尝试运行的BDR脚本(创建复制代码):

当我硬编码密码时

(ApiResource(server_host="hostname",username="ugsk187",password="xyz",version=14,use_tls=True)), 
(ApiResource(server_host="hostname",username="ugsk187",password=var_passwprd,version=14,use_tls=True)), 
它正在工作。 但是当我试图分配给一个变量(var_passwprd=“xyz”),然后将该变量传递给密码时

(ApiResource(server_host="hostname",username="ugsk187",password="xyz",version=14,use_tls=True)), 
(ApiResource(server_host="hostname",username="ugsk187",password=var_passwprd,version=14,use_tls=True)), 
下面是一个错误:

Traceback (most recent call last): 
 File "test2.py", line 41, in <module> 
target_cluster = target_api.get_cluster('QA') 
File "/opt/pythonvirtual/bdr/lib/python2.7/site-
packages/cm_api/api_client.py", line 140, in get_cluster 
return clusters.get_cluster(self, name) 
File "/opt/pythonvirtual/bdr/lib/python2.7/site-
packages/cm_api/endpoints/clusters.py", line 57, in get_cluster 
return call(resource_root.get, "%s/%s" % (CLUSTERS_PATH, name), ApiCluster) 
File "/opt/pythonvirtual/bdr/lib/python2.7/site-
packages/cm_api/endpoints/types.py", line 139, in call 
ret = method(path, params=params) 
File "/opt/pythonvirtual/bdr/lib/python2.7/site-
packages/cm_api/resource.py", line 110, in get 
return self.invoke("GET", relpath, params) 
File "/opt/pythonvirtual/bdr/lib/python2.7/site-
packages/cm_api/resource.py", line 73, in invoke 
headers=headers) 
File "/opt/pythonvirtual/bdr/lib/python2.7/site-
packages/cm_api/http_client.py", line 183, in execute 
raise self._exc_class(ex) 
cm_api.api_client.ApiException: <html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/> 
<title>Error 401 Bad credentials</title> 
</head> 
<body><h2>HTTP ERROR 401</h2> 
<p>Problem accessing /api/v16/clusters/QA. Reason: 
<pre>    Bad credentials</pre></p><hr /><i><small>Powered by 
Jetty://</small></i><br/> 
<br/> 
<br/> 
</body> 
</html> 
(error 401)
回溯(最近一次呼叫最后一次):
文件“test2.py”,第41行,在
target\u cluster=target\u api.get\u cluster('QA'))
文件“/opt/pythonvirtual/bdr/lib/python2.7/site-
包/cm_api/api_client.py”,第140行,在get_集群中
返回集群。获取集群(self,name)
文件“/opt/pythonvirtual/bdr/lib/python2.7/site-
packages/cm_api/endpoints/clusters.py”,第57行,在get_集群中
返回调用(resource\u root.get,“%s/%s”%(集群路径、名称),ApiCluster)
文件“/opt/pythonvirtual/bdr/lib/python2.7/site-
packages/cm_api/endpoints/types.py”,第139行,在调用中
ret=方法(路径,参数=参数)
文件“/opt/pythonvirtual/bdr/lib/python2.7/site-
packages/cm_api/resource.py”,第110行,在get中
返回self.invoke(“GET”、relpath、params)
文件“/opt/pythonvirtual/bdr/lib/python2.7/site-
packages/cm_api/resource.py”,第73行,在invoke中
页眉=页眉)
文件“/opt/pythonvirtual/bdr/lib/python2.7/site-
packages/cm_api/http_client.py”,执行中的第183行
自我提升。exc课程(ex)
cm_api.api_client.api异常:
错误401错误凭据
HTTP错误401
访问/api/v16/clusters/QA时出现问题。原因:
错误的凭据


由 码头://


(错误401)
StackOverflow对只使用链接非常挑剔。考虑将代码直接粘贴到这个帖子中。添加了python脚本的代码,我试图与链接一起运行。