Detta är ett arbetsdokument

Erasmus+ och EDSSI

Erasmus+ är EU:s program för internationellt samarbete och utbyte inom bland annat utbildning. Under 2021 startar en ny sjuårig programperiod där en av de övergripande målsättningarna är att digitalisera programmet. Initiativet har som målsättning att digitalisera administrationen av utbytesprocessen, från att förnya utbytesavtal till urval av studenter. Detta görs genom att lärosäten ansluter till något som kallas Erasmus Without Paper-nätverket. 

Anslutningen till nätverket kan ske på ett av tre olika sätt:  

För att data ska passera effektivt och säkert mellan dessa olika system syftar initiativet även till att underlätta digital autentisering av studenter och deras akademiska meriter mellan lärosäten som deltar i Erasmus+ programmet. Detta görs genom att utveckla en unik europeisk studentidentifierare, European Student Identifier, förkortat ESI.

Beskrivning av European Student Identifier (ESI)

ESI är ett särskilt attribut som används vid administration av europeiska studentutbyten, t.ex. inom Erasmus+-programmet, samt vid de virtuella europeiska universiteten (ex. Unite! och ECIU) för att primärt underlätta att personuppgifter och studieresultat överförs korrekt mellan de inblandade lärosätena.

Den digital tjänst som används för inloggning i Erasmus+-programmet kommer under november 2021 att börja kräva ESI vid inloggning.

Ett ESI är en unik, permanent och stabil identifierare som byggs upp av ett prefix som är unikt för organisationen eller organisationerna, och ett suffix som är unikt inom en eller en grupp av organisationer.  Det är inte omöjligt att en person "samlar på sig" mer än ett ESI under sin studietid men det är naturligtvis enklare ju färre ESI:er man behöver hålla reda på. Det finns också fördelar om ett ESI kan följa med en student genom hela livet.

ESI representeras i SAML som schacPersonalUniqueCode (se nedan för detaljer)

Implementationen av ESI vid ett lärosäte kretsar kring följande två frågor:

  1. Vad har en student för ESI (skapa lokalt ESI eller hämta från annan källa)?
  2. Hur görs ESI-attributet tillgängligt i samband med inloggning till de tjänster som ska konsumera attributet?

Tänk på följande:

Alternativ vid implementation av ESI

På grund av GDPR så är det inte lämpligt att använda studenters personnummer som ESI. För studenter så finns två andra nationella identifiererare som kan vara lämpliga att använda som ESI, ExterntUID från Ladok/NyA/Antagning.se respektive unikt id i eduID. Ett tredje alternativ är att skapa ett lokalt ESI direkt kopplat till studentens identitetsutfärdare.

Använda ExterntUID från Ladok som ESI

I Ladok finns ett ExterntUID för varje student. Värdet kommer från UHR:s studentregister där samordning sker med NyA/Antagning.se och Ladok för att varje student som etableras i NyA/Antagning.se eller Ladok ska få en unik gemensam identifierare. För att i möjligaste mån se till att studenter har samma ESI oberoende vilket lärosäte/inloggningstjänst studenten loggar in via så bör ExterntUID användas för ESI. Notera att Ladok respektive NyA/Antagning.se även har egna, interna UID:er för studenter (som i Ladoks fall bland annat kan användas i norEduPersonLIN), dessa är inte samma som ExterntUID.

ExterntUID i Ladok är ett uuid, exempelvis 9e342e78-5b6c-4902-966e-50e28a21e601.

Alternativ 1: Värdet på schacPersonalUniqueCode blir då: urn:schac:PersonalUniqueCode:int:esi:ladok.se:9e342e78-5b6c-4902-966e-50e28a21e601

Alternativ 2: Värdet på schacPersonalUniqueCode blir då: urn:schac:PersonalUniqueCode:int:esi:SE:ladok-9e342e78-5b6c-4902-966e-50e28a21e601

Alternativ 1 föredras men <sHO> kan eventuellt kunna korsrelateras till attributet schacHomeOrganization och/eller scope i metadata och då gäller alternativ 2 (inte klart utläsbart ur specen av ESI, undersökning pågår).

ExterntUID går även att läsa ut från NyA-Open (speciellt för lärosäten som inte har Ladok men som använder NyA för antagning). Där återfinns det i tabellen STUDENT_PERSON_ID_MAP:

