
3 RELATED SYSTEMS
Many different solutions have been proposed in recent
years for offering single sign-on in different environ-
ments (de Laat et al., 2000; Volchkov, 2001). Many of
them are not transferable to a heterogeneous and dis-
tributed Web environment as they require a central-
ized structure of the involved components and com-
mon protocols. Other systems work with clients that
are required to have additional functionality (Pfitz-
mann and Waidner, 2003) which we do not consider
to be a realizable approach in the World Wide Web
environment. In the following, we give an overview
over the three solutions known to us regarding single
sign-on for Web applications and compare the sys-
tems with our solution.
Microsoft’s .NET Passport system (Microsoft Cor-
poration, 2004b; Kormann and Rubin, 2000) is the
largest functional single sign-on solution with 200
million accounts performing approximately 1350 au-
thentication requests per second (March 13, 2003,
(Microsoft Corporation, 2004a)). The system consists
of a central Passport server that contains and man-
ages all user accounts and corresponding user infor-
mation and performs the authentication. Each user
has a unique identifier. If a user has logged on to
Passport from a service provider’s site he can sub-
sequently visit sites of other businesses adhering to
Passport and is recognized by his unique identifier.
The Passport server as well as the service providers
set transient (session-only) or persistent cookies to
recognize the user as already logged in. The cook-
ies contain credential information about the user. A
global logout from all Passport accounts is realized
by including logout requests to all services the user is
currently logged in with (and of which he possesses
valid cookies) in HTML image tags.
The main difference between Passport and our so-
lution is Passport’s central authentication and user
database server. This server is a single point of failure,
if the service breaks down all businesses using Pass-
port are unavailable to the users. It is not stated which
measures are taken to offer scalability and backup
servers. Possible dangers of replicated databases are
discussed in (Kormann and Rubin, 2000). Our solu-
tion works with different, distributed authentication
servers and integrates multiple, local user databases
without requiring a separate, unique identifier. Iden-
tification across multiple domains may be realized
at different levels by the means of public roles. No
credential information is stored in local user cookies
which may potentially be modified by the user him-
self and is not well protected against access from in-
truders.
The Liberty Alliance Project (Liberty Alliance
Project, 2003) was formed in September 2001 by an
association of several major companies in order to
specify open standards for federated network iden-
tity management. The architecture (Liberty Alliance
Project, 2003) allows for each service provider to
maintain its own user database and user identities. A
user who wants to use single sign-on between service
providers with different identities may select to fed-
erate these identities between the service providers
who are now able to match the foreign identity to their
own. Without federation the user has to separately log
into each service provider. The decision of whether to
trust a user logged in with a different, federated iden-
tity remains the service provider’s local policy. Iden-
tity providers take the role of the authentication server
and the cookie server in our scenario, they use cookies
to maintain a user’s login state.
Like our solution, the Liberty architecture allows
for integration of existing user databases and accounts
of different service providers. The choice of whether
to trust a federated identity can be made locally by
each service provider, like it is the case with the pub-
lic roles introduced in our system. The server ar-
chitecture is nevertheless different. Liberty does not
state whether SSO is possible across multiple identity
providers and does not distinguish between authenti-
cation server and cookie server. Having the possibil-
ity to choose a nearby authentication server reduces
the route length over which passwords and other cre-
dential information have to be carried to a minimum
whereas no such sensitive data has to be transferred to
and from the cookie server. Data have to be transmit-
ted between the cookie and the authentication server
only upon an initial service provider login. It is there-
fore useful and improves the security of the system to
introduce this flexibility without having an important
impact on the overall system performance.
Samar (Samar, 1999) proposes different proto-
cols for cookie-based single sign-on. For cross-
domain authentication, he introduces two centralized
servers, a cookie server and a login server. The login
server contains the authentication information about
all users in the SSO domain and recognizes signed-in
users by means of a login server cookie. The cookie
server contains information about the different Web
application cookies. Samar does not give detailed in-
formation about the possibility of a global logout in
this scenario.
Samar’s approach does not offer the integration of
decentralized user databases and introduces two sin-
gle points of failure, namely the login and the cookie
server. The approach is similar to Microsoft’s Pass-
port except that Passport integrates the two different
server types in one central server. Authorization is
done locally at the service providers.
A SINGLE SIGN-ON PROTOCOL FOR DISTRIBUTED WEB APPLICATIONS BASED ON STANDARD INTERNET
MECHANISMS
197