Exercise 3 - Authorization Policies

In this exercise you will authorize a nurse from another hospital to access the patient readings in the example hospital.  The idea behind this exercise is to familarise yourself with writing authorisation policies and with using the shell. Details for using the shell can be found in this copy of the Ponder2.net Shell page.  The hospital domain layout and description can be found in the tutorial slides.

Task

Currently nurses in Rampton hospital are prevented from accessing patient data in Bedlam hospital because there is no positive authorisation set up for them in nurseauth.p2.  Extend file ex3.p2 (found in the Ponder2Tutorial directory) and allow nurse Ratched from Rampton to access the readings for patient Fred in Bedlam hospital.

Run ./ant fred to get the Body Sensor Nodes displayed for patient Fred and then run ./ant ex3  which will create everything else including the nurseauth.p2 authorisation policies and your policies in the file ex3.p2 .

Before you edit the ex3.p2 file you will see that nurse Ratched cannot access Fred's readings. After you have added the authorisation policy you will find that nurse Ratched should be able to access the readings now, but not change them!

Now start the shell and use the shell to disable one of the new authorization policies you created in ex3.p2.  You should see that nurse Ratched can no longer access Fred's readings.

You can use the cd command to find the authorisation policy e.g.
telnet localhost 13570
$ ls
$ cd tauthdom
$ ls
$ ls /tauthdom
However, you will have to use the full pathname when typing PonderTalk (this will be fixed in a future version!)

$ root/tauthdom/ex31 active: false.

Watch nurse Ratched!

Note: Make sure you have run ./ant fred and not ./ant bsn. If you have run the BSN controller properly it will be titled "Fred BSN Controller" not "Tutorial BSN Controller."

Finally

You can see how the example should run by running ./ant fred and ./ant ex3done

home