SecurityRoleMetaData sr = new SecurityRoleMetaData(); sr.setRoleName(role); securityRoles.add(sr);
private void processSecurityRoles(final SecurityRolesMetaData securityRoles, final EjbJarDescription ejbJarDescription) { if (securityRoles == null || securityRoles.isEmpty()) { return; } for (final SecurityRoleMetaData securityRole : securityRoles) { final String roleName = securityRole.getRoleName(); if (roleName != null && !roleName.trim().isEmpty()) { // Augment the security roles // EJB 3.1 spec, section 17.3.1: // The Bean Provider may augment the set of security roles defined for the application by annotations in // this way by means of the security-role deployment descriptor element. ejbJarDescription.addSecurityRole(roleName); } } }
@Override protected void processElement(SecurityRoleMetaData metaData, XMLStreamReader reader, final PropertyReplacer propertyReplacer) throws XMLStreamException { if (reader.getNamespaceURI().equals(LEGACY_NAMESPACE_URI) || reader.getNamespaceURI().equals(NAMESPACE_URI)) { final String localName = reader.getLocalName(); if (localName.equals(Element.ROLE_NAME.getLocalName())) metaData.setRoleName(getElementText(reader, propertyReplacer)); else if (localName.equals(Element.PRINCIPAL_NAME.getLocalName())) { Set<String> principalNames = metaData.getPrincipals(); if (principalNames == null) { principalNames = new HashSet<String>(); metaData.setPrincipals(principalNames); } principalNames.add(getElementText(reader, propertyReplacer)); } else throw unexpectedElement(reader); } else { super.processElement(metaData, reader, propertyReplacer); } }
public Map<String, Set<String>> getPrincipalVersusRolesMap() { Map<String, Set<String>> principalRolesMap = null; for (SecurityRoleMetaData srm : securityRoles) { String rolename = srm.getRoleName(); if (principalRolesMap == null) { principalRolesMap = new HashMap<String, Set<String>>(); } if (srm.getPrincipals() != null) { for (String pr : srm.getPrincipals()) { Set<String> roleset = principalRolesMap.get(pr); if (roleset == null) { roleset = new HashSet<String>(); } if (!roleset.contains(rolename)) { roleset.add(rolename); } principalRolesMap.put(pr, roleset); } } } return principalRolesMap; }
public void process(SecurityRolesMetaData metaData, Class element) { DeclareRoles roles = finder.getAnnotation(element, DeclareRoles.class); if(roles == null) return; for(String role : roles.value()) { SecurityRoleMetaData sr = new SecurityRoleMetaData(); sr.setRoleName(role); Descriptions descriptions = ProcessorUtils.getDescription("DeclareRoles("+roles.value()+") on class: "+element.getName()); sr.setDescriptions(descriptions); metaData.add(sr); } }
public SecurityRoleMetaData merge(SecurityRoleMetaData original) { SecurityRoleMetaData merged = new SecurityRoleMetaData(); merged.merge(this, original); return merged; } public void merge(SecurityRoleMetaData override, SecurityRoleMetaData original)
@Override public SecurityRoleMetaData parse(XMLStreamReader reader, final PropertyReplacer propertyReplacer) throws XMLStreamException { SecurityRoleMetaData metaData = new SecurityRoleMetaData(); processElements(metaData, reader, propertyReplacer); return metaData; }
SecurityRoleMetaData to = this.get(sr.getRoleName()); if(to != null) to.merge(sr, null); SecurityRoleMetaData to = this.get(sr.getRoleName()); if(to != null) to.merge(sr, null);
/** * Get the principals * * @return the principals */ public Set<String> getPrincipals() { return getDelegate().getPrincipals(); }
/** * Get the roleName. * * @return the roleName. */ public String getRoleName() { return getName(); }
/** * Add entries to principalVersusRolesMap for the specified role meta data. * * @param roleMetaData the security role meta data */ private void processSecurityRoleMetaData(SecurityRoleMetaData roleMetaData) { Set<String> principals = roleMetaData.getPrincipals(); if(principals == null) return; for(String principal : principals) { Set<String> roles = principalVersusRolesMap.get(principal); if(roles == null) { roles = new HashSet<String>(); principalVersusRolesMap.put(principal, roles); } roles.add(roleMetaData.getRoleName()); } }
public void process(SecurityRolesMetaData metaData, Class<?> element) { DeclareRoles roles = finder.getAnnotation(element, DeclareRoles.class); if(roles == null) return; for(String role : roles.value()) { SecurityRoleMetaData sr = new SecurityRoleMetaData(); sr.setRoleName(role); Descriptions descriptions = ProcessorUtils.getDescription("DeclareRoles("+roles.value()+") on class: "+element.getName()); sr.setDescriptions(descriptions); metaData.add(sr); } }
public SecurityRoleMetaData merge(SecurityRoleMetaData original) { SecurityRoleMetaData merged = new SecurityRoleMetaData(); merged.merge(this, original); return merged; } public void merge(SecurityRoleMetaData override, SecurityRoleMetaData original)
@Override public SecurityRoleMetaData parse(XMLStreamReader reader, final PropertyReplacer propertyReplacer) throws XMLStreamException { SecurityRoleMetaData metaData = new SecurityRoleMetaData(); processElements(metaData, reader, propertyReplacer); return metaData; }
SecurityRoleMetaData to = this.get(sr.getRoleName()); if(to != null) to.merge(sr, null); SecurityRoleMetaData to = this.get(sr.getRoleName()); if(to != null) to.merge(sr, null);
/** * Get the principals * * @return the principals */ public Set<String> getPrincipals() { return getDelegate().getPrincipals(); }
/** * Get the roleName. * * @return the roleName. */ public String getRoleName() { return getName(); }
public SecurityRolesMetaData getSecurityRoles(final Deployment dep) { final SecurityRolesMetaData securityRolesMD = new SecurityRolesMetaData(); Set<String> firstEndpointDeclaredSecurityRoles = null; for (final EJBEndpoint ejbEndpoint : getEjbEndpoints(dep)) { final Set<String> declaredSecurityRoles = ejbEndpoint.getDeclaredSecurityRoles(); if (firstEndpointDeclaredSecurityRoles == null) { firstEndpointDeclaredSecurityRoles = declaredSecurityRoles; } else if (!firstEndpointDeclaredSecurityRoles.equals(declaredSecurityRoles)) { WSLogger.ROOT_LOGGER.multipleEndpointsWithDifferentDeclaredSecurityRoles(); } //union of declared security roles from all endpoints... for (final String roleName : declaredSecurityRoles) { final SecurityRoleMetaData securityRoleMD = new SecurityRoleMetaData(); securityRoleMD.setRoleName(roleName); securityRolesMD.add(securityRoleMD); } } return securityRolesMD; }
public Map<String, Set<String>> getPrincipalVersusRolesMap() { Map<String, Set<String>> principalRolesMap = null; for(SecurityRoleMetaData srm : securityRoles) { String rolename = srm.getRoleName(); if(principalRolesMap == null) principalRolesMap = new HashMap<String, Set<String>>(); if(srm.getPrincipals() != null) for(String pr : srm.getPrincipals()) { Set<String> roleset = (Set<String>)principalRolesMap.get(pr); if(roleset == null) roleset = new HashSet<String>(); if(!roleset.contains(rolename)) roleset.add(rolename); principalRolesMap.put(pr, roleset); } } return principalRolesMap; }
if (secRolesMetaData != null) { for (SecurityRoleMetaData secRoleMetaData : secRolesMetaData) { securityRoles.add(secRoleMetaData.getRoleName());