select p.PNR, m.STUDENT_UID from NYA.PERSON p join NYA.STUDENT_PERSON_ID_MAP m on p.PERSON_ID = m.PERSON_ID where p.PNR = '<pnr>'

Denna ESI kan användas på två sätt:

  1. Genom en integration i den egna inloggningstjänsten mot Ladok/NyA-Open.
  2. Genom att eduID uppdras att integrera mot Ladok/NyA-Open och sedan antingen bygga en integration mot eduID i sin inloggningstjänst eller att därefter hänvisa sina studenter till eduID för inloggning i de fall studenten vill ha med sig ESI.

Använda unikt id från eduID som ESI

Varje användare i eduID har en unikt id som används som identifierare i attributet eduPersonPrincipalName (<unikt-id>@eduid.se) som kan användas som grund för att skapa ESI. eduID har även möjlighet att på lärosätets uppdrag integrera mot Ladok för att hämta ut ExterntUID därifrån, eller att få det av lärosätet lärosätet och då används ExterntUID för att skapa ESI.

Det unika id:t är en textsträng på specifikt format, exempelvis abcde-fghij.

Alternativ 1: Värdet på schacPersonalUniqueCode blir då: urn:schac:PersonalUniqueCode:int:esi:eduid.se:abcde-fghij

Alternativ 2: Värdet på schacPersonalUniqueCode blir då: urn:schac:PersonalUniqueCode:int:esi:SE:eduid-abcde-fghij

Alternativ 1 föredras men <sHO> kan eventuellt kunna korsrelateras till attributet schacHomeOrganization och/eller scope i metadata och då gäller alternativ 2 (inte klart utläsbart ur specen av ESI, undersökning pågår).

Använda lokal användaridentitet vid lärosäte som ESI

Varje användare vid lärosätet har en unik användaridentitet som aldrig återanvänds för annan individ (används normalt i eduPersonPrincipalName i SWAMID).

Användaridentiteten är en textsträng, exempelvis abcd1234, och lärosätet har DNS-domänen (SAML Scope) exempelvis larosate.se.

Värdet på schacPersonalUniqueCode blir då: urn:schac:PersonalUniqueCode:int:esi:larosate.se:abcd1234

Synkronisering med eduID

Oavsett om lärosäten väljer att implementera ESI i sin identitetsutfärdare eller ej så finns skäl att synkronisera studenters ESI med eduID. Exempel på detta:

eduID har integrationsmöjligheter både för att:

Förutsättningar för lärosäten

Lista på lärosäten hämtad från https://www.uka.se/fakta-om-hogskolan/universitet-och-hogskolor/lista-over-universitet-hogskolor-och-enskilda-utbildningsanordnare.html.

LärosäteDeltar i Erasmus+Studenter i LadokStudenter i NyAInloggningstjänst för studenter i SWAMID

Beckmans designhögskola


nej, ej planeratnej, ej planeratsaknar inloggningstjänst

Blekinge tekniska högskola


jajaegen

Chalmers tekniska högskola


jajaegen

Enskilda Högskolan Stockholm


jajaeduID används för studenter
Ericastiftelsen
nej, ej planeratnej, ej planeratsaknar inloggningstjänst

Ersta Sköndal Bräcke högskola


jajaegen

Försvarshögskolan


jajaegen

Gammelkroppa skogsskola


nej, ej planeratnej, ej planeratsaknar inloggningstjänst

Gymnastik- och idrottshögskolan


jajaegen

Göteborgs universitet


jajaegen

Handelshögskolan i Stockholm


nej, ej planeratjaegen

Högskolan Dalarna


jajaegen

Högskolan Evidens


nej, ej planeratnej, ej planeratsaknar inloggningstjänst

Högskolan i Borås


jajaegen

Högskolan i Gävle


jajaegen

Högskolan i Halmstad


jajaegen

Högskolan i Skövde


jajaegen

Högskolan Kristianstad


jajaegen

Högskolan Väst


jajaegen

Johannelunds teologiska högskola


nej, kanske snartjasaknar inloggningstjänst

Karlstads universitet


jajaegen

Karolinska institutet


jajaegen

Konstfack


jajaegen

Kungl. Konsthögskolan


jajaegen

Kungl. Musikhögskolan i Stockholm


jajaegen

Kungl. Tekniska högskolan


jajaegen

Linköpings universitet


