Differenze tra le versioni di "Erasmus Plus e ESI"
Riga 6: | Riga 6: | ||
<pre> | <pre> | ||
https://proxy.prod.erasmus.eduteams.org/metadata/backend.xml | https://proxy.prod.erasmus.eduteams.org/metadata/backend.xml | ||
− | </pre>Il Service Provider è pubblicato in IDEM tramite eduGAIN, quindi se state già consumando i metadata <code>edugain2idem</code> (vedi [[Metadata]]) non dovrete fare alcuna azione per accedere tramite il vostro Identity Provider. In caso contrario, in primo luogo dovete contattare il | + | </pre>Il Service Provider è pubblicato in IDEM tramite eduGAIN, quindi se state già consumando i metadata <code>edugain2idem</code> (vedi [[Metadata]]) non dovrete fare alcuna azione per accedere tramite il vostro Identity Provider. In caso contrario, in primo luogo dovete contattare il [mailto:idem-help@garr.it Servizio IDEM GARR AAI] per richiedere l'esportazione del vostro Identity Provider in eduGAIN, poi dovrete configurare i metadata di eduGAIN distributi dal Servizio (vedi [[Metadata]]). |
====Attributi==== | ====Attributi==== | ||
Riga 63: | Riga 63: | ||
====European Student Identifier==== | ====European Student Identifier==== | ||
− | Lo European Student Identifier (ESI) è un | + | Lo European Student Identifier (ESI) è un identificatore globalmente univoco, persistente, non mirato (rimane lo stesso per tutti i Service Provider). Viene codificato e trasmesso tramite l'attributo <code>schacPersonalUniqueCode</code>. Lo ESI supporta due modalità principali di codifica: |
− | + | # <u>per nazione</u>: nel caso sia disponibile un codice studentesco nazionale | |
+ | # <u>per istituto</u>: unica forma ammessa nel caso dell'Italia | ||
− | *namespace URN: <code><nowiki>urn:schac:personalUniqueCode:int:esi</nowiki>:</code> | + | Lo ESI si compone di tre parti: |
− | *dominio dell'organizzazione: foo.bar | + | |
+ | *namespace URN invariabile: <code><nowiki>urn:schac:personalUniqueCode:int:esi</nowiki>:</code> | ||
+ | *dominio dell'organizzazione: <code>foo.bar</code> | ||
*codice identificativo dello studente (ad es. la matricola): <code>17585515</code> | *codice identificativo dello studente (ad es. la matricola): <code>17585515</code> | ||
Riga 76: | Riga 79: | ||
====Configurazione Identity Provider==== | ====Configurazione Identity Provider==== | ||
− | Per rilasciare lo ESI tramite un Identity Provider (IdP) si possono usare due strategie: valorizzare l'attributo <code>schacPersonalUniqueCode</code> completo di namespace URN e dominio direttamente nella propria Directory o esportare il solo codice identificativo dello studente e valorizzare <code>schacPersonalUniqueCode</code> nell'IdP. La seconda strategia è più flessibile e raccomandata dal Servizio IDEM GARR AAI Di seguito vi proponiamo un esempio di configurazione | + | Per rilasciare lo ESI tramite un Identity Provider (IdP) si possono usare due strategie: valorizzare l'attributo <code>schacPersonalUniqueCode</code> completo di namespace URN e dominio direttamente nella propria Directory o esportare il solo codice identificativo dello studente e valorizzare <code>schacPersonalUniqueCode</code> nell'IdP. La seconda strategia è più flessibile e raccomandata dal Servizio IDEM GARR AAI. Di seguito vi proponiamo un esempio di configurazione basata sulla seconda strategia per Shibboleth Identity Provider v4.x. |
====Configurazione dello ESI==== | ====Configurazione dello ESI==== | ||
Per configurare lo ESI è necessario trasmettere il codice identificativo dello studente al proprio IdP. Ammesso che il codice sia contenuto in un attributo denominato <code>matricolaStudente</code>, quest'ultimo andrà aggiunto alla lista di attributi restituiti dalla Directory in risposta alla query dell'IdP. | Per configurare lo ESI è necessario trasmettere il codice identificativo dello studente al proprio IdP. Ammesso che il codice sia contenuto in un attributo denominato <code>matricolaStudente</code>, quest'ultimo andrà aggiunto alla lista di attributi restituiti dalla Directory in risposta alla query dell'IdP. | ||
− | Per creare lo ESI va definito | + | Per creare lo ESI va definito l'attributo <code>schacPersonalUniqueCode</code> nel file ''conf/attributes/custom/schacPersonalUniqueCode.properties'' come segue:<syntaxhighlight lang="xml"> |
+ | # schacPersonalUniqueCode | ||
+ | |||
+ | id=schacPersonalUniqueCode | ||
+ | transcoder=SAML2StringTranscoder | ||
+ | displayName.en=ESI | ||
+ | displayName.it=ESI | ||
+ | description.en=European Student Identifier | ||
+ | description.it=European Student Identifier | ||
+ | saml2.name=urn:oid:1.3.6.1.4.1.25178.1.2.14 | ||
+ | saml1.encodeType=false | ||
+ | </syntaxhighlight>e va valorizzato nel file ''conf/attribute-resolver.xml'', come nell'esempio che segue: | ||
<AttributeDefinition id="schacPersonalUniqueCode" xsi: type = "Template"> | <AttributeDefinition id="schacPersonalUniqueCode" xsi: type = "Template"> | ||
− | <InputDataConnector ref="myLDAP" attributeNames="matricolaStudente"/ | + | <InputDataConnector ref="myLDAP" attributeNames="matricolaStudente"/> |
− | + | <Template><nowiki>urn:schac:personalUniqueCode:int:esi:it:foo.bar:${matricolaStudente}</nowiki></Template> | |
− | + | </AttributeDefinition > | |
− | <Template><nowiki>urn:schac:personalUniqueCode:int:esi:it:foo.bar:${matricolaStudente}</nowiki></Template | ||
− | |||
− | </ AttributeDefinition > |
Versione delle 14:39, 10 mar 2021
Nell'ambito della European Student Card Initiative la commisione europea ha stabilito un percorso di digitalizzazione di tutti i servizi legati al programma Erasmus+ quali Online Learning Agreement (OLA), Erasmus+ mobile application, ecc. Una parte fondamentale della digitalizzazione riguarda l'autenticazione degli studenti, per la quale è stata scelta eduGAIN, cosicché gli studenti possano accedere con le proprie credenziali istituzionali e che i servizi ricevano fin da subito tutte le informazioni necessarie ad identificare correttamente gli utenti.
Indice
MyAcademicID proxy
L'accesso ai servizi Erasmus+ avviene mediante un proxy realizzato nell'ambito del progetto MyAcademicID e gestito da GEANT. Questo vuol dire che tutti i servizi legati ad Erasmus+ hanno un unico Service Provider con il seguente entityID:
https://proxy.prod.erasmus.eduteams.org/metadata/backend.xml
Il Service Provider è pubblicato in IDEM tramite eduGAIN, quindi se state già consumando i metadata edugain2idem
(vedi Metadata) non dovrete fare alcuna azione per accedere tramite il vostro Identity Provider. In caso contrario, in primo luogo dovete contattare il Servizio IDEM GARR AAI per richiedere l'esportazione del vostro Identity Provider in eduGAIN, poi dovrete configurare i metadata di eduGAIN distributi dal Servizio (vedi Metadata).
Attributi
Gli attributi richiesti per accedere ai servizi Erasmus+ sono i seguenti.
Attributo | Descrizione | Esempio |
---|---|---|
eduPersonPrincipalName | Identificativo globalmente univoco e persistente. | username@foo.bar
|
eduPersonTargetedID | Identificativo univoco, opaco, mirato (diverso per ogni Service Provider) e persistente. | https://idp.foo.bar/idp/shibboleth!https://sp.example.com/shibboleth!a6c2c4d4-08b9-4ca7-8ff9-43d83e6e1d35
|
displayName | Nome completo. Rilasciare se non si rilascia già cn, o givenName+sn. | Mario Rossi
|
cn | Nome completo. Rilasciare se non si rilascia già displayName o givenName+sn. | Mario Rossi
|
givenName | Nome. Rilasciare se non si rilascia già displayName o cn. | Mario
|
sn | Cognome. Rilasciare se non si rilascia già displayName o cn. | Rossi
|
eduPersonAffiliation | Macro ruolo all'interno della propria organizzazione. | [member, student]
|
eduPersonScopedAffiliation | Macro ruolo all'interno della propria organizzazione con l'aggiunta del dominio. | [member@foo.bar, student@foo.bar
|
schacPersonalUniqueCode | Codice univoco personale assegnato dalla propria organizzazione (URN). E' utilizzato per codificare e trasmettere lo European Student Identifier. | urn:schac:personalUniqueCode:int:esi:foo.bar:17585515
|
schacHomeOrganization | Dominio della propria organizzazione. | foo.bar
|
schacHomeOrganizationType | Tipo di organizzazione (URN) | urn:schac:homeOrganizationType:eu:higherEducationalInstitution
|
European Student Identifier
Lo European Student Identifier (ESI) è un identificatore globalmente univoco, persistente, non mirato (rimane lo stesso per tutti i Service Provider). Viene codificato e trasmesso tramite l'attributo schacPersonalUniqueCode
. Lo ESI supporta due modalità principali di codifica:
- per nazione: nel caso sia disponibile un codice studentesco nazionale
- per istituto: unica forma ammessa nel caso dell'Italia
Lo ESI si compone di tre parti:
- namespace URN invariabile:
urn:schac:personalUniqueCode:int:esi:
- dominio dell'organizzazione:
foo.bar
- codice identificativo dello studente (ad es. la matricola):
17585515
Lo ESI completo risultante: urn:schac:personalUniqueCode:int:esi:foo.bar:17585515
Le specifiche complete dello ESI sono disponibili sul wiki di GEANT: https://wiki.geant.org/display/SM/European+Student+Identifier
Configurazione Identity Provider
Per rilasciare lo ESI tramite un Identity Provider (IdP) si possono usare due strategie: valorizzare l'attributo schacPersonalUniqueCode
completo di namespace URN e dominio direttamente nella propria Directory o esportare il solo codice identificativo dello studente e valorizzare schacPersonalUniqueCode
nell'IdP. La seconda strategia è più flessibile e raccomandata dal Servizio IDEM GARR AAI. Di seguito vi proponiamo un esempio di configurazione basata sulla seconda strategia per Shibboleth Identity Provider v4.x.
Configurazione dello ESI
Per configurare lo ESI è necessario trasmettere il codice identificativo dello studente al proprio IdP. Ammesso che il codice sia contenuto in un attributo denominato matricolaStudente
, quest'ultimo andrà aggiunto alla lista di attributi restituiti dalla Directory in risposta alla query dell'IdP.
Per creare lo ESI va definito l'attributo schacPersonalUniqueCode
nel file conf/attributes/custom/schacPersonalUniqueCode.properties come segue:
# schacPersonalUniqueCode
id=schacPersonalUniqueCode
transcoder=SAML2StringTranscoder
displayName.en=ESI
displayName.it=ESI
description.en=European Student Identifier
description.it=European Student Identifier
saml2.name=urn:oid:1.3.6.1.4.1.25178.1.2.14
saml1.encodeType=false
e va valorizzato nel file conf/attribute-resolver.xml, come nell'esempio che segue:
<AttributeDefinition id="schacPersonalUniqueCode" xsi: type = "Template"> <InputDataConnector ref="myLDAP" attributeNames="matricolaStudente"/> <Template>urn:schac:personalUniqueCode:int:esi:it:foo.bar:${matricolaStudente}</Template> </AttributeDefinition >