policy-enforcing middleware for emerging systems · rather than developers specify how/when...

1
P o l i c y - e n f o r c i n g m i d d l e w a r e f o r e m e r g i n g s y s t e m s This approach aims towards the pervasive vision, as it: Enables wide-ranging functionality: components may be used/ reused for a range of purposes, independent of component logic. Facilitates customisation: to individuals and environments. Users rather than developers specify how/when services are used. Gives control: allows fine-grained specification of what data may be obtained/shared, and under what circumstances. Supports ad-hoc interactions: rather than coordinating through a distant central server. Useful for smart home/city scenarios. To get the most from emerging systems, components must not operate solely within vertical silos (a single application/system). Instead, components should be free to be used and reused, interacting with any other, whenever appropriate. SBUS allows dynamic reconfiguration, to control: Connections: when and where to connect/disconnect; how to interact (RPC, streams, publish/subscribe); Translation: how to interpret the data (and types) of others; Security/Privacy: permissions, encryption, discovery, filters. Policy encapsulates high-level (user) concerns/preferences. It is enforced by undertaking reconfiguration operations, in the relevant circumstances, to meet high-level goals. Computing is becoming increasingly ubiquitous. The number and range of system components (data producers/consumers), many of which are dynamic and/or mobile, is dramatically growing. SBUS is a messaging-middleware we developed for mediating between components and networks, to manage their interactions. The reconfiguration operations allow components to themselves, or as instructed by others , adapt as required. Policy engines are components dedicated to effecting the preferences and functional goals of an individual or environment. J a t i n d e r S i n g h C o m p u t e r L a b o r a t o r y - U n i v e r s i t y o f C a m b r i d g e Users and environments will coordinate components in a number of different ways, to achieve a range of functional goals. Reconfiguration in a medical emergency. Patient-specified policy enables a proper care response by automatically relaxing restrictions, and informing the relevant parties. Policy for a user entering a shopping centre, enforced by their phone. Mobile policy engines facilitate seamless interaction with different environments. Action Component Parameters Description connect phone.map local, owner:Tescbury’s, data:location Connect the phone’s mapping app to any component that a) serves interpretable location data, b) is on the local (shopping centre) network, c) is owned by Tescbury’s change_privilege phone.adverts allow, from:Tescbury’s Allow the phone to receive advertisements from Tescbury’s change_privilege phone.adverts deny, from:McRonald’s Do not allow advertisements from McRonald’s connect home.fridge local.trolleyservice, owner:Tescbury’s Initiate interactions between the smart fridge at home to the smart shopping trolley in the store, to help with shopping lists, etc. Patient DB Policy Engine A&E Body Sensor Network alert connect to A&E authorise wife, A&E Location data flow reconfiguration Patient’s wife alert

Upload: others

Post on 27-Sep-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Policy-enforcing middleware for emerging systems · rather than developers specify how/when services are used. •! Gives control: allows fine-grained specification of what data

Policy-enforcing middleware !for emerging systems!

This approach aims towards the pervasive vision, as it: •! Enables wide-ranging functionality: components may be used/

reused for a range of purposes, independent of component logic. •! Facilitates customisation: to individuals and environments. Users

rather than developers specify how/when services are used. •! Gives control: allows fine-grained specification of what data may

be obtained/shared, and under what circumstances. •! Supports ad-hoc interactions: rather than coordinating through a

distant central server. Useful for smart home/city scenarios.

To get the most from emerging systems, components must not operate solely within vertical silos (a single application/system). !Instead, components should be free to be used and reused, interacting with any other, whenever appropriate.

SBUS allows dynamic reconfiguration, to control: •! Connections: when and where to connect/disconnect; how to

interact (RPC, streams, publish/subscribe); •! Translation: how to interpret the data (and types) of others; •! Security/Privacy: permissions, encryption, discovery, filters.

Policy encapsulates high-level (user) concerns/preferences. It is enforced by undertaking reconfiguration operations, in the relevant circumstances, to meet high-level goals.

Computing is becoming increasingly ubiquitous. The number and range of system components (data producers/consumers), many of which are dynamic and/or mobile, is dramatically growing.

SBUS is a messaging-middleware we developed for mediating between components and networks, to manage their interactions.

The reconfiguration operations allow components to themselves, or as instructed by others, adapt as required.

Policy engines are components dedicated to effecting the preferences and functional goals of an individual or environment.

Jatinder Singh – Computer Laboratory - University of Cambridge !

Users and environments will coordinate components in a !number of different ways, to achieve a range of functional goals.!

!

Reconfiguration in a medical emergency. Patient-specified policy enables a proper care response by automatically relaxing restrictions, and informing the relevant parties.!

!

Policy for a user entering a shopping centre, enforced by their phone.!Mobile policy engines facilitate seamless interaction with different environments.!

!

Action! Component! Parameters! Description!

connect! phone.map! local, owner:Tescbury’s, data:location!

Connect the phone’s mapping app to any component that a) serves interpretable location data, b) is on the local (shopping centre) network, c) is owned by Tescbury’s!

change_privilege! phone.adverts! allow, from:Tescbury’s! Allow the phone to receive advertisements from Tescbury’s!

change_privilege! phone.adverts! deny, from:McRonald’s! Do not allow advertisements from McRonald’s!

connect! home.fridge! local.trolleyservice, owner:Tescbury’s!

Initiate interactions between the smart fridge at home to the smart shopping trolley in the store, to help with shopping lists, etc.!

Patient DB!

Policy!Engine!

A&E!

Body Sensor!Network!

alert!

connect to A&E!

authorise!wife, A&E!

Location!

Patient

Location

data flow!reconfiguration!Patient’s wife!

aler

t!