Java Code Examples for org.opensaml.saml2.core.AttributeStatement#getAttributes()
The following examples show how to use
org.opensaml.saml2.core.AttributeStatement#getAttributes() .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: DefaultSAML2SSOManager.java From carbon-identity with Apache License 2.0 | 6 votes |
private Map<ClaimMapping, String> getAssertionStatements(Assertion assertion) { Map<ClaimMapping, String> results = new HashMap<ClaimMapping, String>(); if (assertion != null) { List<AttributeStatement> attributeStatementList = assertion.getAttributeStatements(); if (attributeStatementList != null) { for (AttributeStatement statement : attributeStatementList) { List<Attribute> attributesList = statement.getAttributes(); for (Attribute attribute : attributesList) { Element value = attribute.getAttributeValues().get(0) .getDOM(); String attributeValue = value.getTextContent(); results.put(ClaimMapping.build(attribute.getName(), attribute.getName(), null, false), attributeValue); } } } } return results; }
Example 2
Source File: SAML2SSOManager.java From carbon-identity with Apache License 2.0 | 6 votes |
private Map<String, String> getAssertionStatements(Assertion assertion) { Map<String, String> results = new HashMap<String, String>(); if (assertion != null && assertion.getAttributeStatements() != null) { List<AttributeStatement> attributeStatementList = assertion.getAttributeStatements(); for (AttributeStatement statement : attributeStatementList) { List<Attribute> attributesList = statement.getAttributes(); for (Attribute attribute : attributesList) { Element value = attribute.getAttributeValues().get(0).getDOM(); String attributeValue = value.getTextContent(); results.put(attribute.getName(), attributeValue); } } } return results; }
Example 3
Source File: SAMLUtils.java From cloudstack with Apache License 2.0 | 6 votes |
public static String getValueFromAttributeStatements(final List<AttributeStatement> attributeStatements, final String attributeKey) { if (attributeStatements == null || attributeStatements.size() < 1 || attributeKey == null) { return null; } for (AttributeStatement attributeStatement : attributeStatements) { if (attributeStatement == null || attributeStatements.size() < 1) { continue; } for (Attribute attribute : attributeStatement.getAttributes()) { if (attribute.getAttributeValues() != null && attribute.getAttributeValues().size() > 0) { String value = attribute.getAttributeValues().get(0).getDOM().getTextContent(); s_logger.debug("SAML attribute name: " + attribute.getName() + " friendly-name:" + attribute.getFriendlyName() + " value:" + value); if (attributeKey.equals(attribute.getName()) || attributeKey.equals(attribute.getFriendlyName())) { return value; } } } } return null; }
Example 4
Source File: Util.java From carbon-identity with Apache License 2.0 | 5 votes |
/** * Get the username from the SAML2 Assertion * * @param assertion SAML2 assertion * @return username */ public static String getUsernameFromAssertion(Assertion assertion) { String loginAttributeName = getLoginAttributeName(); if (loginAttributeName != null) { // There can be multiple AttributeStatements in Assertion List<AttributeStatement> attributeStatements = assertion .getAttributeStatements(); if (attributeStatements != null) { for (AttributeStatement attributeStatement : attributeStatements) { // There can be multiple Attributes in a // attributeStatement List<Attribute> attributes = attributeStatement .getAttributes(); if (attributes != null) { for (Attribute attribute : attributes) { String attributeName = attribute.getDOM() .getAttribute("Name"); if (attributeName.equals(loginAttributeName)) { List<XMLObject> attributeValues = attribute .getAttributeValues(); // There can be multiple attribute values in // a attribute, but get the first one return attributeValues.get(0).getDOM() .getTextContent(); } } } } } } return assertion.getSubject().getNameID().getValue(); }
Example 5
Source File: SAML2SSOAuthenticator.java From carbon-identity with Apache License 2.0 | 5 votes |
/** * Get the username from the SAML2 Assertion * * @param assertion SAML2 assertion * @return username */ private String[] getRolesFromAssertion(Assertion assertion) { String[] roles = null; String roleClaim = getRoleClaim(); List<AttributeStatement> attributeStatementList = assertion.getAttributeStatements(); if (attributeStatementList != null) { for (AttributeStatement statement : attributeStatementList) { List<Attribute> attributesList = statement.getAttributes(); for (Attribute attribute : attributesList) { String attributeName = attribute.getName(); if (attributeName != null && roleClaim.equals(attributeName)) { // Assumes role claim appear only once Element value = attribute.getAttributeValues().get(0).getDOM(); String attributeValue = value.getTextContent(); if (log.isDebugEnabled()) { log.debug("AttributeName : " + attributeName + ", AttributeValue : " + attributeValue); } roles = attributeValue.split(getAttributeSeperator()); if (log.isDebugEnabled()) { log.debug("Role list : " + Arrays.toString(roles)); } } } } } return roles; }
Example 6
Source File: SamlHelper.java From secure-data-service with Apache License 2.0 | 5 votes |
/** * * @param samlAssertion * @return */ public LinkedMultiValueMap<String, String> extractAttributesFromResponse(Assertion samlAssertion) { LinkedMultiValueMap<String, String> attributes = new LinkedMultiValueMap<String, String>(); AttributeStatement attributeStatement = samlAssertion.getAttributeStatements().get(0); for (org.opensaml.saml2.core.Attribute attribute : attributeStatement.getAttributes()) { String samlAttributeName = attribute.getName(); List<XMLObject> valueObjects = attribute.getAttributeValues(); for (XMLObject valueXmlObject : valueObjects) { attributes.add(samlAttributeName, valueXmlObject.getDOM().getTextContent()); } } return attributes; }
Example 7
Source File: AttributeStatementSchemaValidator.java From lams with GNU General Public License v2.0 | 2 votes |
/** * Checks that at least one Attribute is present. * * @param attributeStatement * @throws ValidationException */ protected void validateAttributes(AttributeStatement attributeStatement) throws ValidationException { if (attributeStatement.getAttributes() == null || attributeStatement.getAttributes().size() == 0) { throw new ValidationException("Must contain one or more attributes"); } }