use of org.pmiops.workbench.db.model.User in project workbench by all-of-us.
the class AuthDomainController method removeUserFromAuthDomain.
@Override
@AuthorityRequired({ Authority.MANAGE_GROUP })
public ResponseEntity<Void> removeUserFromAuthDomain(String groupName, AuthDomainRequest request) {
User user = userDao.findUserByEmail(request.getEmail());
DataAccessLevel previousAccess = user.getDataAccessLevel();
try {
fireCloudService.removeUserFromGroup(request.getEmail(), groupName);
} catch (ApiException e) {
ExceptionUtils.convertFirecloudException(e);
}
// TODO(calbach): Teardown any active clusters here.
user.setDataAccessLevel(DataAccessLevel.REVOKED);
user.setDisabled(true);
userDao.save(user);
userService.logAdminUserAction(user.getUserId(), "user access to " + groupName + " domain", previousAccess, DataAccessLevel.REVOKED);
return ResponseEntity.status(HttpStatus.NO_CONTENT).build();
}
use of org.pmiops.workbench.db.model.User in project workbench by all-of-us.
the class UserService method createServiceAccountUser.
public User createServiceAccountUser(String email) {
User user = new User();
user.setDataAccessLevel(DataAccessLevel.PROTECTED);
user.setEmail(email);
user.setDisabled(false);
user.setEmailVerificationStatus(EmailVerificationStatus.UNVERIFIED);
user.setFreeTierBillingProjectStatus(BillingProjectStatus.NONE);
try {
userDao.save(user);
} catch (DataIntegrityViolationException e) {
user = userDao.findUserByEmail(email);
if (user == null) {
throw e;
}
// If a user already existed (due to multiple requests trying to create a user simultaneously)
// just return it.
}
return user;
}
Aggregations