yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #48652
[Bug 1563113] [NEW] Implied Roles responses do not match the spec
Public bug reported:
http --pretty format PUT
https://identity.example.com:35357/v3/roles/5a912666c3704c22a20d4c35f3068a88/implies/edd42085d3ab472e9cf13b3cf3c362b6
"X-Auth-Token:4879c74089b744439057581c9d85bc19"
{
"role_inference": {
"implies": {
"id": "edd42085d3ab472e9cf13b3cf3c362b6",
"links": {
"self": "https://identity.example.com:35357/v3/roles/edd42085d3ab472e9cf13b3cf3c362b6"
},
"name": "SomeRole1"
},
"prior_role": {
"id": "5a912666c3704c22a20d4c35f3068a88",
"links": {
"self": "https://identity.example.com:35357/v3/roles/5a912666c3704c22a20d4c35f3068a88"
},
"name": "testing"
}
}
}
https://github.com/openstack/keystone-specs/blob/master/api/v3/identity-
api-v3.rst#create-role-inference-rule
{
"role_inference": {
"prior_role": {
"id": "--prior-role-id--",
"links": {
"self": "http://identity:35357/v3/roles/--prior-role-id--"
}
"name": "prior role name"
},
"implies":
{
"id": "--implied-role1-id--",
"link": {
"self": "http://identity:35357/v3/roles/--implied-role1-id--"
},
"name": "implied role1 name"
}
},
}
Note missing comma and s/links/link/. Also, json is usually output in
sorted order.
http --pretty format GET
https://identity.example.com:35357/v3/role_inferences "X-Auth-
Token:4879c74089b744439057581c9d85bc19"
{
"role_inferences": [
{
"implies": [
{
"id": "edd42085d3ab472e9cf13b3cf3c362b6",
"links": {
"self": "https://identity.example.com:35357/v3/roles/edd42085d3ab472e9cf13b3cf3c362b6"
},
"name": "SomeRole1"
}
],
"prior_role": {
"id": "5a912666c3704c22a20d4c35f3068a88",
"links": {
"self": "https://identity.example.com:35357/v3/roles/5a912666c3704c22a20d4c35f3068a88"
},
"name": "testing"
}
}
]
}
https://github.com/openstack/keystone-specs/blob/master/api/v3/identity-
api-v3.rst#list-all-role-inference-rules
Again, s/link/links/. No missing comma though.
http --pretty format GET
https://identity.example.com:35357/v3/roles/5a912666c3704c22a20d4c35f3068a88/implies/edd42085d3ab472e9cf13b3cf3c362b6
"X-Auth-Token:4879c74089b744439057581c9d85bc19"
{
"role_inference": {
"implies": {
"id": "edd42085d3ab472e9cf13b3cf3c362b6",
"links": {
"self": "https://identity.example.com:35357/v3/roles/edd42085d3ab472e9cf13b3cf3c362b6"
},
"name": "SomeRole1"
},
"prior_role": {
"id": "5a912666c3704c22a20d4c35f3068a88",
"links": {
"self": "https://identity.example.com:35357/v3/roles/5a912666c3704c22a20d4c35f3068a88"
},
"name": "testing"
}
}
}
https://github.com/openstack/keystone-specs/blob/master/api/v3/identity-
api-v3.rst#get-role-inference-rule
According to the spec, there is no "role_inference" wrapper here. Also,
a top level "links". There is also a missing comma but the 'links' for
implies is correct (only place this is true).
http --pretty format GET
https://identity.example.com:35357/v3/roles/5a912666c3704c22a20d4c35f3068a88/implies
"X-Auth-Token:4879c74089b744439057581c9d85bc19"
{
"role_inference": {
"implies": [
{
"id": "edd42085d3ab472e9cf13b3cf3c362b6",
"links": {
"self": "https://identity.example.com:35357/v3/roles/edd42085d3ab472e9cf13b3cf3c362b6"
},
"name": "SomeRole1"
}
],
"prior_role": {
"id": "5a912666c3704c22a20d4c35f3068a88",
"links": {
"self": "https://identity.example.com:35357/v3/roles/5a912666c3704c22a20d4c35f3068a88"
},
"name": "testing"
}
}
}
https://github.com/openstack/keystone-specs/blob/master/api/v3/identity-
api-v3.rst#list-implied-roles-for-role
This says there will also be a "links" key under role_inference (which
is wrong). Also, continued failure of s/link/links/.
** Affects: keystone
Importance: Undecided
Status: New
--
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Identity (keystone).
https://bugs.launchpad.net/bugs/1563113
Title:
Implied Roles responses do not match the spec
Status in OpenStack Identity (keystone):
New
Bug description:
http --pretty format PUT
https://identity.example.com:35357/v3/roles/5a912666c3704c22a20d4c35f3068a88/implies/edd42085d3ab472e9cf13b3cf3c362b6
"X-Auth-Token:4879c74089b744439057581c9d85bc19"
{
"role_inference": {
"implies": {
"id": "edd42085d3ab472e9cf13b3cf3c362b6",
"links": {
"self": "https://identity.example.com:35357/v3/roles/edd42085d3ab472e9cf13b3cf3c362b6"
},
"name": "SomeRole1"
},
"prior_role": {
"id": "5a912666c3704c22a20d4c35f3068a88",
"links": {
"self": "https://identity.example.com:35357/v3/roles/5a912666c3704c22a20d4c35f3068a88"
},
"name": "testing"
}
}
}
https://github.com/openstack/keystone-specs/blob/master/api/v3
/identity-api-v3.rst#create-role-inference-rule
{
"role_inference": {
"prior_role": {
"id": "--prior-role-id--",
"links": {
"self": "http://identity:35357/v3/roles/--prior-role-id--"
}
"name": "prior role name"
},
"implies":
{
"id": "--implied-role1-id--",
"link": {
"self": "http://identity:35357/v3/roles/--implied-role1-id--"
},
"name": "implied role1 name"
}
},
}
Note missing comma and s/links/link/. Also, json is usually output in
sorted order.
http --pretty format GET
https://identity.example.com:35357/v3/role_inferences "X-Auth-
Token:4879c74089b744439057581c9d85bc19"
{
"role_inferences": [
{
"implies": [
{
"id": "edd42085d3ab472e9cf13b3cf3c362b6",
"links": {
"self": "https://identity.example.com:35357/v3/roles/edd42085d3ab472e9cf13b3cf3c362b6"
},
"name": "SomeRole1"
}
],
"prior_role": {
"id": "5a912666c3704c22a20d4c35f3068a88",
"links": {
"self": "https://identity.example.com:35357/v3/roles/5a912666c3704c22a20d4c35f3068a88"
},
"name": "testing"
}
}
]
}
https://github.com/openstack/keystone-specs/blob/master/api/v3
/identity-api-v3.rst#list-all-role-inference-rules
Again, s/link/links/. No missing comma though.
http --pretty format GET
https://identity.example.com:35357/v3/roles/5a912666c3704c22a20d4c35f3068a88/implies/edd42085d3ab472e9cf13b3cf3c362b6
"X-Auth-Token:4879c74089b744439057581c9d85bc19"
{
"role_inference": {
"implies": {
"id": "edd42085d3ab472e9cf13b3cf3c362b6",
"links": {
"self": "https://identity.example.com:35357/v3/roles/edd42085d3ab472e9cf13b3cf3c362b6"
},
"name": "SomeRole1"
},
"prior_role": {
"id": "5a912666c3704c22a20d4c35f3068a88",
"links": {
"self": "https://identity.example.com:35357/v3/roles/5a912666c3704c22a20d4c35f3068a88"
},
"name": "testing"
}
}
}
https://github.com/openstack/keystone-specs/blob/master/api/v3
/identity-api-v3.rst#get-role-inference-rule
According to the spec, there is no "role_inference" wrapper here.
Also, a top level "links". There is also a missing comma but the
'links' for implies is correct (only place this is true).
http --pretty format GET
https://identity.example.com:35357/v3/roles/5a912666c3704c22a20d4c35f3068a88/implies
"X-Auth-Token:4879c74089b744439057581c9d85bc19"
{
"role_inference": {
"implies": [
{
"id": "edd42085d3ab472e9cf13b3cf3c362b6",
"links": {
"self": "https://identity.example.com:35357/v3/roles/edd42085d3ab472e9cf13b3cf3c362b6"
},
"name": "SomeRole1"
}
],
"prior_role": {
"id": "5a912666c3704c22a20d4c35f3068a88",
"links": {
"self": "https://identity.example.com:35357/v3/roles/5a912666c3704c22a20d4c35f3068a88"
},
"name": "testing"
}
}
}
https://github.com/openstack/keystone-specs/blob/master/api/v3
/identity-api-v3.rst#list-implied-roles-for-role
This says there will also be a "links" key under role_inference (which
is wrong). Also, continued failure of s/link/links/.
To manage notifications about this bug go to:
https://bugs.launchpad.net/keystone/+bug/1563113/+subscriptions
Follow ups