Vlaamse Solid Community – WG Use Cases (11/2/22)

BreakOut Social/business

Prioritering thema’s:

Het informeren over Solid scoort laag omwille van het idee dat we nu best gewoon starten. Het principe moet wel worden uitgelegd, en de use flow moet gebruiksvriendelijk zijn, maar het echte informeren over kan op een later tijdstip. Nu focus op een werkend proces. Bovendien moet het verhaal niet per se Solid zijn. We moeten use case driven werken en ook zo communiceren.

Prioritering topics

  • De gebruiker moet een duidelijk overzicht krijgen van de gegeven toegangen. Het is te vermijden dat die overdonderd wordt zoals bij Cookies. Transparantie, overzichtelijkheid en beheersbaarheid voor de gebruiker moet centraal staan.
  • Granulariteit van de data waarop toestemming wordt gevraagd/gegeven. Hoe gaan we dit verpakken? Risico op te veel toestemming of te veel data afhankelijk van niveau waarop je consent geeft.
  • Wordt er voorzien om de tijdsdimensie te voorzien in consent? Bijvoorbeeld na X dagen vervalt toelating om gegevens te raadplegen.
    • Tijdsdimensies zijn mee opgenomen in het OSLO-model
    • Register van OSLO-standaarden zijn beschikbaar via data.vlaanderen.be
  • Minimale kennis en type gebruikers kan onderzocht worden vanuit SolidLab. UX aanmeld proces is complexer en belangrijk dat alle partijen gealligneerd zijn op elkaar.
  • UX en UI zal scherpgesteld moeten worden op basis van A/B testing en continues improvements
  • Vanuit publiq vzw willen we zeker mee de UX van de registratie opvolgen, na de ervaring van de SOLID POC die we met UiTPAS uitprobeerden op de Trefdag Digitaal Vlaanderen.
  • Veel gelijkenissen tussen onderzoeksvragen Solidlab en de prioriteiten. Solidlab is op zoek naar concrete usecases om onderzoek te concretiseren.
  • Bereidheid om te delen bij gebruiker zal afhangen van type data dat beschikbaar is (hoe relevant is het om de data te delen). Er is een link tussen design van centraal proces en de verschillende use cases.
  • Een wisselwerking is tussen Solidlab en de solid community om input te vergaren en resultaten te delen.

De vijf technische topics en hun prioriteit voor de community

Tijdens de technische break-out bespraken we 5 technische topics, waar Digitaal Vlaanderen, Datanutsbedrijf, SolidLab en haar partners momenteel mee geconfronteerd worden of zullen worden geconfronteerd. De community werd gevraagd om deze een prioriteit te geven voor de technische werkgroep. In de secties hierna gaan we dieper in op de input vanuit de community.

  1. Authenticatie & Autorisatie
  2. Data & Interoperabiliteit
  3. Security
  4. Developer Experience
  5. Technische Governance

1.    Authenticatie & Autorisatie

De stellingen die we hebben gepresenteerd bleken erg technisch te zijn en geen sterke mening uit te lokken bij de deelnemers. Evenwel is dit voor hun één van de belangrijkste topics, dus zullen we in de technische werkgroep moeten uitzoeken waar de struikelblokken zijn en hoe we de community daarin kunnen ondersteunen.

De opmerking werd gemaakt dat de authenticatie en autorisatie panels binnen de W3C Solid community misschien kunnen terugkoppelen naar de bredere OpenID Connect en OAuth specificatie-communities om beter te aligneren. We zien dit ook terugkomen in één van de opmerkingen van de deelnemers als een meer algemeen punt rond het Solid-specificatieproces.

De voorlopige uitdagingen die wij intern al formuleerden rond de topic:

  • Fine-grained sharing & Autorisatie voor specifieke data-elementen
    • Data Shapes
    • Shape Trees
    • Type Indexes
    • Autorisatie op basis van generiekere user roles, in plaats van specifieke users/WebIDs.
      • acl:Group
      • Verifiable Credentials
      • WebID op niveau van organisatie
      • Delegation
    • Solid OIDC:
      • Uitbreiding op OpenID Connect 1.0 Specificatie
      • Specifieke uitbreidingen vragen om eigen identity proxy of andere oplossingen?

2.    Data & Interoperabiliteit

