使用Keystone的全局实例

时间:2017-05-05 19:32:30

标签: fiware fiware-orion keystone

是否可以使用Keystone的全局实例来检索注册的用户个人资料信息?

根据这些引用:https://github.com/telefonicaid/fiware-pep-steelskin#keystoneKeystone 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..." } } } } }'

注意:我尝试了两个端口:50004730

任何提示都将受到赞赏。

1 个答案:

答案 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