Ena IAM - Pilot

Sammanfattning

Denna Proof of Concept (POC) syftar till att praktiskt testa och demonstrera hur en federativ infrastruktur enligt OpenID Federation-modellen kan realiseras i Ena för digital samverkan mellan organisationer. Fokus ligger på att visa hur en användare i Organisation A genom sitt system kan anropa ett skyddat API i Organisation B, där säkerhets- och tillitsinformation förmedlas via federationsinfrastrukturen (FI-serien) och används i faktiska samverkansflöden (DS-serien).

Pilotens komponenter byggs upp enbart för testmiljön. Det handlar alltså inte om en skarp pilot med riktiga aktörer i en produktionsmiljö, utan om en teknisk modell för att verifiera arkitektur, flöden och specifikationer.

Tabellerna nedan beskriver de användningsfall som piloten omfattar. Varje användningsfall dokumenteras med:

Användningsfallen i FI-serien (FI010–FI040) fokuserar på den tekniska federationsinfrastrukturen. Användningsfallen i DS-serien (DS001–DS004) demonstrerar den faktiska digitala samverkan mellan organisationer med stöd av infrastrukturen.l

Tillsammans visar dessa användningsfall hela kedjan: från att etablera federativ tillit via FI-serien till att praktiskt realisera digital samverkan mellan två organisationer via DS-serien.

Användningsfall

Översikt OIDF-struktur

Federationsinfrastruktur

FI-serien (FI010–FI040) beskriver hur federationsinfrastrukturens centrala komponenter tillsammans etablerar den tekniska tilliten i en federation. I dessa användningsfall visas hur en Tillitsankartjänst publicerar och signerar metadata, hur en Anslutningstjänst kan agera mellanled och applicera lokala policies, hur en Uppslags- och verifieringstjänst bygger och validerar hela tillitskedjan, samt hur en Tillitsmärkestjänst utfärdar och verifierar tillitsmärken som styrker efterlevnad av tillitsskapande krav. Tillsammans utgör de grunden för att federationens parter ska kunna lita på varandra och möjliggör att den digitala samverkan i DS-serien kan realiseras på ett säkert och verifierbart sätt.

Mål med piloten

  1. Ett konkret förslag till struktur för en "initial" federationsträd! Dvs det realisaras i gemensamt sammankopplade sandbox-miljöer
  2. Verifiera användningsfallen

Översikt

AnvändningsfallBeskrivningPOC AcceptanskriterierIngående komponenter (ansvarig aktör)Lösningsmönster & SpecifikationerKommentar
FI010 – Metadatapublicering TillitsankartjänstEn Tillitsankartjänst (Trust Anchor) publicerar och signerar sitt federation metadata statement.

Kriterier verksamhet

  • Anslutningstjänst registrerad som entitet
  • Tillitsmärkestjänst registrerad som entitet

Kriterier specifikationer

  • Tillitsankartjänst publicerar Entity Configuration enligt specifikation
  • Tillitsankartjänst publicerar Entity Statement enligt specifikation
  • Tillitsankartjänst Subordinate listing enligt specifikation
  • Policyhantering
  • Tillitsankartjänst (Trust Anchor)
    • Digg
    • Internetstiftelsen

OpenID Federation Specification

Kommande: Ena Infrastructure OIDF Profile


Grund för teknisk tillit i federationen.
FI020 –Metadatapublicering AnslutningstjänstValidera att Anslutningstjänst korrekt kan hämta metadata från Tillitsankartjänst, applicera policy och vidareförmedla metadata.

Kriterier verksamhet

  • Tjänst (Federationmedlem) registrerad som entitet

Kriterier specifikationer

  • Anslutningstjänst publicerar Entity Configuration enligt specifikation
    • Authority_hint enligt specifikation
  • Anslutningstjänst publicerar Entity Statement enligt specifikation
  • Anslutningstjänst Subordinate listing enligt specifikation
  • Anslutningstjänst (Intermediate Entity)
    • Digg
    • Internetstiftelsen

OpenID Federation Specification

Möjliggör skalbarhet och delegerad tillit.

FI030 – Metadatavalidering

Kontrollera att trust chain kan byggas korrekt (top-down/bottom-up), signaturer verifieras och metadata returneras komplett.

