Inledning

Syfte

Testfallen i detta dokument ska verifiera att federationens infrastrukturtjänster fungerar korrekt, både var för sig och tillsammans, när de hanterar protokollentiteter. Med protokollentiteter avses de entiteter som deltar i federationen för att utföra ett protokoll, till exempel OAuth-klienter, auktorisationstjänster och resursservrar. I den svenska profilen motsvarar infrastrukturtjänster begreppet Federation Service Entity och protokollentiteter begreppet Federation Protocol Entity.

Infrastrukturtjänsterna och deras motsvarigheter är:

SIB-tjänstSvensk profilOpenID Federation 1.0Testfall
TillitsankartjänstTrust AnchorTrust Anchor

https://github.com/diggsweden/sib-context-system-access/tree/feat/test-specifications/test-specifications

AnslutningstjänstFederation Registration EntityIntermediate Entity
Uppslags- och verifieringstjänstFederation ResolverTrust Anchor eller Intermediate Entity med resolve-endpoint
Utfärdare av trust marksTrust Mark IssuerTrust Mark Issuer

Varje tjänst i SIB bygger på motsvarande roll i den svenska profilen [OIDC.Sweden.Federation], med ytterligare krav enligt [SIB]. Rollerna i den svenska profilen bygger i sin tur på OpenID Federation 1.0 [OpenID.Federation], med ytterligare krav enligt [OIDC.Sweden.Federation].

Testerna ska ge svar på följande frågor:

Resultatet ska ge underlag för att bedöma om infrastrukturen kan tas i drift, om förändringar i den kan driftsättas, och om den följer OpenID Federation 1.0, den svenska profilen och kraven i SIB.

Avgränsning

Fokus ligger på relationerna mellan infrastrukturtjänsterna och mellan infrastrukturtjänsterna och protokollentiteterna.

Från protokollentiteterna omfattas endast deras beskrivning av sin protokollmetadata, alltså den metadata de publicerar om sig själva och som infrastrukturtjänsterna hanterar. Testfallen omfattar inte hur protokollentiteterna fungerar i protokollet. De omfattar inte heller kommunikationen mellan två protokollentiteter, till exempel flöden mellan OAuth-klient och auktorisationstjänst eller anrop från OAuth-klient till resursserver.

Protokollentiteternas konfigurationer används som testdata, både korrekta och medvetet felaktiga. Det som bedöms är hur infrastrukturtjänsterna hanterar dem, inte konfigurationerna i sig. Undantaget är konfigurationer som anslutningstjänsten publicerar åt protokollentiteter. De är infrastrukturens produkt och testas fullt ut.

Protokollentiteter förekommer i testerna som testobjekt, vars beskrivning av protokollmetadata infrastrukturen ska hantera. Det sker till exempel vid anslutning via anslutningstjänsten, listning, tillämpning av metadata-policy eller tilldelning av trust marks.

Anrop mot infrastrukturtjänsterna görs med ett testverktyg som agerar konsument. Om en tjänst kräver klientautentisering registreras testverktyget som protokollentitet.

Det är infrastrukturtjänsternas beteende som bedöms.

Vad som bör testas

Infrastrukturtjänsternas egen konfiguration

Tillitsankartjänst och anslutningstjänst

Uppslags- och verifieringstjänst

Utfärdare av trust marks

Livscykel och förändring

Nyckelhantering

Robusthet och felhantering

Referenser