我正在编写一个使用keystone v2.0 API进行身份验证的应用程序,现在在身份验证/v2.0/tokens时,我获得了用户可以访问的所有项目的令牌。
现在,当使用视界添加项目时我如何获取该项目的令牌,因为我没有为登录用户存储用户ID /密码,并且为了获取项目的令牌,我需要发送/带有以下POST数据的v2.0 /令牌,
{"auth": {"tenantName": "admin", "passwordCredentials": {"username": "user", "password": "password"}}}
但由于我没有存储用户名/密码,一旦用户登录,那么在我看到如何获得新项目的令牌之后呢?
是否有必要将用户ID /密码存储在以后可以使用的地方?如果是,那么通常什么是存储用户凭证的最佳方式?
此致 -M -
答案 0 :(得分:0)
在查看v2的keystoneclient代码后,我得到了答案,我们可以使用现有令牌本身获取新项目的令牌
data = {"auth": {"token": {"id": token}}}
data['auth']['tenantName'] = tenantName;
此致 -M -
答案 1 :(得分:0)
有多种身份验证模式,可以是令牌,密码,oauth等。 如果您之前已请求未范围的令牌,那么您可以使用未范围的令牌获取范围的令牌(对于项目/租户)。