...
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.
Att göra attributrelease av ESI från en identitetsutfärdare
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 för European Student Identifier (ESI). Det beror på att ESI använder det multivärda 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 ESI till tjänster som har rätt att använda det.
European Student Identifier har en egen entitetskategori vilken har som enda uppgift att endast släppa ESI-värdet i attributet schacPersonalUniqueCode till de tjänster som efterfrågar ESI via entitetskategorin. Övriga attribut som tjänsten behöver efterfrågas via annan entitetskategori, t.ex. CoCo. Den tekniska identifieraren av denna entitetskategori är https://myacademicid.org/entity-categories/esi.
Shibboleth Identity Provider
För Shibboleth Identity Provider har SWAMID uppdaterat SWAMID:s exempelfiler för resolver och filter på hur ESI-värdet släpps genom ett automatiserat beslut. Se wikisidorna "Example of a standard attribute resolver for Shibboleth IdP v3.4.0 and above" och "Example of a standard attribute filter for Shibboleth IdP v3.4.0 and above" och sök på attributet schacPersonalUniqueCode för att se exempelkonfigurationerna.
Active Directory Federation Services (ADFS)
ADFS Toolkit har inte inbyggt stöd i version 2.0.0 och 2.0.1 för att släppa ESI via entitetskategori utan en uppdatering av SWAMID-inställningarna behöver laddas ner och konfigureras manuellt. ADFS Toolkit kommer från och med version 2.1.0 att ha stöd för ESI-kategorin. Det finns inget stöd i version 1.0 och tidigare!
Instruktion för att hantera ESI i ADFS Toolkit 2.0.0 och 2.0.1
För att snabbt få stöd för ESI-kategorin innan den byggts in i ADFS Toolkit har SWAMID släppt en utökad federationsfil som kan importeras via ett kommando, se nedan. Federationsfilen innehåller dels specifika entitetskategorier för SWAMID, dels defaultvärden för ADFS Toolkit så att man inte behöver ta reda på URL:en till metadatat eller certifikatets fingerprint som signerar metadatat.
Steg 1 - Ladda ner den nya versionen av SWAMID:s federationsfil
Använd följade kommando för att ladda ner och uppdatera SWAMID:s federationsfil(er):
Code Block | ||
---|---|---|
| ||
Get-ADFSTkFederationDefaults -URL https://mds.swamid.se/md/SWAMID_FederationDefaults.zip -InstallDefaults |
Federationsfilen packas upp och lägger sina filer i mappen "C:\ADFSToolkit\config\federation\SWAMID".
Den intressanta filen i det här sammanhanget är "C:\ADFSToolkit\config\federation\SWAMID\SWAMID_entityCategories.ps1".
I filen har vi lagt till ett kodblock, #European Student Identifier Entity Category, som i sin tur innehåller två delar, en av dem är utkommenterad (raderna som startar med #).
Code Block | ||
---|---|---|
| ||
#European Student Identifier Entity Category
$TransformRules = [Ordered]@{}
$TransformRules.schacPersonalUniqueCode = [PSCustomObject]@{
Rule=@"
@RuleName = "compose schacPersonalUniqueCode for ESI"
c:[Type == "urn:mace:dir:attribute-def:schacPersonalUniqueCode", Value =~ "^urn:schac:PersonalUniqueCode:int:esi:"]
=> issue(Type = "urn:oid:1.3.6.1.4.1.25178.1.2.14",
Value = c.Value,
Properties["http://schemas.xmlsoap.org/ws/2005/05/identity/claimproperties/attributename"] = "urn:oasis:names:tc:SAML:2.0:attrname-format:uri");
"@
Attribute="urn:mace:dir:attribute-def:schacPersonalUniqueCode"
AttributeGroup="ID's"
}
# $TransformRules.schacPersonalUniqueCode = [PSCustomObject]@{
# Rule=@"
# @RuleName = "compose schacPersonalUniqueCode for ESI"
# c:[Type == "urn:mace:dir:attribute-def:schacPersonalUniqueCode"]
# => issue(Type = "urn:oid:1.3.6.1.4.1.25178.1.2.14",
# Value = "urn:schac:PersonalUniqueCode:int:esi:ladok.se:externtstudentuid-" + c.Value,
# Properties["http://schemas.xmlsoap.org/ws/2005/05/identity/claimproperties/attributename"] = "urn:oasis:names:tc:SAML:2.0:attrname-format:uri");
# "@
# Attribute="urn:mace:dir:attribute-def:schacPersonalUniqueCode"
# AttributeGroup="ID's"
# }
$IssuanceTransformRuleCategories.Add("https://myacademicid.org/entity-categories/esi",$TransformRules)
### |
- Det övre stycket släpper alla värden i schacPersonalUniqueCode som böjar på "urn:schac:PersonalUniqueCode:int:esi:".
- Det nedre stycket tar alla värden i schacPersonalUniqueCode och släpper ett nytt värde som byggs ihop av "urn:schac:PersonalUniqueCode:int:esi:externtstudentuid-" + värdet.
Har ni behovet att bygga ihop ESI-strängen, kommentera ut det övre stycket och avkommentera det undre.
Steg 2 - Konfigurera var ADFS Toolkit kan hämta värden för schacPersonalUniqueCode
Fil att ändra är C:\ADFSToolkit\config\institution\config.Swamid.xml (standardplats).
Lägg till följande rad någonstans i filen inom <attributes> taggen (långt ner i filen).
Code Block | ||
---|---|---|
| ||
<attribute type="urn:mace:dir:attribute-def:schacPersonalUniqueCode" store="Active Directory" name="externtstudentuid" /> |
Observera att attributnamnet externtstudentuid måste ersättas med det attribut där ni lagrar ESI-värdet i Active Directory.
Värdet kan lika gärna hämtas från en annan källa, t.ex. SQL/Custom Store om så önskas.
Steg 3 - Gör en import av en SP och tvinga en entitetskategori
För att testa konfigurationen ovan kan man antingen importera en SP som har rätt entitetskategori i metadatat eller tvinga en entitetskategori på en test-SP.
Man kan också "torrsimma" och emulera vilka attribut som kommer släppas med kommadot Get-ADFSTkToolsIssuanceTransformRules.
Använd följande kommando för att se attributreglerna som kommer skapas för SWAMID:s testtjänst för ESI:
Code Block | ||
---|---|---|
| ||
Get-ADFSTkToolsIssuanceTransformRules -entityId https://esi.release-check.swamid.se/shibboleth |
Använd följande kommando för att tvinga en entitetskategori på MyAcademicID:
Code Block | ||
---|---|---|
| ||
Import-ADFSTkMetadata -EntityId 'https://proxy.prod.erasmus.eduteams.org/metadata/backend.xml' -ConfigFile 'C:\ADFSToolkit\config\institution\config.Swamid.xml' -ForcedEntityCategories 'https://myacademicid.org/entity-categories/esi' -ForceUpdate |
För att se resultatet av importen, använd följande kommando:
Code Block | ||
---|---|---|
| ||
Get-AdfsRelyingPartyTrust -Identifier 'https://proxy.prod.erasmus.eduteams.org/metadata/backend.xml' | Select -ExpandProperty IssuanceTransformRules |
Manuell konfiguration av attributrelease
Om inte lärosätets identitetsutfärdare inte kan hantera attributrelease av ESI via entitetskategori eller om lärosätet manuellt konfigurerar attributrelease behöver ni tänka på följande vid konfigurationen.
- entityID för MyAcademicID är https://proxy.prod.erasmus.eduteams.org/metadata/backend.xml.
- Värdet för ESi ska skickas i attributet schacPersonalUniqueCode (urn:oid:1.3.6.1.4.1.25178.1.2.14).
- Observera att det är endast ESI-värdet som ska skickas till MyAcademicID, inga andra!
- MyAcademicID begär även attributen eduPersonAssurance, eduPersonPrincipalName, eduPersonScopedAffiliation, givenName, mail, schacHomeOrganization och sn via entitetaskategorin CoCo.
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 | |
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 | från och med HT21ja | jasaknar inloggningstjänst | eduID används för studenter |
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 | jasaknar inloggningstjänst | |
Örebro universitetSveriges lantbruksuniversitet | 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.
...
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 |
Specifikationer
Specifikation av European Student Identifier (ESI)
...