browser) and presents it on every request. The main
role of session is to identify the user, avoiding him
to re-authenticate on every action.
In Thoth there are two levels of identification. In
the first level, the user identifies him on his TV
station, by using login and password schema. Thus,
if his authentication succeeds and the session is
created, he will be able to attempt to execute tasks
on his station local resources.
The second identification level occurs when the
user attempts to access resources beyond his station.
For instance, offering a program to shared database
or retrieving reference schedule. In Thoth, each
affiliate station has its own users and its own
security server (that will be better showed on
distribution architecture in section 3.4); therefore,
there is a need to identification on main station site.
On these cases, because the session has local station
scope, the user has to be identified on control
station. In order to create another session, and avoid
user re-authentication, a digital certificate-based
authentication is done.
Using this approach, each affiliate station has a
certificate emitted by control station which acts also
as a certificate authority.
When a station attempts to access these
resources, it presents its certificate to the control
station, which creates a session for it. The affiliates
are to main station, as the users are to its affiliates.
That certificate-based authentication approach is
also used when an affiliate attempts to retrieve video
content from another station local database. The
affiliates exchange their certificates in order to
recognize each other as members of the same TV
network. This approach is called known partners
(Schumacher et al, 2006).
3.2 Authorization and Access Control
Users have different access rights, and these
rights must be checked before the application
executes any resource request. So as to ensure that,
Thoth adopts the reference monitor pattern
(Schumacher et al, 2006). Reference monitor is an
entity which intercepts all requests for resources and
checks them for compliance with authorizations.
Therefore, all user requests are addressed to
reference monitor, that queries the security database,
and allow or deny rights to do a task.
Also through the reference monitor, using a
pattern called limited access, the user interface is
customized according to user’s rights. In this way,
the reference monitor hides or display functionalities
to the user.
In Thoth, the main resources are the schedules
(local and reference) and databases (local and
shared). Each resource has different set of functions
and different interests and responsibilities are
involved. Defining detailed rules requires a high
level of granularity.
Aiming to provide the fine granularity
authorization control for the organizations needs,
Thoth uses Role Based Access Control model
(RBAC) (RBAC, 2007). RBAC is a NIST standard
which regulates access of user to resources based on
their roles in an organization. The roles denote
organizational functions which describe authority
and responsibility assigned to a user. In RBAC, the
access rights are assigned to the roles, according to
the role needs. The roles are assigning to the users,
according to their functions on the organization.
In order to ensure the policy independency, the
access control mechanism must be implemented on
an independent layer. In section 4.4 we present
MACA, the middleware solution for access control
adopted by Thoth.
3.3 MACA: Authentication and Access
Control Middleware
MACA (MACA, 2006) is a solution for provide
authentication and authorization service for legacy
or under developing applications. It implements a
contextual authorization model (MOTTA et al,
2003), which extends RBAC reference model.
A contextual authorization allows or denies
access based on evaluation of rules, during an access
attempt. These rules are defined in terms of
environment functions or variables, available on
context, in order to implement specifics access
policies. Using contextual authorization enhances
the granularity of access control, ensuring more
flexibility to implement distinct policies.
MACA implementation is based on open
standards to ensure interoperability. It’s a scalable
solution, which makes possible a centralized access
policy administration, from different systems, for
heterogeneous applications, made in different
languages. Furthermore, in future their services will
be available via web services, aiming to improve
interoperability.
3.4 Security Architecture
In this section, we show Thoth’s security
architecture. First, the Logic Model shows the
solution elements. In the follow, the Distribution
Model expose where the elements are placed on TV
environment.
ICE-B 2007 - International Conference on e-Business
60