SolidLabResearch / Challenges

24 stars 0 forks source link

Share location for a limited time #116

Open woutslabbinck opened 1 year ago

woutslabbinck commented 1 year ago

Pitch

In the location-sharing application (challenge 10), a custom, application-specific, implementation was implemented to request and give access to the location of another end-user.

While this approach made it possible to share the current location, an end-user was responsible for managing the access control.

With the (pending) completion of "Temporal Usage Control Policy (UCP) execution for Solid Resources" (challenge 111), an enforcing strategy for UCP is implemented. In this challenge, those two challenges could be extended by combining a strategy to request a resource and having it enforced for a given period by an agent.

Desired solution

A demo that builds upon the location-sharing application. Person A has their location history. Person B would like to view the live location and history of person A and sends an Event Notification 'Offer' to A with the request for access. Person A reads this 'Offer' and grants access to person B, though person A does not want to share its location indefinitely. As a result person A allows person B to access the location for a given duration. This temporal access grant is added to the Usage Control Policy Knowledge Graph of person A. This way, the orchestrator/agent of person A can (i) honorate this grant and (ii) furthermore notify person B with an 'Announce' that he is granted temporary access.

Acceptance criteria

The solution should support at least the following flow:

  1. Person B wants to view person A's location with the app but doesn't have access.
  2. Person B asks for access via the app.
  3. Person A gives access via the app.
  4. Person B tries to view the location again. Works now.
  5. After 30s access is revoked. (without the intervention of person A)
  6. Person B can't view the location anymore.

Pointers

Scenarios