0
我在包含Keystone和Swift的Fedora 24服务器虚拟机上安装了一台OpenStack Mitaka。我经历了OpenStack安装说明并获得了v3 keystone API的正常工作,但是我正在安装的一些其他软件取决于v2。即使对v3 API的等效请求正常工作,我也无法使用v2 API进行身份验证并获取令牌。这里有两个请求我做:如何在V3和V2 API中制作相同的Openstack Keystone认证请求?
V3:
curl -i -H "Content-Type: application/json" -d '
{ "auth": {
"identity": {
"methods": ["password"],
"password": {
"user": {
"name": "admin",
"domain": { "name": "default" },
"password": "PASSWORD"
}
}
}
}
}' http://SERVER:35357/v3/auth/tokens
V2:
curl -d -H "Content-Type: application/json"
'{"auth": {
"passwordCredentials": {
"username": "admin",
"password": "PASSWORD"
},
"tenantName": "admin"
}
}' http://SERVER:35357/v2.0/tokens
的V3请求返回一个令牌,但V2请求失败:
{"error": {"message": "The request you have made requires authentication.", "code": 401, "title": "Unauthorized"}}
这些API请求是否等同?是否需要更改keystone.conf设置才能使V2 API有效?
v2 API肯定已启动并正在运行,并且我已经在5000和35357上尝试了这个请求。如果我更改了请求主体的格式和拼写错误passwordCredentials,它特别抱怨缺少该元素,这只是部分的v2 API AFAIK。 – sew