Kriterier verksamhet

  • Uppslags- och verifieringstjänst (Resolver) registrerad som entitet

Kriterier specifikationer

  • Implementerar Resolve-entity enligt OpenID Federation Specification
    • Validerar digitala signaturer och certifikatkedjor enligt specifikationen
  • Tillämpning av definierad federation-policy vid verifiering
    • Endast verifierad metadata returneras till förlitande parter
  • Uppslags- och verifieringstjänst (Resolver)
    •  Digg
    • Internetstiftelsen

OpenID Federation Specification

Avlastar digitala tjänster från komplex verifieringslogik.
FI040 – TillitsmärkeshanteringSäkerställa att tillitsmärken är signerade, giltiga och verifierbara enligt policy.

Kriterier verksamhet

  • Tillitsmärkestjänst registrerad som entitet

Kriterier specifikationer

  • Implementerar Trust Mark Issuer enligt OpenID Federation Specification

    • Publicerar signerade tillitsmärken via definierad endpoint 

    • Följer federation-policy för tillitsmärkets typ, innehåll och giltighet

  • Uppslags- och verifieringstjänst (Resolver)
    •  Digg
    • Internetstiftelsen

OpenID Federation Specification

Möjliggör automatiserad kontroll av regelefterlevnad.

Digital samverkan

DS-serien (DS001–DS004) demonstrerar den praktiska digitala samverkan över organisationsgränser, där federationsinfrastrukturen används i faktiska åtkomstflöden. Användningsfallen visar hur en användare loggar in i ett system och etablerar en session, hur lokala auktorisationstjänster tillämpar policies och återanvänder inloggningar via SSO, hur åtkomstbegäran kan riktas mot en annan organisation och besvaras med intyg, samt hur metadata för legitimering och auktorisation hanteras och verifieras via federationsinfrastrukturen. Tillsammans visar dessa flöden hur federativ tillit omsätts i säker åtkomst och informationsutbyte mellan organisationer

Beskrivning Pilot Appva-EHM

  1. Cross-domain

Relevanta specifikationer som används:

Kort-namnBeskrivning
authn-authz-patterns"Mönster för autentisering och auktorisation"
Övergripande beskrivning av mönster för autentisering och auktorisation. Konceptuell,  ej normativ.
inter-domain-calls"API-anrop över organisationsgränser"
Övergripande beskrivning av mönster för anrop över organisationsgränser. Konceptuell, ej normativ.
ena-oauth2-authn-bp

"Ena OAuth 2.0 User Authentication Best Practises"

Best practises för integration av befintlig inloggningslösning med OAuth 2.0. Konceptuell, ej normativ. 

ena-oauth2-profile"Ena OAuth 2.0 Interoperability Profile"
Ena Basprofil för användning av OAuth 2.0 i Ena-sammanhang. Grundläggande specifikation för all tillämpning av OAuth där den förekommer. Normativ. 
ena-oauth2-chaining

"Ena OAuth 2.0 Token Exchange Profile for Chaining Identity and Authorization"

Enaprofil för token exchange och auktorisation över organisationsgränser.

oidf-spec

"OpenID Federation 1.0 - draft 43"

poc-attributspec

"POC attributspecifikation vård/hälsa"

En specifikation som beskriver claims för att bära behörighetsgrundande information för användning i POC/Pilot. 

OBS - Behöver tas fram!


AnvändningsfallBeskrivningPOC Acceptanskriterier
Batch-lösningen är ett pilotval; i full drift används realtidsupplösning via Resolver.


Ingående komponenter (ansvarig aktör)Lösningsmönster & SpecifikationerKommentar
DS010 – Inloggning i systemEn användare loggar in i System A via en legitimeringstjänst (SAML IdP). Resultatet är en aktiv inloggningssession i System A

Verksamhetskriterier

  • Användare är inloggad i systemet
  • Inloggning av användare sker enligt / mha Sambi och Sambis tekniska ramverk

Teknikkriterier

Övrigt

  • Kandidat: De delar i inloggningslösning som använder OAuth följer ena-oauth2-profile.
  • Legitimeringstjänst (IdP – Org A)
  • System A (System A– Org A)

