Skolfederation.se Teknisk infrastruktur (SAML) Revision 0.71

Transcription

Skolfederation.se Teknisk infrastruktur (SAML) Revision 0.71
Skolfederation.se
Teknisk infrastruktur (SAML)
Revision 0.71
Kort om Skolfederation.se
Skolfederation.se är ett initiativ vilket samordnas av SIS (Swedish Standards Institute)
tekniska kommitté 450 (IT-standarder för Lärande) och som samlat en rad intressenter av grund-, gymnasie- och vuxenutbildning.
Ett av initiativets mål är att tillse att e-tjänsteleverantörer, primärt de som är fokuserade på digitala lärresurser, via standardiserade gränssnitt kan nyttja befintliga lösningar i landets 290 kommuner och ca 500 friskolor för en enkel och tillräckligt säker
identifiering av elever i grund-, gymnasie- och vuxenutbildningen.
Bland intressenterna återfinns representanter från kommuner, friskolor, regioner,
läromedelsleverantörer, e-tjänsteleverantörer, relaterade myndigheter såsom VHS
(Verket för Högskoleservice) och Skolverket samt Sunet och .SE (Stiftelsen för Internetinfrastruktur).
Förebild
Den akademiska identitetsfederationen för universitet och högskolor i Sverige
SWAMID (Swedish Academic Identity), vilken omfattar de flesta universitet, högskolor
och övriga myndigheter som är relaterade till forsknings- och utbildningssektorn i
Sverige, är förebilden för Skolfederationen.
Syfte
Syftet med Skolfederation.se är att via standardiserade gränssnitt ge kvalitetssäkrad
och säker identifiering av elever, anställda och andra associerade med utbildning i
Sverige. Detta för att kunna få största möjliga nytta av IT-stöd i lärmiljöer och vid nyttjande av digitala lärresurser.
Målbild
En användare som har autentiserat sig i sin egen organisation skall per automatik
skall få tillgång till tjänster från andra organisationer. Användarens identitet är federerad och denne kan använda single sign-on (SSO) som överskrider organisationsgränserna.
Sammanfattande teknisk kravbild
Skolfederationen har likt andra federativa initiativ som ambition att använda följande
SAMLv21-profiler:
- eGov22 - Implementations profil som beskriver vilka SAML-förmågor som erfordras
-
saml2int3 - Deployment profil som beskriver hur SAML-förmågorna skall användas
Vidare väntas Skolfederationen använda rikligt med attribut (se bilaga) vilken hämtas
från den källa i kommunen eller friskolan där dessa finns tillgängliga. Exempelvis en
katalog (AD, eDirectory) eller databas.
Aktörer
E-tjänsteleverantör (SP)
Den aktör i Skolfederationen som erbjuder tjänster och som har förmågan att konsumera utfärdare intyg/biljetter (assertion) är E-tjänsteleverantören (SP, Service Provider).
E-tjänsteleverantören är att betrakta som kravställare med avseende på identifieringsbegrepp och eventuella erfordrade attribut inom ramen för vad som överenskommits i Skolfederationen. Det är av största vikt att E-tjänsteleverantören inte överkonsumerar attribut, att den personliga integriteten inte åsidosätts och att självklar
hänsyn tas till berörd författningsreglering.
Identitetsintygsutfärdare (IdP)
Den aktör i Skolfederationen som har förmågan identifiera och autentisera en användare, exempelvis en elev, är att betrakta som identitetsintygsutfärdare (IdP, identity
provider). En lyckad identifiering och autentisering medför att identitetsintygsutfärdaren ställer ut ett intyg/biljett (assertion).
Det bör beaktas att i rollen som identitetsintygsutfärdare måste vederbörande också
ha tillgång till erforderliga källor för att kunna bidra med de eventuella attribut som
efterfrågas av E-tjänsteleverantören. Exempel på attribut är klasstillhörighet. Det kan
inte nog poängteras att ett intyg/biljett inte nödvändigtvis behöver innehålla någon
information som knyter an till en personuppgift.
1
Organization for the Advancement of Structured Information Standards (OASIS) Security Assertion Markup Lan-
guage (SAML)
2
Kantara Initiative eGov 2.0 profile
3
Interoperable SAML 2.0 Web SSO deployment profile
Federationsoperatör
Den samordnande aktören i Skolfederationen är federationsoperatören. Den agerar
på uppdrag av representanter för Skolfederationens intressenter. Federationsoperatören samordnar användningen och tillämpningen av standarder samt tillhandahåller grundläggande tjänster.
En av federationsoperatörens viktigaste uppgifter är att tillhandahålla digitalt signerat aggregerat metadata (se nedan) vilket kan anses vara Skolfederationens kärna,
den grundläggande tilliten. Federationsoperatören har dock ingen egentlig funktion,
utöver den grundläggande tilliten, i den enskildes användning av Skolfederationen,
exempelvis en elev som använder en E-tjänst.
Övergripande tekniska infrastruktur
SAML-metadata (MD)
För att aktörerna (entity) i Skolfederationen skall kunna lita på varandras intyg/biljetter (assertion) krävs ett utbyte av de publika nycklarna i varje aktörs nyckelpar och därigenom kan intyget/biljettens signatur verifieras.
Utbytet sker genom att lokalt SAML-metadata (MD), vilket beskriver en aktörens egenskaper, förmågor och publika nycklar, aggregeras till federationsoperatören vilken
digitalt signerar och publicerar det aggregerade SAML-metadatat vilket således innehållande federationens samtliga aktörers egenskaper, förmågor och publika nycklar.
Skolfederationens aggregerade och signerade metadata publiceras här:
http://md.skolfederation.se/md/skolfederation-1.0.xml
Där 1.0 är en versionsbeteckning.
Federationsoperatörens publika nyckel för verifiering av metadata återfinns här:
http://md.skolfederation.se/md/skolfederation.crt
Varje ingående aktör skall signaturverifiera SAML-metadata vid varje förändring mot
minst en nyckelkälla.
Skolfederationen har valt att använda saml2int som deployment profil vilken tydligt
beskriver hur SAML-metadata skall presenteras. Utformningen av SAML-metadata
regleras i OASIS SAML V2.0 metadata specification [SAML2Meta] och hantering av
SAML-metadata regleras i OASIS Metadata Interoperability Profile [MetaIOP]. Samtliga ingående aktörer i Skolfederationen skall stödja dessa.
Krypteringsnycklar
Samtliga parter i Skolfederationen skall hantera och förvara sina krypteringsnycklar i
enlighet med de krav som ställs i Skolfederationens tillitsramverk. Om inte tillitsramverket ställer högre krav så skall samtliga krypteringnycklar uppfylla följande krav:
- Nyckellängd min 2048 bitar
-
Livslängd max 18 månader (vid nyckellängd 4096 bitar tillåts 24 månader)
-
Parallellpublicering vid nyckelbyte min 2 veckor
Autentiseringsförfrågan
I grundscenariot där en användare, exempelvis elev, önskar använda en E-tjänst (SP),
men är oidentifierad så blir denne ombedd att autentisera sig. Den förfrågan som Etjänsten (SP) skapar i detta scenario, vilken användaren tar med sig till identitetsutfärdaren
Skolfederationen har valt att använda saml2int som deployment profil vilken tydligt
beskriver hur SAML V2.0 Web Browser SSO Profile [SAML2Prof4] skall användas vilket i sin tur återspeglar sig på autentiseringsförfrågan.
Där återfinns bland annat:
- att kommunikationen skall skyddas med TLS/SSL
-
att det inte är något krav att signera autentiseringsförfrågan
Autentiseringssvar
Autentiseringssvaret kan vara en följd av en autentiseringsförfrågan, men det kan
också vara en autentiseringssvar utan någon föregående autentiseringsförfråga.
Skolfederationen har valt att använda saml2int som deployment profil vilken tydligt
beskriver hur SAML V2.0 Web Browser SSO Profile [SAML2Prof] skall användas vilket
i sin tur återspeglar sig på autentiseringssvaret.
Där återfinns bland annat:
- att kommunikationen skall skyddas med TLS/SSL
-
om TLS/SSL inte är görbart skall autentiseringssvaret krypteras i sin helhet
-
att autentiseringssvaret skall signeras
-
att E-tjänster (SP) skall acceptera o-ombedda biljetter/intyg (unsolicited respons)
4
Profiles for the OASIS Security Assertion Markup Language (SAML) V2.0
Pseudonymer
Skolfederationen värnar om den personliga integriteten. Därför är det av vikt att
samtliga ingående parter kan hantera pseudonymer. Följande två format som är en
del av SAML2Core5 skall stödjas:
- urn:oasis:names:tc:SAML:2.0:nameid-format:persistent
-
urn:oasis:names:tc:SAML:2.0:nameid-format:transient
Persistenta pseudonymer har egenskapen att de alltid mappar en användare till
samma pseudonym per E-tjänst. Det vill säga att olika E-tjänster ger olika pseudonymer.
Transienta pseudonymer mappar aldrig en användare till samma pseudonym, utan
användaren får en ny pseudonym vid varje nytt tillfälle och för varje E-tjänst.
Anvisningstjänst (DS)
I grundscenariot där en användare, exempelvis elev, önskar använda en E-tjänst (SP),
men är oidentifierad så blir denne ombedd att autentisera sig. I en tvåpartsrelation, så
vet E-tjänsten vilken identitetsintygsutfärdare (IdP) som denne skall anvisa användaren till. I en federation likt Skolfederationen med kanske 100-talet identitetsintygsutfärdare krävs sålunda en funktion för att anvisa användaren till ”sin” identitetsintygsutfärdare. Funktionen benämns anvisningstjänst (DS, discovery services).
Anvisningstjänsten använder SAML-metadata för att visa användaren de i Skolfederationen ingående identitetsintygsutfärdarna (IdP). I en federation med ett 10-tal
identitetsintygsutfärdare så löses detta enklast med en lista där användaren väljer
”sin” identitetsintygsutfärdare. Valet kan exempelvis lagras i en kaka (cockie) så att
användaren därefter alltid får sitt sista val som förvalt.
I en federation med 100-talet identitetsintygsutfärdare, lika Skolfederationen, krävs
en bättre logik där listan som presenteras prioriteras utifrån geografisk tillhörighet,
käll IP-adress eller annan igenkänning som gör valet för användaren smidigare.
Skolfederationens anvisningstjänst nås här:
https://ds.skolfederation.se/anvisning
Det bör poängteras att en central anvisningstjänst (DS) inte är en nödvändighet utan
E-tjänsteleverantören (SP) kan själv välja att implementera en funktion för lokal anvisning baserat på SAML-metadata.
5
Assertions and Protocols for the OASIS Security Assertion Markup Language (SAML) V2.0
Det bör också poängteras att det finns möjlighet till ett scenario med o-ombedda intyg/biljetter (unsolicited respons). Där ansluter användaren först till sin identitetsintygsutfärdare (IdP) med en parameter i anropet som sedan används för att anvisa användaren till rätt E-tjänst (SP).
Hantering av anvisning regleras av OASIS Identity Provider Discovery Service Protocol Profile [IdPDisco]. Samtliga ingående aktörer i Skolfederationen skall stödja
detta.
Single logout
Skolfederationen har inledningsvis inget krav på att ingående aktörer skall stödja
single-logout. Skolfederationen sätter dock inte några infrastrukturella hinder att implementera single-logout.
Attributstjänst (AA)
Skolfederationens intressenter har inte inledningsvis pekat på några för federationen
gemensamma attributstjänster (AA, Attribute Authority). Skolfederationen sätter dock
inte några infrastrukturella hinder att implementera attributstjänster.
För att exemplifiera ytterligare en dimension i en federation utöver den klassiska relationen mellan en användare, en identitetsintygsutfärdare (IdP) och en e-tjänst (SP)
så finns en dummy till attributstjänst (AA) i Skolfederationen.
Namnet på attributstjänsten är https://aa.federera.iis.se/idp/shibboleth .
Den kan svara på vilken eduPersonEntitlement en viss eduPersonPrincipalName har.
Eftersom det är en dummy-tjänst genererar den alltid samma svar på attributfrågan.
Det finns med andra ord ingen riktig datakälla bakom den. Attributsfrågor ställs normalt av en e-tjänst (SP), kanske som ett resultat av avsaknade attribut i det intyg/biljett
som en identitetsintygsutfärdare (IdP) utfärdat.
På uppdrag av Stiftelsen för Internetinfrastruktur (.SE)
Thomas Nilsson & Rickard Bellgrim, Certezza AB
[email protected] & [email protected]
Bilaga 1 – Preliminär attributsspecifikation
Attributsspecifikationen administreras av Swedish Standards Institute (SIS) tekniska
kommitté 450 (IT-standarder för Lärande) och är föremål för ständig förbättring.
Kontaktperson på SIS/TK450 är Patrick Lindén, 08-555 521 56, [email protected]
Nedan är att ses som en preliminär specifikation under test- och pilotperioden (2012).
Den tekniska infrastrukturen sätter inte några hinder i att använda andra attribut än
nedan utan det är ses som en överenskommelse mellan de enskilda aktörerna.
Beskrivning
Attributnamn
SAML Attribute @Name
Unikt användarnamn
eduPersonPrincipalName
urn:oid:1.3.6.1.4.1.5923.1.1.1.6
Personnummer
norEduPersonNIN
urn:oid:1.3.6.1.4.1.2428.90.1.5
Efternamn
Sn
urn:oid:2.5.4.4
Förnamn
givenName
urn:oid:2.5.4.42
Visat namn
displayName
urn:oid:2.16.840.1.113730.3.1.241
Förnamn Efternamn
Cn
urn:oid:2.5.4.3
E-postadress
mail
urn:oid:0.9.2342.19200300.100.1.3
Svenskt personnr
personalIdentityNumber
urn:oid:1.2.752.29.4.13
Nåbarhetsadress
postalAddress
urn:oid:2.5.4.16
Gatuadress
street
urn:oid:2.5.4.9
Box
postOfficeBox
urn:oid:2.5.4.18
Postnummer
postalCode
urn:oid:2.5.4.17
Postort
L
urn:oid:2.5.4.7
Land
C
urn:oid:2.5.4.6
Telefonnummer
telephoneNumber
urn:oid:2.5.4.20
Mobilnummer
mobile
urn:oid:0.9.2342.19200300.100.1.41
Organisationen
eduPersonOrgDN
urn:oid:1.3.6.1.4.1.5923.1.1.1.3
Organisationsnr
norEduOrgUniqueIdentifier
urn:oid:1.3.6.1.4.1.2428.90.1.7
Skolnamn/Avdelning
eduPersonOrgUnitDN
urn:oid:1.3.6.1.4.1.5923.1.1.1.4
Skola
norEduOrgUnitUniqueIdentifier urn:oid:1.3.6.1.4.1.2428.90.1.8
Roll
eduPersonAffiliation
urn:oid:1.3.6.1.4.1.5923.1.1.1.1
Rättighet hos SP
eduPersonEntitlement
urn:oid:1.3.6.1.4.1.5923.1.1.1.7
Bilaga 2 – Teknisk anslutning
För anslutning till Skolfederation.se krävs att aktuell organisations ansökan godkänts.
Federationsoperatören är koordineringsansvarig för den tekniska anslutning och nås
på [email protected].
OBS! Under testperioden (till och med 2012-05-15) krävs inte någon validering av metadata varför federationen skall betraktas och användas därefter.
1) Skicka metadata eller hänvisning till metadata (länk) i enlighet med vad som
överenskommits med federationsoperatören i samband med ansökan
2) Använd/ange följande URL för metadata:
http://md.skolfederation.se/md/skolfederation-1.0.xml
där 1.0 en versionsbeteckning
3) Använd/ange följande publika nyckel för verifiering av metadata:
http://md.skolfederation.se/md/skolfederation.crt
4) I förekommande fall, använda/ange följande URL för IdP discovery:
https://ds.skolfederation.se/anvisning
5) Verifiering
a. Om du är IdP, verifiera din förmåga mot: https://federera.iis.se/skolfed/sp1/
b. Om du är SP, verifiera din förmåga med stöd av https://idp.skolfederation.se/
c. Använd en klient med enbart IPv6 och verifiera din förmåga ånyo
6) Meddela [email protected] att du har verifierat dina förmågor. Tillse
att referera till eventuellt befintligt ärendenummer.
Bilaga 3 – Preliminär tidplan för den tekniska infrastrukturen
2012-02-15--03-14 Den tekniska infrastrukturen etableras.
2012-03-15--05-15 En interop genomförs med tänkbara intressenter för att säkerställa
att erforderliga SAML förmågor för att medverka i en identitetsfederation finns.
2012-04-17
SIS lanserar handledningen som resultat av TK450/AG6
2012-05-16
Anslutning till pilottjänsten möjlig.
2012-06-07
SKL inviger pilotjänsten