import keystoneclient.v2_0.client as ksclient
# authenticate with keystone to get a token
keystone = ksclient.Client(auth_url="http://192.168.10.5:35357/v2.0",
username="admin",
password="admin",
tenant_name="admin")
token = keystone.auth_ref['token']['id']
# use this token for whatever other services you are accessing.
print token
最简单的方法是使用Rest客户机登录并从响应中获取令牌。我喜欢Firefox RESTClient插件,但是你可以使用任何你想要的客户端。
向Openstack标识URL发送请求:
(例如
127.0.0.1:5000/v2.0/tokens
)带标题:
和身体:
注意:如果您不确定什么是正确的标识(keystone)URL,可以手动登录Horizon并查找API端点列表。
响应体将包括如下内容:
在新的rest调用中使用返回的令牌id作为头。例如,要获取服务器列表,请使用请求:
带标题:
您可以使用python-keystoneclient。要对用户进行身份验证,请使用
一旦用户通过身份验证,就会生成一个令牌。客户机上的auth_ref属性(本例中为keystone变量)将为您提供一个类似字典的结构,其中包含有关该令牌的所有信息,这将使您能够重用该令牌,或者在您的情况下将其传递给后端。
现在,token_dict是可以传递给后端的变量。
作为一个如何做到这一点的例子:
相关问题 更多 >
编程相关推荐