Fix .admin get_user privileges.

Bug #747618 reported by gholt
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenStack Object Storage (swift)
Fix Released
Critical
gholt

Bug Description

In swauth user acting as .admin for some account can retrieve data for any user that belong to that account. If it happens that reseller admin is registered in the given account, malicious admin can obtain credentials of .reseller_admin via GET v2/account/reseller-admin call (and then create/delete accounts illegally)

It looks like common/middleware/swauth.py#handle_get_user method should be changed in the following way:
1) .super_admin and .reseller_admin can get info for any user
2) .admin can get info for all users that are not .reseller_admins

Does it make sense?

Related branches

gholt (gholt)
Changed in swift:
assignee: nobody → gholt (gholt)
importance: Undecided → Critical
status: New → In Progress
Revision history for this message
gholt (gholt) wrote :

This changed a bit from the original description:

Now:
.super_admin may get any user info
.reseller_admin may not get .reseller_admin info, but can get .admin and regular user info
.admin may not get .reseller_admin or .admin info, but can get regular user info
users can't get any user info

Changed in swift:
status: In Progress → Fix Committed
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.