jajaegen

Linnéuniversitetet


jajaegen

Luleå tekniska universitet


jajaegen

Lunds universitet


jajaegen

Malmö universitet


jajaegen

Mittuniversitetet


jajaegen

Mälardalens högskola


jajaegen

Newmaninstitutet

janej, kanske snartjasaknar inloggningstjänst

Röda Korsets högskola


jajaegen

Skandinaviens akademi för psykoterapiutveckling


nej, ej planeratnej, ej planeratsaknar inloggningstjänst

Sophiahemmet Högskola


jajaegen

Stiftelsen Högskolan i Jönköping


jajaegen

Stockholms konstnärliga högskola


jajaegen

Stockholms Musikpedagogiska Institut


nej, ej planeratnej, ej planeratsaknar inloggningstjänst

Stockholms universitet


jajaegen

Svenska institutet för kognitiv psykoterapi


nej, ej planeratnej, ej planeratsaknar inloggningstjänst

Sveriges lantbruksuniversitet


jajaegen

Södertörns högskola


jajaegen

Umeå universitet


jajaegen

Uppsala universitet


jajaegen

Örebro Teologiska Högskola (ALT)


nej, kanske snartjasaknar inloggningstjänst

Örebro universitet


jajaegen

Att göra attributrelease av ESI

European Student Identifier (ESI) har inget eget attribut utan använder attributet schacPersonalUniqueCode. Detta attribut är ett s.k. samlingsattribut som kan innehålla värden för många olika tjänster. Det är därför inte lämpligt att släppa detta attribut för tjänster som kräver det i metadata via entitetskategorin Géant Data Protection Code of Conduct. För närvarande håller det på att tas fram en egen entitetskategori för att kunna släppa ESI endast till de tjänster som ska få tillgång till ESI. Mer information kommer att publiceras här när detta arbete är klart.

Definitioner

Definition av European Student Identifier (ESI)

Utdrag från https://wiki.geant.org/display/SM/European+Student+Identifier (v1.0)

This specification defines a profile for the schacPersonalUniqueCode attribute (as defined in the SCHema for Academia) that will be used to transport the European Student Identifier.

Description

The student mobility processes require the use of a number of services, all of which are involved in different stages of the pipeline and which will need to be able to exchange data about the students who are in mobility.

The European Student Identifier is globally unique, persistent, non-targeted, protocol neutral and data transport neutral.

Format

The European Student Identifier can take on one of two forms, depending on the qualifiers needed to make a given student code globally unique:

ESI with nation-wide (or region-wide) scope student code:

urn:schac:personalUniqueCode:int:esi:<country-code>:<code>

ESI with HEI-wide scope student code:

urn:schac:personalUniqueCode:int:esi:<sHO>:<code>

Where:

Examples

Non-normative examples for both forms:

Definition av attributet schacPersonalUniqueCode

Utdrag från: https://wiki.refeds.org/display/STAN/SCHAC+Releases (v1.5)

NameschacPersonalUniqueCode
DescriptionSpecifies a “unique code” for the subject it is associated with.
Its value does not necessarily correspond to any identifier outside the scope of the
directories using this schema.
This might be Student number, Employee number,...
OID1.3.6.1.4.1.25178.1.2.14
Formaturn:schac:personalUniqueCode:<country-code>:<iNSS>

The must be a valid two-letter ISO 3166 country code identifier or the string “int”, and assigned by the SCHAC URN Registry for this attribute at https://wiki.refeds.org/display/STAN/SCHAC+URN+Registry is a Namespace Specific String as defined in RFC 2141 but case insensitive, from a nationally controlled vocabulary, published through the URI identified at the above mentioned SCHAC URN registry.
RFC 4517 definition( schacAttributeType:14
  NAME 'schacPersonalUniqueCode'
  DESC 'Unique code for the subject'
  EQUALITY caseIgnoreMatch
  ORDERING caseIgnoreOrderingMatch
  SUBSTR caseIgnoreSubstringsMatch
  SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
ExamplesCommon values:
urn:schac:personalUniqueCode:int:studentID:<country-code>:<code>

National extensions:
urn:schac:personalUniqueCode:fi:tut.fi:hetu:010161-995A
urn:schac:personalUniqueCode:es:uma:estudiante:a3b123c12
urn:schac:personalUniqueCode:se:LIN:87654321