是否可以使用Keystone的全局实例来检索注册的用户个人资料信息?
根据这些引用:https://github.com/telefonicaid/fiware-pep-steelskin#keystone和Keystone create user and permissions by api,我希望自己安装一个实例。但是,如果我希望使用全局实例,那该怎么办呢?有可能吗?
例如,我已经测试了如下所示检索一些数据而没有成功:
curl -s -H "X-Auth-Token:cXylpiNyh74V6J9YOlqN2GTzYSmGQa" http://cloud.lab.fiware.org:4730/v2.0/tokens | python -mjson.tool
curl -s -H "X-Auth-Token:cXylpiNyh74V6J9YOlqN2GTzYSmGQa" http://cloud.lab.fiware.org:4730/v3/users/ | python -mjson.tool
curl http://cloud.lab.fiware.org:4730/v3/auth/tokens -H "Content-Type: application/json" -d ' { "auth": { "identity": { "methods": [ "password" ], "password": { "user": { "domain": { "name": "matest" }, "name": "pep_proxy_99c59...", "password": "e3025a286dab..." } } } } }'
注意:我尝试了两个端口:5000
和4730
。
任何提示都将受到赞赏。
答案 0 :(得分:0)
用户无权查看其他用户信息或使用API创建新用户。
但是,您可以使用v2.0和v3协议从全局keystone发出令牌:
curl -X POST http://130.206.84.8:4730/v2.0/tokens \
-H 'Content-Type: application/json' \
-d "{\"auth\": {\"tenantName\": \"${OS_TENANT_NAME}\",
\"passwordCredentials\": {
\"username\": \"$OS_USERNAME\",
\"password\": \"$OS_PASSWORD\"}}}" | \
jq -r '.access.token.id'
或在v3中发出令牌:
curl -v -H "Content-Type: application/json" -d "
{ \"auth\": {
\"identity\": {
\"methods\": [\"password\"],
\"password\": {
\"user\": {
\"name\": \"$OS_USERNAME\",
\"domain\": { \"id\": \"default\" },
\"password\": \"$OS_PASSWORD\"
}
}
}
}
}" http://cloud.lab.fiware.org:4730/v3/auth/tokens 2>&1 \
| grep -i "X-Subject-Token"
如果您不是管理员用户,那么使用这些令牌可以使用Keystone本身做的事情很少(非管理员用户显然拥有很少的权限)。但是,您可以查询端点:
curl -s -H "X-Auth-Token: $TOKEN_ID" http://130.206.84.8:4730/v3/endpoints
域名:
curl -s -H "X-Auth-Token: $TOKEN_ID" http://130.206.84.8:4730/v3/domains