Qualifying a Viewer in a Role

We can imagine numerous method for authentication of viewers but for the purposes of our prototype we will accept that the domain name of a logged-in site owner is sufficiently authenticated. Here we consider how a remote site might authorize a user to fill a specific role.

Aside: Role-based access control (RBAC) is a policy-neutral access control mechanism defined around roles and privileges. wikipedia

Imagine a brother and sister, John and Jane Doe. John is a qualified physician but only informally watching after sister Jane during her difficult pregnancy.

Jane maintains pregnancy related medical records on her wiki: jane.medical.hometown.org. John keeps track of family on john.wiki.somewhere.org. To review Jane's medical record, John logs into his own site, then adds two of Jane's pages as remote pages in his own lineup.

digraph { rankdir=LR node [shape=box style=filled] node [fillcolor=white] Home [label="John's\nHome Page"] node [fillcolor=lightblue] Auth [label="Jane's\nAuthorizations"] Data [label="Jane's\nMedical Data"] Home -> Auth -> Data }

Jane has provided a page of Authorizations on a page she controls. This identifies John as "family" when he is viewing from john.wiki.somewhere.org.

Jane has marked some of her medical data as available to be read by "family" so in this lineup John can see this with no further effort.

# Prototype

For demonstration purposes we will allow viewers of private data by temporarily assuming various roles so that the variability of the system behavior can be experienced. Jane's Authorization page might simply list roles and offer check boxes to assume one or more available roles.

- [ ] owner - [x] family - [ ] physician - [ ] specialist

Jane Doe is just one of our design personas. If I were to develop in my wiki an example of how this persona would interact with the system I would create three pages:

- Jane's Persona -- Why this persona has special needs. - Jane's Authorizations -- The roles use in this example. - Jane's Medical Data -- Pages used to tell a data story.

This way each one of us can create interesting personas and these can be forked around our wiki sites as we explore the many ways we might serve each persona's needs.