Bug 786159

Summary: Remove default ability to see user details
Product: [Other] RHQ Project Reporter: Charles Crouch <ccrouch>
Component: Core Server, Core UIAssignee: Charles Crouch <ccrouch>
Status: CLOSED CURRENTRELEASE QA Contact: Mike Foley <mfoley>
Severity: medium Docs Contact:
Priority: high    
Version: 4.2CC: ccrouch, hbrock, hrupp, loleary
Target Milestone: ---   
Target Release: JON 3.1.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-09-03 11:06:23 EDT Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Bug Depends On: 796437, 798465    
Bug Blocks: 782579    

Description Charles Crouch 2012-01-31 10:55:03 EST
This BZ is aimed at implementing part of https://issues.jboss.org/browse/PRODMGT-87
The idea is that users without specific priviliges should not be able to see detailed information about other users in the system.
There seem to be two options

1) Require MANAGE_SECURITY (or MANAGE_USERS) permissions for users to see any details beyond usernames.
w/o  MANAGE_SECURITY users going to localhost:7080/coregui/#Administration/Security/Users would just see a list of usernames and only their own link should be clickable. Similarly if there are sections of the app that display usernames they should not be clickable to show any more information about the user unless the clicking user has MANAGE_SECURITY permission. 
A user with MANAGE_SECURITY permissions would see what all users see today wrt user information.

or

2) Add in a new permission, e.g. VIEW_USER_DETAILS, that when enabled would allow users the access they have today, i.e. can view detailed information on all users. A user without this new permission, would get the restricted view described in 1) above.
Comment 4 Charles Crouch 2012-02-15 08:22:28 EST
Ian, please discuss your intended approach on rhq-devel
Comment 5 Ian Springer 2012-02-20 18:17:27 EST
This is done in master:

http://git.fedorahosted.org/git/?p=rhq/rhq.git;a=commitdiff;h=e2bbfdf

I added a new global perm named VIEW_USERS, which is required in order to view other RHQ users. Enforcement of the permission is implemented at the SLSB layer (in SubjectManagerBean). For backward compatibility sake, dbsetup gives existing roles the new permission, and the create new role view in the GUI selects the checkbox for the VIEW_USERS perm by default.
Comment 6 Ian Springer 2012-02-21 11:38:00 EST
http://git.fedorahosted.org/git/?p=rhq/rhq.git;a=commitdiff;h=fd854c8 adds functional tests for this feature. I still need to write tests that verify the VIEW_USERS permission gets added to existing roles by dbupgrade.
Comment 7 Ian Springer 2012-02-23 17:50:01 EST
The dbsetup/dbupgrade test have been added in master:

http://git.fedorahosted.org/git/?p=rhq/rhq.git;a=commitdiff;h=5371524
Comment 8 Mike Foley 2012-03-21 10:21:07 EDT
Documenting the acceptance criteria for this BZ, as follows:

Acceptance Criteria: 
-Users in roles without the new VIEW_USER_DETAILS permission will not be able to see any JON user information in the system beyond usernames 
-Users in roles with&nbsp;the new VIEW_USER_DETAILS permission will be able to see JON user information across the system just as the do today. 
-In upgraded systems all old roles will have the VIEW_USER_DETAILS permission, so there will be no change in behaviour for existing users
Comment 9 Mike Foley 2012-03-21 10:53:36 EDT
added TCMS testcase as follows:  https://tcms.engineering.redhat.com/case/146315/?from_plan=5753
Comment 10 Mike Foley 2012-03-21 11:00:18 EDT
verified
Comment 12 Heiko W. Rupp 2013-09-03 11:06:23 EDT
Bulk closing of old issues in VERIFIED state.