Class SecurityAssertion


  • @SupportedAll
    public class SecurityAssertion
    extends Assertion
    The SecurityAssertion class provides an extension to Assertion class to support ID-WSF ResourceAccessStatement and SessionContextStatement.
    • Constructor Detail

      • SecurityAssertion

        public SecurityAssertion​(Element assertionElement)
                          throws SAMLException
        This constructor creates a SecurityAssertion object from a DOM Element.
        Parameters:
        assertionElement - A org.w3c.dom.Element representing DOM tree for Assertion object
        Throws:
        SAMLException - if it could not process the Element properly, implying that there is an error in the sender or in the element definition.
      • SecurityAssertion

        public SecurityAssertion​(String assertionID,
                                 String issuer,
                                 Date issueInstant,
                                 Set statements)
                          throws SAMLException
        Constructs SecurityAssertion object with the assertionID, the issuer, time when assertion issued and a Set of Statement(s) in the assertion.
        Parameters:
        assertionID - assertionID attribute contained within this Assertion if null, an assertionID is generated internally.
        issuer - String representing the issuer of this assertion.
        issueInstant - time instant of the issue. It has type dateTime which is built in to the W3C XML Schema Types specification.if null, current time is used.
        statements - Set of Statement objects within this Assertion. It could be of type AuthenticationStatement, AuthorizationDecisionStatement and AttributeStatement. Each Assertion can have multiple type of statements in it.
        Throws:
        SAMLException - issuer is null or the size of statements is 0.
      • SecurityAssertion

        public SecurityAssertion​(String assertionID,
                                 String issuer,
                                 Date issueInstant,
                                 Conditions conditions,
                                 Set statements)
                          throws SAMLException
        Constructs SecurityAssertion object with the assertionID, the issuer, time when assertion issued, the conditions when creating a new assertion and a Set of Statement(s) in the assertion.
        Parameters:
        assertionID - String representing AssertionID contained within this Assertion if null its generated internally.
        issuer - String representing the issuer of this assertion.
        issueInstant - time instant of the issue. It has type dateTime which is built in to the W3C XML Schema Types specification. if null current time is used.
        conditions - Conditions under which the this Assertion is valid.
        statements - Set of Statement objects within this Assertion. It could be of type AuthenticationStatement, AuthorizationDecisionStatement and AttributeStatement. Each Assertion can have multiple type of statements in it.
        Throws:
        SAMLException - issuer is null or the size of statements is 0.
      • SecurityAssertion

        public SecurityAssertion​(String assertionID,
                                 String issuer,
                                 Date issueInstant,
                                 Conditions conditions,
                                 Advice advice,
                                 Set statements)
                          throws SAMLException
        Constructs SecurityAssertion object with the assertionID, the issuer, time when assertion issued, the conditions when creating a new assertion, Advice applicable to this Assertion and a Set of Statement(s) in the assertion.
        Parameters:
        assertionID - AssertionID object contained within this Assertion if null its generated internally.
        issuer - String representing the issuer of this assertion.
        issueInstant - time instant of the issue. It has type dateTime which is built in to the W3C XML Schema Types specification. if null current time is used.
        conditions - Conditions under which the this Assertion is valid.
        advice - Advice applicable for this Assertion.
        statements - Set of Statement objects within this Assertion. It could be of type AuthenticationStatement, AuthorizationDecisionStatement and AttributeStatement. Each Assertion can have multiple type of statements in it.
        Throws:
        SAMLException - issuer is null or the size of statements is 0.
    • Method Detail

      • isBearer

        public boolean isBearer()
        Determines if the SecurityAssertion contains SAML Bearer confirmation method.
        Returns:
        true if the SecurityAssertion contains SAML Bearer confirmation.
      • getBearerSubject

        public Subject getBearerSubject()
        Determines if the SecurityAssertion contains SAML Bearer confirmation method. If it is, return its Subject. Otherwise, return null.
        Returns:
        Subject if the SecurityAssertion contains SAML Bearer confirmation.
      • toString

        public String toString()
        Create a String representation of the element.
        Overrides:
        toString in class AssertionBase
        Returns:
        A string containing the valid XML for this element. By default name space name is prepended to the element name example <saml:Assertion>.
      • toString

        public String toString​(boolean includeNS,
                               boolean declareNS)
        Creates a String representation of the <Assertion> element.
        Overrides:
        toString in class AssertionBase
        Parameters:
        includeNS - if true prepends all elements by their Namespace name example <saml:Assertion>
        declareNS - if true includes the namespace within the generated XML.
        Returns:
        A string containing the valid XML for this element.
      • addToParent

        public void addToParent​(Element headerE)
                         throws Exception
        Add the Assertion to the Document Element.
        Parameters:
        headerE - the element to be updated.
        Throws:
        Exception - if there is an error.