我正在关注keystone ocata安装指南https://docs.openstack.org/ocata/install-guide-ubuntu/keystone-install.html
安装后,我可以使用openstack user list命令获取用户列表。
openstack --os-auth-url =" [keystone_url]" --oS身份-API的版本=" 3" --oS密码=" mypwd123" --oS项目网域名称="默认" --oS-项目名称="管理" --oS-用户名="管理" --oS用户网域名称="默认"用户列表
正确输出用户列表。
但是当我使用以下命令获取auth令牌时:
curl -si -d' {" auth":{" identity":{" methods":["密码" ],"密码":{"用户":{"域":{" id":"默认" }," name":" admin","密码":" mypwd123" }}}}}' -H"内容类型:application / json" [keystone_url] / V3 / AUTH /令牌
然后在下面的命令中使用上面命令输出中的标记来列出用户:
卷曲-s -H" X-AUTH-令牌:gAAAAABZlAN0NPibgBLcUW3aAcgNYIGaRH98M7w6b4tRliXC4LQB4dr5cGxTJmF5-iKvY2U_AU3c71uJUqgaQJP-iyURCBzBqYHlHtTGqofzzVndVncBRU5z4iLbArBdbJCI2Wd-1No9C0cq4iWB6RBNa9wqXWm-GW" " [keystone_url] / V3 /用户" | python -mjson.tool
返回:
{ "错误":{ "代码":403, " message":"您无权执行请求的操作:identity:list_users。", " title":"禁止" } }
任何帮助都将不胜感激。
谢谢,
病毒
答案 0 :(得分:0)
因为列表用户需要带范围的令牌,所以应该添加查询范围,如下所示:
curl -i http://ip:5000/v3/auth/tokens -H "Content-
Type: application/json" -d '
{
"auth": {
"identity": {
"methods": [
"password"
],
"password": {
"user": {
"name": "admin",
"domain": {
"name": "Default"
},
"password": "secret"
}
}
},
"scope": {
"domain": {
"id": "default"
}
}
}
}'
然后使用X-Subject-Token查询用户。 有关详细信息,请参阅官方文档。https://docs.openstack.org/keystone/pike/api_curl_examples.html#tokens