The proposed model also allows for user
delegation and organizational cooperation.
Delegation is to give to a user u
1
the same
permissions of another user u
2
during a specific
period. In general during this period, u
2
is out of
work. The delegation can be represented in the
proposed model by adding u
1
into the same group of
u
2
. Besides, organizational cooperation can be
represented too. Cooperation between companies
occurs when a company c
1
is contracted by another
company c
2
in order to develop together a solution
(product or service). In this case company c
2
has its
own access control model and needs to give access
to c
1
for specific objects. So, an organization
structure can be introduced into the existent model
to represent c
1
and the relations between groups from
c
1
and
c
2
can be well established.
The proposed model is quite general and can be
used for both specifying collaborative editing tools
and determining classes of collaborative tools. The
specification of massive collaborative editing
systems may require the configuration of web tools,
which may be awkward and tiresome. The
configuration can require thousands of assignments
of users, roles, operations, and objects to provide the
functionality with access control if one chooses to
use the conventional RBAC model. Using the
proposed model, the number of assignments can be
reduced significantly and are easier to make.
Our experience with the construction of
collaborative editing system of a graduate studies
catalogue, with 18 users, 21 groups, 21 document
items, 1 workflow, 6 roles, and 5 tasks, showed a
significant reduction of assignments of roles to the
users. It was possible to reduce from 178 to 74. In
the implementation of the catalogue, we also
benefited from other reductions. The proposed
model allows using one workflow definition and 6
role definitions for all the document items. It is
expected that for larger numbers of users and
document items, the reductions of assignment
numbers are very significant.
The group structure allowed also an easier
maintenance of the system. When a user enters or
leaves the system (or when she/he is replaced) it
suffices to make changes in the groups that she/he
belongs to.
We also advocate that the model can be used to
classify the collaborative editing systems. For
instance, Wikipedia can be seen as an instance of the
model with the following definitions:
USERS: any web user.
GROUPS: world (not structured).
OBS: any page regarding some subject.
OPS: edit.
PRMS: edit any object.
ROLES: collaborator, which can edit any page.
Since there is one group in Wikipedia, every user
belongs to it. The group has just one role
(collaborator), and this a role is assigned to the
group. The objects are not structured. Since there is
one permission, a workflow is not defined.
Therefore, it is possible to use instances of the
model to classify collaborative systems. It is not
difficult to model other systems such as Google
Docs (2008). The model for Google Docs is
presented below:
USERS: any person invited by the document
owner.
GROUPS: world (not structured).
OBS: a document, including DOC, XLS, ODT,
ODS, RTF, CSV, PPT, etc.
OPS: to create, to read, and to change a
document by inserting tables and images,
adding comments and formulas, changing letter
style, etc. It is also possible to organize the
documents in folders, and to publish the
document as a web page.
PRMS: the same as OPS, but applied to a
specific document.
ROLES: author, reader and collaborator. The
author is the document owner. Readers and
collaborators are chosen by the author. A
reader can only read the document, while a
collaborator can read and change it.
4 RELATED WORK
The related work proposes extensions of RBAC
model that can partially address MCE systems,
according to the following characteristics: workflow,
document structure and organization structure.
The concept of document structure is proposed
by Buegge et al. (2006) within the scope of the
management of artefacts produced in distributed
software development. In their work, the goal is not
MCE, and workflow and organization structure are
not mentioned.
Sun and Pan (2005) propose the FRWM model,
where the relation between roles and permissions is
made via workflow tasks. Although the workflow
concept is considered, they do not take into account
the document and organization structure.
Wang and Long (2007) present a model
associating a workflow task to the users and not to
the permissions. In their proposal, document
structure is not addressed. Their model also
considers organization that contains users, but the
organization is not related to roles. In our approach,
AN ACCESS CONTROL MODEL FOR MASSIVE COLLABORATIVE EDITION
139