Skip to content

Commit

Permalink
Prevent saving roles and facilities for site admins ghosting into orgs (
Browse files Browse the repository at this point in the history
#7969)

* Clear roles and facilities in DB for site admins

* Only save role and facility info for non site admin users

* Address code smell
  • Loading branch information
emyl3 authored Jul 31, 2024
1 parent 274169b commit cd6855d
Showing 1 changed file with 3 additions and 3 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -583,7 +583,7 @@ public UserInfo getCurrentUserInfoForWhoAmI() {
ApiUser currentUser = getCurrentApiUser();
Optional<OrganizationRoles> currentOrgRoles = _orgService.getCurrentOrganizationRoles();
boolean isAdmin = _authService.isSiteAdmin();
if (!_featureFlagsConfig.isOktaMigrationEnabled() && currentOrgRoles.isPresent()) {
if (!_featureFlagsConfig.isOktaMigrationEnabled() && currentOrgRoles.isPresent() && !isAdmin) {
setRolesAndFacilities(currentOrgRoles.get(), currentUser);
}
return new UserInfo(currentUser, currentOrgRoles, isAdmin);
Expand Down Expand Up @@ -703,7 +703,7 @@ private UserInfo consolidateUser(
ApiUser apiUser,
Optional<OrganizationRoleClaims> optClaims,
UserStatus userStatus,
Boolean isSiteAdmin) {
boolean isSiteAdmin) {

OrganizationRoleClaims claims = optClaims.orElseThrow(UnidentifiedUserException::new);

Expand All @@ -723,7 +723,7 @@ private UserInfo consolidateUser(

OrganizationRoles orgRoles =
new OrganizationRoles(org, accessibleFacilities, claims.getGrantedRoles());
if (!_featureFlagsConfig.isOktaMigrationEnabled()) {
if (!_featureFlagsConfig.isOktaMigrationEnabled() && !isSiteAdmin) {
setRolesAndFacilities(orgRoles, apiUser);
}
return new UserInfo(apiUser, Optional.of(orgRoles), isSiteAdmin, userStatus);
Expand Down

0 comments on commit cd6855d

Please sign in to comment.