LassoSamlAssertion

LassoSamlAssertion — <saml:Assertion>

Synopsis


#include <lasso/lasso.h>

                    LassoSamlAssertion;
LassoSamlAssertion* lasso_saml_assertion_new            (void);

Object Hierarchy

  GObject
   +----LassoNode
         +----LassoSamlAssertion
               +----LassoLibAssertion

Description

Figure 22. Schema fragment for saml:Assertion


<element name="Assertion" type="saml:AssertionType"/>
<complexType name="AssertionType">
  <sequence>
    <element ref="saml:Conditions" minOccurs="0"/>
    <element ref="saml:Advice" minOccurs="0"/>
    <choice maxOccurs="unbounded">
      <element ref="saml:Statement"/>
      <element ref="saml:SubjectStatement"/>
      <element ref="saml:AuthenticationStatement"/>
      <element ref="saml:AuthorizationDecisionStatement"/>
      <element ref="saml:AttributeStatement"/>
    </choice>
    <element ref="ds:Signature" minOccurs="0"/>
  </sequence>
  <attribute name="MajorVersion" type="integer" use="required"/>
  <attribute name="MinorVersion" type="integer" use="required"/>
  <attribute name="AssertionID" type="saml:IDType" use="required"/>
  <attribute name="Issuer" type="string" use="required"/>
  <attribute name="IssueInstant" type="dateTime" use="required"/>
</complexType>

From oasis-sstc-saml-schema-assertion-1.0.xsd:
<simpleType name="IDType">
  <restriction base="string"/>
</simpleType>


Details

LassoSamlAssertion

typedef struct {
	/* <element ref="saml:Conditions" minOccurs="0"/> */
	LassoSamlConditions *Conditions;
	/* <element ref="saml:Advice" minOccurs="0"/> */
	LassoSamlAdvice *Advice;
	void *Statement; /* XXX LassoSamlStatement missing from lasso */
	LassoSamlSubjectStatement *SubjectStatement;
	LassoSamlAuthenticationStatement *AuthenticationStatement;
	void *AuthorizationDecisionStatement;
		/* XXX LassoSamlAuthorizationDecisionStatement missing from lasso*/
	LassoSamlAttributeStatement *AttributeStatement;

	int MajorVersion;
	int MinorVersion;
	char *AssertionID;
	char *Issuer;
	char *IssueInstant;

	/* ds:Signature stuff */
	LassoSignatureType sign_type;
	LassoSignatureMethod sign_method;
	char *private_key_file;
	char *certificate_file;
} LassoSamlAssertion;


lasso_saml_assertion_new ()

LassoSamlAssertion* lasso_saml_assertion_new            (void);

Creates a new LassoSamlAssertion object.

Returns : a newly created LassoSamlAssertion object