public static void addDefaultRoles(RealmModel realm, UserModel userModel) { for (RoleModel role : getDefaultRoles(realm)) { userModel.grantRole(role); } } }
@Override public UserModel addUser(RealmModel realm, String id, String username, boolean addDefaultRoles, boolean addDefaultRequiredActions) { if (id == null) { id = KeycloakModelUtils.generateId(); } UserEntity entity = new UserEntity(); entity.setId(id); entity.setCreatedTimestamp(System.currentTimeMillis()); entity.setUsername(username.toLowerCase()); entity.setRealmId(realm.getId()); em.persist(entity); em.flush(); UserAdapter userModel = new UserAdapter(session, realm, em, entity); if (addDefaultRoles) { DefaultRoles.addDefaultRoles(realm, userModel); for (GroupModel g : realm.getDefaultGroups()) { userModel.joinGroupImpl(g); // No need to check if user has group as it's new user } } if (addDefaultRequiredActions){ for (RequiredActionProviderModel r : realm.getRequiredActionProviders()) { if (r.isEnabled() && r.isDefaultAction()) { userModel.addRequiredAction(r.getAlias()); } } } return userModel; }
@Override public Set<RoleModel> getRoleMappings() { Set<RoleModel> set = new HashSet<>(); if (appendDefaultRolesToRoleMappings()) set.addAll(DefaultRoles.getDefaultRoles(realm)); set.addAll(getRoleMappingsInternal()); return set; }
/** * Gets role mappings from federated storage and automatically appends default roles. * Also calls getRoleMappingsInternal() method * to pull role mappings from provider. Implementors can override that method * * @return */ @Override public Set<RoleModel> getRoleMappings() { Set<RoleModel> set = new HashSet<>(); set.addAll(getFederatedRoleMappings()); if (appendDefaultRolesToRoleMappings()) set.addAll(DefaultRoles.getDefaultRoles(realm)); set.addAll(getRoleMappingsInternal()); return set; }