<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Lasso Architecture: Lasso Reference Manual</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="index.html" title="Lasso Reference Manual">
<link rel="up" href="rn01.html" title="Application Programming Interface">
<link rel="prev" href="rn01.html" title="Application Programming Interface">
<link rel="next" href="lasso-LassoServer.html" title="LassoServer">
<meta name="generator" content="GTK-Doc V1.28 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
<td width="100%" align="left" class="shortcuts"></td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
<td><a accesskey="u" href="rn01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
<td><a accesskey="p" href="rn01.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
<td><a accesskey="n" href="lasso-LassoServer.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
<div class="chapter">
<div class="titlepage"><div><div><h2 class="title">
<a name="architecture"></a>Lasso Architecture</h2></div></div></div>
<div class="toc"><dl class="toc">
<dt>
<span class="refentrytitle"><a href="lasso-LassoServer.html">LassoServer</a></span><span class="refpurpose"> — Representation of the current server</span>
</dt>
<dt>
<span class="refentrytitle"><a href="lasso-LassoProvider.html">LassoProvider</a></span><span class="refpurpose"> — Service or identity provider</span>
</dt>
<dt>
<span class="refentrytitle"><a href="lasso-LassoIdentity.html">LassoIdentity</a></span><span class="refpurpose"> — Principal identity</span>
</dt>
<dt>
<span class="refentrytitle"><a href="lasso-LassoFederation.html">LassoFederation</a></span><span class="refpurpose"> — Principal federation between two providers</span>
</dt>
<dt>
<span class="refentrytitle"><a href="lasso-LassoSession.html">LassoSession</a></span><span class="refpurpose"> — Principal Session</span>
</dt>
<dt>
<span class="refentrytitle"><a href="lasso-LassoProfile.html">LassoProfile</a></span><span class="refpurpose"> — Base class for all identity profiles</span>
</dt>
<dt>
<span class="refentrytitle"><a href="lasso-Error-Codes.html">Error Codes</a></span><span class="refpurpose"> — Error codes returned by lasso functions</span>
</dt>
<dt>
<span class="refentrytitle"><a href="lasso-node.html">LassoNode</a></span><span class="refpurpose"> — Base class for all Lasso objects</span>
</dt>
<dt>
<span class="refentrytitle"><a href="lasso-Base-Strings.html">Base Strings</a></span><span class="refpurpose"> — General strings constants for Lasso</span>
</dt>
<dt>
<span class="refentrytitle"><a href="lasso-registry.html">registry</a></span><span class="refpurpose"> — Class to store a mapping of qualified names (QName) to other qualified names.</span>
</dt>
<dt>
<span class="refentrytitle"><a href="lasso-LassoMiscTextNode.html">LassoMiscTextNode</a></span><span class="refpurpose"></span>
</dt>
</dl></div>
<p>Lasso handle the concepts of providers sharing identities, that can
enable the creation of sessions following an authentication. The
current provider is represented by the LassoServer object, which
inherit from the <a class="link" href="lasso-LassoProvider.html" title="LassoProvider">LassoProvider</a>. All known providers to the current
provider must be registered inside the <a class="link" href="lasso-LassoServer.html" title="LassoServer">LassoServer</a> object. Some
providers are identity providers, by sending authentication request
you can establish federation, materialised by <a class="link" href="lasso-LassoFederation.html" title="LassoFederation">LassoFederation</a>
objects, between identity stored by the identity provider and
another stored by the current provider. Those federation are stored
in the <a class="link" href="lasso-LassoIdentity.html" title="LassoIdentity">LassoIdentity</a> object. Each time an authentication is done,
an assertion reprenting it is stored in the <a class="link" href="lasso-LassoSession.html" title="LassoSession">LassoSession</a> object.
They are stored in a map, keyed by the originating identity
provider, see lasso_session_get_assertion().
</p>
<p>Protocols from the ID-FF 1.2 or the SAML 2.0 family are represented
by object whose class inherit from <a class="link" href="lasso-LassoProfile.html" title="LassoProfile">LassoProfile</a>. The constructor
of those profile objects needs a <a class="link" href="lasso-LassoServer.html" title="LassoServer">LassoServer</a>, and eventually a
<a class="link" href="lasso-LassoIdentity.html" title="LassoIdentity">LassoIdentity</a> and a <a class="link" href="lasso-LassoSession.html" title="LassoSession">LassoSession</a>.
</p>
<p>LassoNode is the base class for all Lasso classes, it gives XML serialization and deserialization support to all of them.</p>
<p>The <a class="link" href="lasso-LassoMiscTextNode.html" title="LassoMiscTextNode">LassoMiscTextNode</a> allows to represent miscellenaous nodes for whose no mapping to a specific GObjectClass exists.</p>
</div>
<div class="footer">
<hr>Generated by GTK-Doc V1.28</div>
</body>
</html>