keystone/keystone
Colleen Murphy 17c337dbdb Fix credential list for project members
Without this patch, project members and readers can list any credentials
with the /v3/credentials API when enforce_scope is false. enforce_scope
is only applicable to project admins due to the admin-ness problem[1],
and this policy is not meant to allow project admins any access to users'
credentials (only system admins should be able to access them). However,
when enforce_scope is false, we need to preserve the old behavior of
project admins being able to list all credentials. This change mitigates
the problem by running the identity:get_credential policy check to
filter out credentials the user does not have access to. This will
impact performance.

Closes-bug: #1855080

[1] https://bugs.launchpad.net/keystone/+bug/968696

Change-Id: I5dd85a6b8368373a27aef2942a64499d020662ef
2019-12-04 16:42:17 -08:00
..
api Fix credential list for project members 2019-12-04 16:42:17 -08:00
application_credential Re-enable line-length linter 2019-10-21 08:48:47 -07:00
assignment Add immutable option for roles and projects 2019-09-10 00:03:16 -07:00
auth Fix oauthlib update errors 2019-09-05 11:48:41 -07:00
catalog Allow to filter endpoint groups by name 2019-07-18 08:57:50 +02:00
cmd Re-enable line-length linter 2019-10-21 08:48:47 -07:00
common Merge "Drop project.id foreign keys" 2019-11-12 20:42:23 +00:00
conf Merge "Revert "Resource backend is SQL only now"" 2019-11-14 01:11:04 +00:00
credential Fix PostgreSQL specifc issue with credentials encoding 2019-09-18 11:43:52 +02:00
endpoint_policy Convert policy API to flask 2018-08-31 07:14:32 +00:00
federation Merge "Drop project.id foreign keys" 2019-11-12 20:42:23 +00:00
identity Remove group deletion for non-sql driver when removing domains. 2019-10-29 12:19:51 -07:00
limit Drop limit columns 2019-07-05 06:59:58 +00:00
locale Imported Translations from Zanata 2019-10-01 08:47:25 +00:00
models Add access rules to token validation 2019-09-14 03:14:36 -07:00
oauth1 Revert "Blacklist bandit 1.6.0" 2019-05-14 21:09:32 +00:00
policy Convert policy API to flask 2018-08-31 07:14:32 +00:00
receipt Re-enable line-length linter 2019-10-21 08:48:47 -07:00
resource Revert "Resource backend is SQL only now" 2019-10-11 14:13:04 -07:00
revoke Remove unused revoke_by_user_and_project 2018-09-14 04:08:01 +00:00
server Merge "Make system tokens work with domain-specific drivers" 2019-09-18 10:22:23 +00:00
tests Fix credential list for project members 2019-12-04 16:42:17 -08:00
token Re-enable line-length linter 2019-10-21 08:48:47 -07:00
trust Move redelegation fields out of extras 2019-04-12 20:27:34 -07:00
__init__.py
exception.py Expose access rules as its own API 2019-09-14 03:14:20 -07:00
i18n.py Fix translated response 2019-08-19 14:49:37 +08:00
notifications.py Add application_credential as a CADF type 2019-06-05 12:37:30 -07:00
version.py Update API version for access rules 2019-09-14 03:14:45 -07:00