SAML 2.0, Single Sign-On

ena-oauth2-profile

ena-oauth2-authn-bp

Grundförutsättning för federativ åtkomst.
DS020 – Lokal auktorisationKlient interagerar med en lokal auktorisationstjänst för att fastställa användarens behörigheter. SSO återanvänder sessionen mot IdP för andra system.

Verifiera att lokal auktorisation fungerar och att SSO-sessionen kan återanvändas.

Verksamhetskriterier

  • AS i Domän A ("AS-A") har en säkerställd uppfattning om användaren
  • MCSS har ett underlag i form av en signerad JWT med rätt innehåll som underlag för åtkomstbegäran mot org B

Teknikkriterier

  •  MCSS initierar Auth grant w. code enligt ena-oauth2-authn-bp, kap 2.2 eller 2.3.
    • basprofil enligt xx
  • MSCC utför token exchange mot AS-A enligt ena-oauth2-chaining, kap 3.3
    • basprofil enligt xx
  • Claims i JWT för auth grant följer specifikation poc-attributspec
    • enligt ...
  • MSCC som klient följer oauth-oauth2-profile i relevanta delar
  • AS domän A följer oauth-oauth2-profile i relevanta delar
  • Auktorisationstjänst (Org A) Legitimeringstjänst (IdP – Org A) System A

OIDC/OAuth2 (Access Token, ID Token), SAML SSO

ena-oauth2-profile

ena-oauth2-chaining

Möjliggör lokal policytillämpning och SSO-flöde.
DS030 – Åtkomstbegäran till annan organisationSystem A begär åtkomstintyg från Organisation B:s auktorisationstjänst för att få åtkomst till resurs i B:s miljö.

Kontrollera att Organisation B:s auktorisationstjänst kan utfärda och returnera giltigt intyg som System A kan validera.

Verksamhetskriterier

  • AS-B kan ta emot och tolka anrop om auth grant

Teknikkriterier

  • MCSS utför authorization grant mot AS i domän B ("AS-B") enligt ena-oauth2-chaining, kap 3.4
    • profil xx
  • MSCC som klient följer oauth-oauth2-profile i relevanta delar
  • AS domän B följer chaining xx
    • oauth-oauth2-profile i relevanta delar xx
  • Auktorisationstjänst (Org B) Resursserver (Org B) System A (Org A)

OIDC/OAuth2 Token Exchange, JWT Grants

ena-oauth2-profile

ena-oauth2-chaining

poc-attributspec

Möjliggör system-till-system-samverkan över organisationsgränser.
DS040 – Metadatahantering via federationsinfrastrukturMetadata för IdP, RP och auktorisationstjänster hanteras via OIDF-federationskomponenter.

Säkerställa att metadata kan hämtas, verifieras och cache:as via Resolver, och att trust chain kan valideras till Tillitsankaren.

Verksamhetskriterier

  • MCSS har access token att använda

Teknikkriterier

  • AS domän A som klient till AS-B följer oauth-oauth2-profile i relevanta delar
    • profil xx
  • AS-B kan verifiera klient (MCSS) mot metadata genom client_assertion
    • chaining xx
    • basprofil xx
    • oidf-spec entity type client xx
  • AS-B kan verifiera AS-A mot metadata genom "user assertion"
    • chaining xx
    • profil xx
    • oidf entity typ as xx
  • AS-B kan verifiera att entitet AS-A i metadata även har "Pilotsmärke"
    • oidf TM xx
  • AS-B kan tolka claims för behörighetsgrundande attribut
    • "handbok"
  • Se tabell ovan 

oidf-spec OpenID Federation 1.0, Entity Statements, Trust Chains, Trust Marks

ena-oauth2-profile

DS050 - API-anrop Cross Domain

Verksamhetskriterier

  • MCSS kan göra lyckat API-anrop mot NLL 

Teknikkriterier

  • MSCC som klient följer oauth-oauth2-profile i relevanta delar
    • profil xx
  • NLL som Resursserver/API följer oauth-oauth2-profile i relevanta delar
    • profil xx
  • NLL kan verifiera accesstoken
    • chaining xx
    • profil xx
  • NLL kan utvärdera behörighetsroll
    • "handbok"

ena-oauth2-profile