3.2 Access Control Requirements for
a Medical Practice
A medical practice is one where a few GPs (with
the aid of nurses, pathology collectors and reception-
ists) work under the same roof and they all share a
common intranet with access to a back-end patients’
database. Such a medical practice may also have a
specialist section, where specialists like gynaecolo-
gists and cardiologists may come in and see patients
referred by these GPs at certain times of the week. In
a medical practice, the roles are Patients, Reception-
ists cum cashiers, Pathology collectors, Nurses, Doc-
tors, Practice manager and Medical director. These
roles constitute a comprehensive list of roles present
in a real-world medical practice. Each of these roles
has a specific set of privileges on access to an elec-
tronic patient record.
Here, to provide a comprehensive list of access
control requirements for all these roles, the electronic
patient record is split into four components: Personal
and contact details (Essential), Personal and contact
essential (Not that essential), Personal details (clinic
details), health details (Sim, 2002). The way to read
each of these component Sets is: each entry is called
a field within a component, the entries after - are sub-
fields within this field and these are the sub-fields
where data are entered into for this field. Here, we
will not introduce these sub-fields due to the length
constraint of the paper. More formally, we give defi-
nitions in the light of ManageSecure.
All Roles in a medical practice can be defined as a
set R:
R ={ Patients, Receptionists cum Cashiers,
Pathology Collectors, Nurses, Doctors, Practice
Manager, Medical Director }.
ALL Privileges on access to an patient record can
be described as a set P :
P = { Create, Read, Write, Modify }.
The fields of the first component Personal and con-
tact details (Essential) can be defined as a set E
1
:
E
1
={ Name, Address, Date of Birth, Phone Num-
ber, Payment Method, Data and Time of this Visit}.
Similarly, the second component, the third compo-
nent and the fourth component can respectively be de-
fined as a set E
2
, E
3
, E
4
.
E
2
= { Title, Alias or preferred name, Separate
Postal Address, Email address, Fax number, Occu-
pation, Gender, Marital, Ethnicity, Country of birth,
Next of kin, Employer, Family members}.
E
3
={ Status, Provider, Location of Provider, Pro-
cedures/treatment code, Pathology results (in/out),
Radiology results (in/out), Visit history, Next appoint-
ment}.
In addition, in order to describe the access control
policies conveniently, we also define the two subsets
of E
3
as follows:
• E
31
= { Status, Provider, Location of Provider,
Pathology results (in/out), Radiology results
(in/out), Next appointment}.
• E
32
= { Status, Next appointment}.
E
4
= { Date and time of this consultation, Rea-
sons for consultation, Consultation, History, Ob-
servations, Allergies and sensitivities, Immunisation
record, Medication, Personal medical history, Pathol-
ogy results, Radiology results}.
In terms of the access control requirements from
the real-world medical practice, we only define a few
main access control policies here:
Policy 1: ∀r ∈ R ∧ r = r
2
⊂ s −
holds(r, Create, E
1
)∧s −holds(r, write, E
1
)∧s −
holds(r, M odify, E
1
).
It shows that a receptionist can Create an empty
patient record and have W rite, M odify access to all
fields of E
1
.
Policy 2: ∀r ∈ R ∧ r = r
2
⊂ s −
holds(r, Read, E
2
) ∧ s − holds(r, write, E
2
) ∧ s −
holds(r, M odify, E
2
).
Policy 3: ∀r ∈ R ∧ r = r
2
⊂ s −
holds(r, Read, E
3
)∧ s − holds(r, W rite, E
31
)∧ s −
holds(r, M odify, E
32
).
Policy 4: ∀r ∈ R ∧ r = r
3
⊂ s −
holds(r, Read, E
1
) ∧ s − holds(r, Read, E
2
).
Policy 5: ∀r ∈ R ∧ r = r
5
⊂ s −
holds(r, Read, E
1
) ∧ s − holds(r, Read, E
2
) ∧ s −
holds(r, Read, E
4
) ∧ s − holds(r, W rite, E
4
) ∧ s −
holds(r, M odify, E
4
).
3.3 Access Control Requirements for
a Hospital Setting
Next, in a hospital, the roles that have direct con-
tact with patients’ records are Patients, Administra-
tion officer, Administration head, Finance officer, Fi-
nance head, Registered nurse, Specialist nurse, Head
nurse, Registrars, Senior Registrars, Consultants and
Head of department. In this case, because a medical
practice resembles a mini hospital setting, the patient
record defined for a medical practice is almost suf-
ficient to be the patient record for a hospital, only 3
more fields in the patient record will be added. Here,
we define them into the Personal details (hospital re-
lated) component.
All Roles in a hospital setting can be defined as a
set R
′
:
R
′
= { Patients, Administration officer, Administra-
tion head, Finance officer, Finance head, Registered
nurse, Specialist nurse, Head nurse, Registrars, Se-
nior Registrars, Consultants, Head of department}.
The fields of the personal details (hospital related)
component can be defined as a set E
5
:
DESIGN AND IMPLEMENTATION OF A PRACTICAL SECURE DISTRIBUTED HEALTHCARE APPLICATION
433