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