com.sun.identity.liberty.ws.security
Class SecurityAssertion

java.lang.Object
  extended by com.sun.identity.saml.assertion.AssertionBase
      extended by com.sun.identity.saml.assertion.Assertion
          extended by com.sun.identity.liberty.ws.security.SecurityAssertion

public class SecurityAssertion
extends Assertion

The SecurityAssertion class provides an extension to Assertion class to support ID-WSF ResourceAccessStatement and SessionContextStatement.


Field Summary
 
Fields inherited from class com.sun.identity.saml.assertion.AssertionBase
_advice, _assertionID, _conditions, _issueInstant, _issuer, _majorVersion, _minorVersion, _statements, ASSERTION_ID_ATTRIBUTE, sc, signatureString, signed, valid, validationDone, xmlString
 
Constructor Summary
SecurityAssertion(Element assertionElement)
          This constructor creates a SecurityAssertion object from a DOM Element.
SecurityAssertion(String assertionID, String issuer, Date issueInstant, Conditions conditions, Advice advice, Set statements)
          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.
SecurityAssertion(String assertionID, String issuer, Date issueInstant, Conditions conditions, Set statements)
          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.
SecurityAssertion(String assertionID, String issuer, Date issueInstant, Set statements)
          Constructs SecurityAssertion object with the assertionID, the issuer, time when assertion issued and a Set of Statement(s) in the assertion.
 
Method Summary
 void addToParent(Element headerE)
          Add the Assertion to the Document Element.
 Subject getBearerSubject()
          Determines if the SecurityAssertion contains SAML Bearer confirmation method.
protected  int getMaxAssertionMinorVersion()
           
protected  int getMinAssertionMinorVersion()
           
 boolean isBearer()
          Determines if the SecurityAssertion contains SAML Bearer confirmation method.
 boolean isSignatureValid()
          Return whether the signature is valid.
protected  boolean processUnknownElement(Element element)
           
 void setVerifyingCertAlias(String certAlias)
          Sets the value of the certificate alias.
 String toString()
          Create a String representation of the element.
 String toString(boolean includeNS, boolean declareNS)
          Creates a String representation of the <Assertion> element.
 
Methods inherited from class com.sun.identity.saml.assertion.Assertion
createAdvice, createAssertionIDReference, createAssertionIDReference, createAttributeStatement, createAuthenticationStatement, createAuthorizationDecisionStatement, createConditions, getAdvice, parseAssertionElement, signXML, signXML
 
Methods inherited from class com.sun.identity.saml.assertion.AssertionBase
addStatement, getAssertionID, getConditions, getIssueInstant, getIssuer, getMajorVersion, getMinorVersion, getSignature, getStatement, isSigned, isTimeValid, setAdvice, setAssertionID, setConditions, setIssueInstant, setIssuer, setMajorVersion, setMinorVersion, setSignature
 

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

setVerifyingCertAlias

public void setVerifyingCertAlias(String certAlias)
Sets the value of the certificate alias.

Parameters:
certAlias - the certificate alias.

isSignatureValid

public boolean isSignatureValid()
Return whether the signature is valid.

Overrides:
isSignatureValid in class Assertion
Returns:
true if the signature is valid.

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.

processUnknownElement

protected boolean processUnknownElement(Element element)
                                 throws SAMLException
Overrides:
processUnknownElement in class Assertion
Throws:
SAMLException

getMinAssertionMinorVersion

protected int getMinAssertionMinorVersion()
Overrides:
getMinAssertionMinorVersion in class Assertion

getMaxAssertionMinorVersion

protected int getMaxAssertionMinorVersion()
Overrides:
getMaxAssertionMinorVersion in class Assertion

addToParent

public void addToParent(Element headerE)
Add the Assertion to the Document Element.

Parameters:
headerE - the element to be updated.
Throws:
Exception - if there is an error.