Het topic Data & Interoperabiliteit wekte veel reactie op bij de deelnemers. We zien dat ze bezig zijn met de uitdagingen rond authenticiteit en integriteit van de data in Solid Pods, en op zoek zijn naar good practices om data te publiceren in Solid Pods als Linked Data. Het identificeren van kwalitatieve databronnen blijkt minder problematisch te zijn voor deze beperkte groep.

De synchronisatie met legacy systemen is een topic dat we mee zullen nemen uit de vrije feedback van de deelnemers, dit blijkt immers ook een uitdaging.

3.    Security

Het belangrijke topic van Security rond de top 3 uit. We zien dat velen op zoek zijn naar patronen en good practices rond de ontwikkeling van veilige Solid toepassingen. Zelf formuleerden we rond dit topic al een aantal uitdagingen maar het lijkt zinvol om ook met de community in dialoog te gaan over welke zorgen zij concreet hebben.

Onze eigen vraagtekens rond security, die we ook brachten naar de deelnemers, zijn de volgende:

  • Phishing
    • Hoe omgaan met het risico voor WebIDs en resource IRIs?
    • Audit logging voor Solid toepassingen

4.    Developer Experience

Op een zeer nipte vierde plaats staat het topic Developer Experience. Hier merkt één van de deelnemers ook op dat ondersteuning voor meer programmeertalen een belangrijke nood is, waar ook hun team mee bezig is in het kader van een Java-library. Ook binnen de W3C community beweegt er veel om Solid breder inzetbaar te maken dan het web.

Als we kijken naar de stellingen van de deelnemers zijn de meningen over de stellingen rond Developer Experience evenwel niet erg uitgesproken. Hier is het dus belangrijk om de concrete noden te identificeren en dit te linken aan de fases van het ontwikkelproces van eventuele use cases waar zij zich in bevinden.

Zelf brachten we volgende elementen naar voren:

  • Libraries voor meer programmeertalen
    • Eenvoud van de bestaande programmeertechnieken voor Linked Data / Solid
    • Testing & mocking van Solid Pods

Eén van de deelnemers gaf ook aan dat een goede getting started resource voor bijvoorbeeld autorisatie nog ontbreekt. Dit soort tutorials kunnen belangrijk zijn in de context van Developer Experience.

5.    Technische Governance

De interactie tussen governance en het technische niveau werd door het panel ook aangehaald, hierbij zagen we enkele sterke meningen in de stelling. Maar het lijkt evenwel goed dat dit niet één van de issues met hoogste prioriteit is voor een technische werkgroep, aangezien veel op niveau van governance nog ‘in beweging’ is.

Het feit dat samenwerkingen rond data-modellen als uitdagend worden beschouwd geeft mogelijks aan dat de community hier ook een rol kan spelen, bijvoorbeeld om partijen bij elkaar te brengen. Opvallend is dat bedrijven ook controle over de manier waarop hun data opnieuw wordt ingezet, rekening houdende met bijvoorbeeld bepaalde juridische beperkingen of garanties, willen behouden. De interactie hiervan met de filosofie van het Solid project is een aspect om verder uit te diepen.

Vrije input vanuit de deelnemers:

  • Authenticatie (vanuit POC UiTPAS Trefdaf publiq) Extra ID proxy moeten bouwen omdat specs OIDC niet overeen kwamen met basis OIDC integratie zoals voorzien door auth0. Vooral door toevoeging van DPoP token (https://solid.github.io/solid-oidc/primer/).
  • Authorisatie (vanuit POC UiTPAS Trefdaf publiq) Zeer fine grained controle op delen van data staan nog niet op punt (zit wel in specificatie maar van SOLID maar nog niet op punt in de bestaande servers)
  • Authorisatie (vanuit POC UiTPAS Trefdaf publiq) Syncen van gegevens met bestaande applicaties: wat als iemand zijn postcode in een POD aanpast kan deze ook aangepast worden in UiTID? Hoe syncen we met (legacy) systemen of systemen die business-kritisch zijn?
  • Hoe kan ik het Solid OS project gebruiken?
  • Alignatie van gebruik van standaarden. Er is algemeen gevoel dat Solid steeds met eigen varianten voor het dag komt. Ipv huidige bestaande initiatieven te steunen.