【问题标题】:keystone v2 - Get token without using userid/passwordkeystone v2 - 不使用用户名/密码获取令牌
【发布时间】:2014-09-15 15:16:10
【问题描述】:

我正在编写一个使用 keystone v2.0 API 进行身份验证的应用程序,现在在身份验证 /v2.0/tokens 时,我获得了用户有权访问的所有项目的令牌。

现在,当使用 Horizo​​n 添加项目时,我如何获取该项目的令牌,因为我没有存储登录用户的用户 ID/密码,并且要获取项目的令牌,我需要发送 / v2.0/tokens 带有以下 POST 数据,

{"auth": {"tenantName": "admin", "passwordCredentials": {"username": "user", "password": "password"}}}

但是由于我没有存储用户名/密码,一旦用户登录,那么之后我如何获得新项目的令牌?

是否有必要将用户 ID/密码存储在以后可以使用的地方?如果是,那么通常存储用户凭据的最佳方式是什么?

问候, -M-

【问题讨论】:

    标签: openstack keystone openstack-horizon


    【解决方案1】:

    查看了v2的keystoneclient代码,我得到了答案,我们可以使用现有的token本身来获取一个新项目的token

    data = {"auth": {"token": {"id": token}}}
    data['auth']['tenantName'] = tenantName;
    

    问候, -M-

    【讨论】:

      【解决方案2】:

      有多种认证方式,可以是token、password、oauth等。 如果您之前请求过无范围令牌,那么您可以使用无范围令牌来获取范围令牌(用于项目/租户)。

      【讨论】:

        猜你喜欢
        • 2019-08-31
        • 2015-03-09
        • 2011-09-16
        • 2013-02-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多