...
Komponenten stödjer funktioner för:•
- Publicering av federationsmetadata
...
- Hantering av trust chains och trust anchors
...
- Federation discovery och metadata-upplösning
...
- Hantering av subordinate statements
...
- Utfärdande och hantering av trust marks
...
- Validering och distribution av federationstillit mellan anslutna parter
Komponenten kan agera somagera som:•
- Trust Anchor
- Resolver
...
- Intermediate Entity
...
- Trustmark Issuer
Arkitektur och driftläge
Tjänsten kan köras i två huvudsakliga driftlägen:
- Lokal konfigurationStandalone mode
Instanskonfiguration hanteras lokalt via properties/YAML-konfiguration. - Managed modeRegistry-baserad konfiguration
Instanser hämtar sin konfiguration från ett externt registry-systemOpenID Federation Registry. Detta möjliggör central administration och via ett webbgränssnitt för federationshantering. I detta läge kan flera noder grupperas bakom lastbalanserare och dela gemensam federation-konfiguration. Flera instanser kan dela samma konfiguration och köras bakom en lastbalanserare för hög tillgänglighet.
OBS! OpenID Federation Registry utvecklas fortfarande och är inte släppt som open source
Arkitekturen är avsedd för horisontell skalning där flera federation-noder kan exponera samma tjänster bakom lastbalanserare.
Konfiguration
Konfiguration sker primärt via Spring Boot-konfiguration (application.yaml eller miljövariabler).
Exempel på typiska konfigurationsparametrar:
• Entity ID för trust anchor/intermediate
• Signeringsnycklar och certifikat
• Endpoint-URL:er
• Registry-anslutning i managed mode
• Federation policies
• Trust mark-konfiguration
...
Lokal konfiguration
OpenID Federation Services kan konfigureras lokalt med hjälp av applikationens konfigurationsfiler. Konfigurationen styr vilka federationsentiteter instansen representerar, vilka federationstjänster som exponeras och vilket metadata som publiceras.
Konfigurationens struktur
Den lokala konfigurationen är uppbyggd kring de federationsentiteter som instansen representerar.
På övergripande nivå består konfigurationen av:
- gemensamma inställningar
- Trust Anchors
- Intermediates
- Resolvers
- Trust Mark Issuers
Exempel på struktur:
federation
└── local-registry
├── trust-anchors
├── intermediates
├── resolvers
└── trust-mark-issuersVarje federationsentitet konfigureras separat.
För respektive federationsentitet kan bland annat följande information konfigureras:
- Entity Identifier
- Signeringsnycklar (JWKS)
- Endpoints
- Metadata
- Metadata Policies
- Constraints
- Trust Marks
- Underordnade entiteter
- Administration av underordnade entiteter
En Trust Anchor eller Intermediate administrerar vilka underordnade entiteter som ingår i federationen. De underordnade entiteterna används för att generera Federation List Endpoint och för att utfärda Subordinate Statements.
Vid lokal konfiguration definieras de underordnade entiteterna under federation.local-registry.
Varje Trust Anchor eller Intermediate innehåller en lista med subordinates, där respektive underordnad entitet konfigureras.
För varje underordnad entitet kan bland annat följande information anges:
- Entity Identifier
- Entity Configuration eller ec_location
- JWKS
- Metadata Policy
- Constraints
- Kritiska metadatafält (crit)
Konfigurationen avgör vilka entiteter som exponeras via Federation List Endpoint och vilket innehåll som används när Entity Statements genereras.
Exempel
Följande exempel visar den övergripande strukturen för en lokal konfiguration.
federation:
local-registry:
trust-anchors:
- entity-id: https://ta.example.se
subordinates:
- entity-id: https://rp.example.se
- entity-id: https://as.example.seDrift
- Komponenten levereras som öppen källkod i form av en Spring Boot-applikation.
- För att underlätta installation och drift publiceras även container-images.
- Driftmiljö, driftsättning och förvaltning väljs och ansvaras för av den organisation som använder komponenten
Status
Versionsinformation: openid-federation-services/docs/release-notes.md at main · swedenconnect/openid-federation-services
...