Keystone App Creds Access Rules don´t work
Bug #1999068 reported by
simon stephan
This bug affects 1 person
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Identity (keystone) |
In Progress
|
Undecided
|
Pete Zaitcev |
Bug Description
Hi,
we just tested Application Credentials with Access Rules. We tried to delegate a subset of the admin permissions to the application credentials for managing users, projects and domains. Unfortunately it seems that the Access Rules that we defined for "identity" were not working.
Example:
openstack application credential create test-appcred --role admin --access-rules '[{
"method": "GET",
"path": "/v3/domains",
"service": "identity"
}]'
With that access rule it was still allowed to create domains, users, projects, groups. For the other OpenStack Services no requests were possible, as expected.
Changed in keystone: | |
assignee: | nobody → Pete Zaitcev (zaitcev) |
To post a comment you must log in.
I was able to reproduce the problem on the trunk (trunks for Keystone and Glance).
According to my tests, it is not important if the application credentials were created by an admin user or a regular user (with no admin role).
The result is, the access rules are ignored if they are applied to service "identity". But they work for other services as intended. The app creds work as intended otherwise, and setting _only_ OS_AUTH_ TYPE=v3applicat ioncredential, OS_APPLICATION_ CREDENTIAL_ SECRET= yyyyy, OS_APPLICATION_ CREDENTIAL_ ID=zzzzzzzzzz is sufficient to authenticate with user's normal roles. Seems exactly as Simon reported.
BTW, Devstack does not configure service_type=xxxx in [keystone_ authtoken] for any of its services, so it needs adding as documentation explains.
Isn't it the case that Keystone API does not have keystonemiddleware in its pipeline?