我在VM(Virutal Box)中安装了OpenStack自由,我正在尝试获取Aut-token,并且我有一些方法可以从堆栈溢出中获取Auth-token,所以我使用了该命令
curl -d'{“auth”:{“passwordCredentials”:{“username”:“can”,“password”:“mypassword”}}}'-H“内容类型:application / json “http://localhost/v2.0/tokens
但它没有给出任何回复,只是显示
>
在命令提示符中。任何人都可以解释我的步骤有什么问题。
答案 0 :(得分:1)
您看到的>
字符表示复制/粘贴错误。您可能在curl命令中间粘贴换行符。
您传递给keystone的令牌请求很好,但在大多数情况下,keystone将在端口5000上运行,您需要在URL中指定(例如http://localhost:5000/v2.0/tokens
)。
以下是您应该获得的示例:
# curl -sd '{"auth":{"passwordCredentials":{"username": "admin", "password": "password"}}}' -H "Content-type: application/json" http://192.168.113.57:5000/v2.0/tokens | python -m json.tool
{
"access": {
"metadata": {
"is_admin": 0,
"roles": []
},
"serviceCatalog": [],
"token": {
"audit_ids": [
"Yk4h80jJTe6jiGKzXFge9Q"
],
"expires": "2016-08-08T03:06:40Z",
"id": "gAAAAABXp06AlKkt_fxEuDbjW19h4nvwC-7rgEr9Mw4abtc_uUGTm4HSGukUzRf5JYS8Q6J-fexDVLTtA7doaUzkvnLlLSFEfjW0e4IVq3V0rccvU9fLErNcNcWWJNx3pPM1fjBHEvGOlYvwEFmUUXhxl9VHKqO_DQ",
"issued_at": "2016-08-07T15:06:40.000000Z"
},
"user": {
"id": "732a8637a18b4e91ac9d8a95a8477e05",
"name": "admin",
"roles": [],
"roles_links": [],
"username": "admin"
}
}
}
答案 1 :(得分:1)
使用curl命令获取令牌:
curl http://<controller_ip>:5000/v2.0/tokens \
-X POST \
-d '{"auth":{"tenantName":"demo", "passwordCredentials":{"username":"demo", "password":"*****"}}}' \
-H "Content-type: application/json" | python -m json.tool