[Openstack-security] [Bug 1680911] Re: Revoking an unscoped token does not revoke all tokens scoped from the unscoped token
Especially since we have eliminated most cases of revoke-by-id.
Revocation is easier to handle in the cases of revoke-by-user-at-time,
You received this bug notification because you are a member of OpenStack
Security SIG, which is subscribed to OpenStack.
Revoking an unscoped token does not revoke all tokens scoped from the
Status in OpenStack Identity (keystone):
Status in OpenStack Security Advisory:
If you create an unscoped token (A) and you then use token A to
create a project-scoped token (B) you now have
token (A) [audit_id] = audit_id_a
token (A) [audit_chain_id] = [audit_id_a]
token (B) [audit_id] = audit_id_b
token (B) [audit_chain_id] = [audit_id_a, audit_id_b]
If you Revoke(token A) then token B should also be invalid.
However, this is not the case currently as there are two reasons
There is a bug that doesn't correctly catch this in revoke_models
because it accidently changes a list to a list in a tuple:
This needs to have the comma removed from
not in (token_values['audit_chain_id'],) to not in (token_values['audit_chain_id'])
The second and main reason is because this functionality is never exposed to the user
and in the code it is never run here:
because revoke_chain=False in the parameter is never set to True in a call anywhere in
To manage notifications about this bug go to: