0

我正在编写一个使用 OpenStack 和 Runabove API 的 python 脚本。我想从 Runabove API 生成一个令牌,用于连接到 SwiftClient。

run = Runabove(app_key, app_secret, consumer_key)
token = run.tokens.get()

它来自那里:https://github.com/runabove/python-runabove/blob/master/examples/openstack/openstack.py(第 82 -> 85 行)

此代码引发:

raise BadParametersError(msg=json_result.get('message'))
runabove.exception.BadParametersError: Invalid signature

这意味着引发了 HTTPError 400: https ://github.com/runabove/python-runabove/blob/master/runabove/wrapper_api.py (第 164 行)

我不知道我的问题可能来自哪里,我 100% 确定我的密钥/秘密是正确的。

谢谢

4

1 回答 1

0

我确定您的应用程序密钥和秘密是有效的,但您也需要一个使用者密钥!

您可以阅读runabove-python 包自述文件以了解如何创建使用者密钥,然后您可以将其添加到您提供的示例中,它将完美运行。

您还可以在 RunAbove 网站上阅读此KB,以了解您需要此使用者密钥的原因以及它如何帮助您使用类似 ACL 的系统过滤请求。

于 2015-05-17T01:28:57.127 回答