2001) for a conceptual workflow model including
authentication, authorization, access control, data
integrity, security management and administration.
Further, WfMC proposes an inter-operability
protocol to support workflow services. However,
WfMC does not consider the flow of authorizations
among parties, tasks and resources during the
workflow execution.
Discretionary Access Control (DAC) (Pernul,
1992) is used to control the access privileges from
subjects to objects. DAC defines what kind of access
a subject has to an object, and a set of predicates to
represent access rules such as read, write, delete,
create and copy. DAC only applies to control of
system-oriented resources like database, file system,
etc. Moreover, DAC cannot handle when to
grant/revoke the access rights of the object to/from
the subjects in this case.
The Workflow Authorization Model (WAM)
(Atluri & Huang, 1996, Atluri et al., 1997) presents
a conceptual, logical and execution model which
concentrates on the enforcement of authorization
flow in task dependency and transaction processing
by using Petri Nets (PN). WAM defines the static
parameters of the authorization using an
Authorization Template (AT) during the build-time
of the workflow. Further, WAM extends the PN
model by proposing a multilevel secure workflow
transaction model which is based on colored and
timed PNs. The resulting PN is complex and special
algorithms are needed for its construction. Though
WAM discusses the synchronization of authorization
flow with the workflow and specification of
temporal constraints in a static approach, it is not
sufficient to support workflow security. WAM
grants all the authorizations to an agent once the task
starts execution and it revokes all the authorizations
from an agent once the task is completed, but it does
not monitor the event(s) during the execution of
task. WAM handles the security property of
Authorization and MLS handles the security
property of Integrity in the task dependencies, but
they do not handle the security property of
Availability( Hung & Karlapalem, 2003).
Hung & Karlapalem (Hung & Karlapalem, 2003)
developed a secure workflow model using a multi-
layered state machine to manage and monitor the
flow of authorizations at different layers for a secure
workflow execution. There are three layers in a
secure workflow: workflow, control and data. A
multi-layered state machine describes a system in
different layers and each layer is an abstract
mathematical state machine with a set of transition
functions. The interaction between two
mathematical state machines at different layers is
triggered by an event. Further, they described a set
of authorization functions to support the state
machine. In this model, sets of state variables,
functions and algorithms are defined. The model is
complicated.
A secure workflow model should ensure the
security properties of integrity, authorization and
availability. Moreover, it should be easily readable
and understandable. In this paper, I propose a secure
workflow model, which describes a secure workflow
from the aspects of task, agent, event and data.
3 SECURE WORKFLOW MODEL
Security is an essential and integral part of
workflows. A secure workflow model should not
only be able to manage and execute workflows
effectively, but also satisfy the security requirements.
3.1 Basic Concepts in Secure Workflow
Model
Workflow systems are software applications which
automate and streamline business processes. The
main elements of a workflow specification are: tasks,
control flow, subject, data items and data flow.
Formally, a workflow (W) is represented as a
partially ordered set of tasks (T) that is coordinated
by a set of events (E). The order of task execution is
orchestrated by matching the input and output
event(s) of each task. An event can be either a data
event or control event. Each task represents a piece
of work that needs to be done by an agent (A).
Further, a set of documents (D) need to be processed
by an agent during the task execution.
A secure workflow is a computer supported
business process that is capable to against security
threats and further satisfies the security requirements
defined by the workflow modeller (Hung &
Karlapalem, 2003).
In a secure workflow, a set of authorizations is
needed for executing tasks and accessing documents.
A secure workflow model needs to grant the agent
the authorization(s) to execute a task(s) or to revoke
the task from the assigned agent based on the
occurrence of a certain event(s). Furthermore, an
agent needs to get certain access privileges (PR)
(e.g., “read”, “write” and “read-write”) to a set of
documents (D) during the task execution. In other
words, the secure workflow model needs to grant the
document access privilege to the agent or to revoke
the document access privilege from the agent.
A BPMN BASED SECURE WORKFLOW MODEL
269