Table of Contents | ||
---|---|---|
|
Inledning
MyAcademicID / EDSSI och Erasmus+
MyAcademicID levererade under 2020 en arkitektur för digital identitet som ger studenter möjlighet att autentisera sig för sina studier utomlands med sitt lärosätes studentkonto. Detta kunde genomföras genom att eduGAIN kopplades ihop med sveriges nationella eIDAS-nod. På så sätt kopplas de akademiska identiteterna samman med medborgaridentiteter och en unik identifierare för studenter kan utlovas genom att införa en European Student Identifier (ESI).
...
- Genom en direktanslutning.
- Genom att lärosätet ansluter sitt upphandlade systemstöd för utlandsstudier från tredje part (ex. Mobility Online eller MoveOn).
- Genom att lärosätet ansluter ett egenutvecklat systemstöd för utlandsstudier.
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.
...
- Det underlättar om en student har få ESI:er men det är hanterbart även om en student har flera ESI:er under sin studietid, tex i samband med flytt till eller från ett lärosäte som inte ingår i Ladok eller för studenter som inte gått igenom central antagning och därmed inte har ett ExterntStudentUID från Ladok/NyA/Antagning.se.
- Lärosätet kan behöva hantera studenter som gått igenom lokal antagning på ett annat sätt än vanliga "NyA-studenter". Detta kan ge flera olika ESI-strukturer inom lärosätet. Detta är inte ett problem för ESI-samarbetet.
- ESI är inte knuten till personnummer och kräver inte "bekräftade" användare. En ESI är frikopplat från nationella identifieringssystem och är gemensamt för hela EU.
- Genom att samordna ESI med eduID kan en student behålla sin ESI över lång tid, även efter ett eventuellt val av lärosätet att rensa bort ett lärosäteskonto. Detta främjar livslångt lärande på sikt.
- Den modell som väljs för ESI måste både vara tillgängligt både för den tjänst som används för administration av studentutbytet och lärosätets identitetsutgivare (IdP).
Olika 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 bas för ESI, ExterntStudentUID från Ladok/NyA/Antagning.se respektive unikt id i eduID. Ett tredje alternativ är att skapa en lokalt ESI direkt kopplat till studentens identitetsutfärdare. För de organisationer som använder Ladok rekommenderas att ExterntStudentUID i Ladok används.
Använda ExterntStudentUID från Ladok som ESI
I Ladok finns ett ExterntStudentUID för varje student. Värdet kommer från UHR:s studentregister där samordning sker med Ladok och NyA/Antagning.se för att varje student som etableras i Ladok eller NyA/Antagning.se 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 ExterntStudentUID 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 (StudentUID) bland annat kan användas i norEduPersonLIN). Dessa är inte samma som ExterntStudentUID.
...
- Genom en integration i den egna inloggningstjänsten mot Ladok eller NyA-Open.
- 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.
Läsa ut ExterntStudentUID från Ladok
ExterntStudentUID följer med i lärosätets egna feed i Ladok. Händelsen heter LokalStudentEvent och attributet i händelsen heter ExterntStudentUID. Notera att händelsen även har attributet StudentUID, som är den interna UID:n för studenten i Ladok.
...
<si:LokalStudentEvent xmlns:si="http://schemas.ladok.se/studentinformation" xmlns:base="http://schemas.ladok.se" xmlns:dap="http://schemas.ladok.se/dap" xmlns:events="http://schemas.ladok.se/events">
<events:HandelseUID>9f920641-9647-4c39-88ec-aae708516014</events:HandelseUID>
<events:EventContext>
<events:AnvandareUID>6cf85d57-1662-42bf-93aa-1b5fdea16386</events:AnvandareUID>
<events:Anvandarnamn>feedevent@ladokintern.se</events:Anvandarnamn>
<events:LarosateID>96</events:LarosateID>
</events:EventContext>
<events:Handelsetyp>UPPDATERAD</events:Handelsetyp>
<si:Efternamn>Johansson</si:Efternamn>
<si:ExterntStudentUID>e32accbe-4915-4e4f-8d66-08961b6542de</si:ExterntStudentUID>
<si:Fodelsedata>1986-09-30</si:Fodelsedata>
<si:Fornamn>Maria</si:Fornamn>
<si:Kon>1</si:Kon>
<si:Personnummer>198609309888</si:Personnummer>
<si:StudentUID>a044b2d3-eb0d-4ece-89e0-7fa8b4a008a4</si:StudentUID>
</si:LokalStudentEvent>
Läsa ut ExterntStudentUID från NyA/Antagning.se
ExterntStudentUID 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>'
Använda unikt id från eduID som ESI
Varje användare i eduID har ett unikt id som används som identifierare i attributet eduPersonPrincipalName (<unikt-id>@eduid.se) som kan användas som grund för att skapa en ESI. Det unika id:t är en textsträng på specifikt format, exempelvis abcde-fghij.
...
Notera att eduID även har möjlighet att på ett lärosätes uppdrag integrera mot Ladok för att hämta ut ExterntStudentUID därifrån eller få det av lärosätet via en SCIM-integration och då använda ExterntStudentUID från Ladok för att använda som ESI.
Använda lokal användaridentitet vid lärosäte som ESI
Varje användare vid ett lärosäte har en unik användaridentitet som aldrig återanvänds för annan individ (används normalt i eduPersonPrincipalName i SWAMID).
...
Värdet på schacPersonalUniqueCode blir då: urn:schac:PersonalUniqueCode:int:esi:larosate.se:abcd1234
Synkronisering med eduID
Oavsett om ett lärosäte väljer att implementera ESI i sin identitetsutfärdare eller ej så finns skäl att synkronisera studenters ESI med eduID. Exempel på detta:
...
Synkronisering av ESI | Beskrivning |
---|---|
Ladok -> eduID | Lärosätet kan tillåta eduID att hämta ESI för lärosätets studenter från Ladok (via Ladoks REST-API) |
Ladok -> Lärosäte -> eduID | Lärosätet kan själv hämta ESI för sina studenter från Ladok och därefter skicka in dessa till eduID (via en SCIM-integration mot eduID) |
eduID -> Lärosäte | Lärosätet kan hämta ESI för sina studenter från eduID (via en SCIM-integration mot eduID) |
Presentationer från webinarer
Presentationer som beskriver hanteringen av ESI:
...
På wikisidan Presentationer från webbinarium 2021 finns ytterligare webbinarium om MyAcademicID och EDSSI.
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äte | Deltar i Erasmus+ | Studenter i Ladok | Studenter i NyA | Inloggningstjänst för studenter i SWAMID |
---|---|---|---|---|
Beckmans designhögskola | nej | nej, ej planerat | nej, ej planerat | saknar inloggningstjänst |
Blekinge tekniska högskola | ja | ja | ja | egen |
Chalmers tekniska högskola | ja | ja | ja | egen |
Enskilda Högskolan Stockholm | ja | ja | ja | eduID används för studenter |
Ericastiftelsen | nej | nej, ej planerat | nej, ej planerat | saknar inloggningstjänst |
Ersta Sköndal Bräcke högskola | ja | ja | ja | egen |
Försvarshögskolan | ja | ja | ja | egen |
Gammelkroppa skogsskola | nej | nej, ej planerat | nej, ej planerat | saknar inloggningstjänst |
Gymnastik- och idrottshögskolan | ja | ja | ja | egen |
Göteborgs universitet | ja | ja | ja | egen |
Handelshögskolan i Stockholm | ja | nej, ej planerat | ja | egen |
Högskolan Dalarna | ja | ja | ja | egen |
Högskolan Evidens | nej | nej, ej planerat | nej, ej planerat | saknar inloggningstjänst |
Högskolan i Borås | ja | ja | ja | egen |
Högskolan i Gävle | ja | ja | ja | egen |
Högskolan i Halmstad | ja | ja | ja | egen |
Högskolan i Skövde | ja | ja | ja | egen |
Högskolan Kristianstad | ja | ja | ja | egen |
Högskolan Väst | ja | ja | ja | egen |
Johannelunds teologiska högskola | nej | nej, kanske snart | ja | saknar inloggningstjänst |
Karlstads universitet | ja | ja | ja | egen |
Karolinska institutet | ja | ja | ja | egen |
Konstfack | ja | ja | ja | egen |
Kungl. Konsthögskolan | ja | ja | ja | egen |
Kungl. Musikhögskolan i Stockholm | ja | ja | ja | egen |
Kungl. Tekniska högskolan | ja | ja | ja | egen |
Linköpings universitet | ja | ja | ja | egen |
Linnéuniversitetet | ja | ja | ja | egen |
Luleå tekniska universitet | ja | ja | ja | egen |
Lunds universitet | ja | ja | ja | egen |
Malmö universitet | ja | ja | ja | egen |
Mittuniversitetet | ja | ja | ja | egen |
Mälardalens högskola | ja | ja | ja | egen |
Newmaninstitutet | ja | nej, kanske snart | ja | saknar inloggningstjänst |
Röda Korsets högskola | ja | ja | ja | egen |
Skandinaviens akademi för psykoterapiutveckling | nej | nej, ej planerat | nej, ej planerat | saknar inloggningstjänst |
Sophiahemmet Högskola | ja | ja | ja | egen |
Stiftelsen Högskolan i Jönköping | ja | ja | ja | egen |
Stockholms konstnärliga högskola | ja | ja | ja | egen |
Stockholms Musikpedagogiska Institut | ja | nej, ej planerat | nej, ej planerat | saknar inloggningstjänst |
Stockholms universitet | ja | ja | ja | egen |
Svenska institutet för kognitiv psykoterapi | nej | nej, ej planerat | nej, ej planerat | saknar inloggningstjänst |
Sveriges lantbruksuniversitet | ja | ja | ja | egen |
Södertörns högskola | ja | ja | ja | egen |
Umeå universitet | ja | ja | ja | egen |
Uppsala universitet | ja | ja | ja | egen |
Örebro Teologiska Högskola (Akademi för Ledarskap och Teologi) | ja | nej, kanske snart | ja | saknar inloggningstjänst |
Örebro universitet | ja | ja | ja | egen |
Att göra attributrelease av ESI
MyAcademicID använder entitetskategorin Géant Data Protection Code of Conduct för alla attribut som överförs från lärosätenas identitetsutfärdare förutom European Student Identifier (ESI). Det beror på att ESI använder attributet schacPersonalUniqueCode. Detta attribut kan innehålla många olika värden med olika syfte och det är av integritets- och säkerhetsskäl endast lämpligt att släppa just ESI till MyAcademicID.
För närvarande pågår arbete med att ta 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. Det hindrar dock inte att ett lärosäte redan nu ser till så lärosätets identitetsplattform/identitetsutfärdare har tillgång till ESI. Om ESI är tillgängligt för identitetsutfärdaren behövs endast en konfigurationsförändring när entitetskategorin är klar.
Specifikationer
Specifikation 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.
...
- Globally Unique: Each student should be uniquely identified across organizational and national boundaries
- Persistent: The identifier should follow the student while he/she is on student mobility
- Non-targeted: The identifier should be the same for all services involved in the student mobility processes
- Protocol neutral: The identifier should not change value depending on the protocol used. For example, it should be the same regardless of whether SAML or OpenID Connect is used
- Data transport neutral: The identifier should not change value depending on how it is transported. For example, the students should be identified by the same identifier regardless if the it is through a federated authentication flow or a back-channel transfer of records.
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:
...
- <country-code> is a valid ISO 3166 country code identifier to qualify the student code with so that it uniquely identifies the student within the Member State (officially assigned ISO 3166-1 alpha-2 country code) or administrative division (e.g. province or state; ISO 3166-2 code), where applicable.
- <sHO> is the Higher Education Institution's
schacHomeOrganization
value (possibly further qualified with the organisational unit issuing the student code). Required if the student code is issued by the Home Organization of the student (or one of its org units) and there can be no guarantee that it uniquely identifies the student within the Member State or administrative division. - <code> is a string that uniquely identifies the student within the scope that it has been issued. It has to satisfy the requirements for strings to be used in URNs according to RFC 2141, sections 2.2 to 2.4.
- The complete schacPersonalUniqueCode attribute value for the ESI does not exceed 255 characters in length.
Examples
Non-normative examples for both forms:
- ESI with nation-wide scope student codes :
urn:schac:personalUniqueCode:int:esi:hr:xxxxxxxxxx
- ESI with HEI-wide scope student codes :
urn:schac:personalUniqueCode:int:esi:example.edu:xxxxxxxxxx
urn:schac:personalUniqueCode:int:esi:math.example.edu:xxxxxxxxxx
Specifikation av attributet schacPersonalUniqueCode
Utdrag från: https://wiki.refeds.org/display/STAN/SCHAC+Releases (v1.5)
...