public boolean hasRole(PluginRoleConfig role) { return role.getAuthConfigId().equals(id); }
public List<PluginRoleConfig> pluginRoleConfigsFor(String authConfigId) { List<PluginRoleConfig> rolesConfig = new ArrayList<>(); for (Role role : this) { if (role instanceof PluginRoleConfig) { if (((PluginRoleConfig) role).getAuthConfigId().equals(authConfigId)) { rolesConfig.add((PluginRoleConfig) role); } } } return rolesConfig; }
private List<Map<String, Object>> getRoleConfigs(List<PluginRoleConfig> roleConfigs) { List<Map<String, Object>> configs = new ArrayList<>(); if (roleConfigs == null) { return configs; } for (PluginRoleConfig roleConfig : roleConfigs) { Map<String, Object> config = new HashMap<>(); config.put("name", roleConfig.getName().toString()); config.put("auth_config_id", roleConfig.getAuthConfigId()); config.put("configuration", roleConfig.getConfigurationAsMap(true)); configs.add(config); } return configs; }
public List<PluginRoleConfig> getPluginRoles(String pluginId) { List<PluginRoleConfig> result = new ArrayList<>(); List<SecurityAuthConfig> authConfigs = securityAuthConfigs.findByPluginId(pluginId); List<PluginRoleConfig> pluginRoles = rolesConfig.getPluginRoleConfigs(); for (SecurityAuthConfig authConfig : authConfigs) { for (PluginRoleConfig pluginRole : pluginRoles) { if (pluginRole.getAuthConfigId().equals(authConfig.getId())) { result.add(pluginRole); } } } return result; }
public static void toJSON(OutputWriter attributeWriter, PluginRoleConfig pluginRoleConfig) { attributeWriter.add("auth_config_id", pluginRoleConfig.getAuthConfigId()) .addChildList("properties", propertiesWriter -> ConfigurationPropertyRepresenter.toJSON(propertiesWriter, pluginRoleConfig)); }
public static void toJSON(OutputWriter attributeWriter, PluginRoleConfig pluginRoleConfig) { attributeWriter.add("auth_config_id", pluginRoleConfig.getAuthConfigId()) .addChildList("properties", propertiesWriter -> ConfigurationPropertyRepresenter.toJSON(propertiesWriter, pluginRoleConfig)); }
@Override public void validate(ValidationContext validationContext) { Role.super.validate(validationContext); if (!new NameTypeValidator().isNameValid(authConfigId)) { configErrors.add("authConfigId", NameTypeValidator.errorMessage("plugin role authConfigId", authConfigId)); } if (isNotBlank(authConfigId)) { SecurityAuthConfig securityAuthConfig = validationContext.getServerSecurityConfig().securityAuthConfigs().find(authConfigId); if (securityAuthConfig == null) { addError("authConfigId", String.format("No such security auth configuration present for id: `%s`", getAuthConfigId())); } } }
private String pluginIdForRole(PluginRoleConfig role) { SecurityAuthConfig authConfig = goConfigService.cruiseConfig().server().security().securityAuthConfigs().find(role.getAuthConfigId()); if (authConfig == null) { return null; } return authConfig.getPluginId(); } }
public static void toJSON(OutputWriter writer, Role role) { writer.add("name", role.getName().toString()).add("type", getRoleType(role)); if (isaPluginRole(role)) { writer.addChild("attributes", attributeWriter -> attributeWriter.add("auth_config_id", ((PluginRoleConfig) role).getAuthConfigId())); } }