Vertaling
Let op! Deze pagina is een vertaling van de Engelstalige pagina Attributes in SURFconext . De Engelstalige pagina is het meest up-to-date, en in het geval dat de Nederlandstalige en de Engelstalige pagina elkaar tegenspreken, is de Engelstalige pagina autoritief.
Lees dus bij voorkeur de Engelstalige versie van deze pagina.
Deze pagina geeft een overzicht van alle SAML2 attributen die SURFconext en hun Identity Providers te bieden hebben. Een attribuut is een kenmerk die een gebruiker beschrijft. Het is een 'naam:waarde' paar. De attributen in de SAML-assertion komen overeen met bepaalde attributen die een serviceprovider nodig heeft om te kunnen werken. In het algemeen zijn ze nodig om:
- Gebruikersinformatie van de Identiteitsprovider of IdP aan de dienstverlener over te dragen
- Toegang te krijgen tot een account bij de dienstverlener
- Specifieke diensten toe te staan bij de dienstverlener
Wanneer een gebruiker zich aanmeldt bij een Service Provider, stuurt SURFconext een SAML-assertion naar de Service Provider via de browser van de gebruiker. Deze bevat:
- Een User Identifier. Alle diensten krijgen deze en het bestaat uit een configureerbaar Transiënt- of Persistent NameID.
- Extra attributen. Deze zijn optioneel en verschillen per dienst.
De SAML2-implementatie van SURFconext voldoet aan het SAML2int profiel 0.2.1.
Voordat je je gaat verdiepen in de theoretische zaken op deze pagina, loont het om onze 'best practice' pagina (EN) te lezen. Hier krijg je een introductie tot en hoe attributen het beste gebruikt kunnen worden in SURFconext.
Identifiers van een gebruiker
De identiteit van een gebruiker wordt doorgestuurd in de vorm van een element wat het NameID heet. Iedere IdP wordt verplicht een NameID mee te sturen. Vanwege privacy genereert SURFconext een nieuwe NameID en plaatst een kopij daarvan in het attribuut eduPersonTargetedID, maar alleen als het NameIID geconfigureerd is als persistent (dus niet indien het als transient is geconfigureerd).
Wij bevelen sterk aan dat Service Providers het NameID of eduPersonTargetedID gebruiken om gebruikers uniek te identificeren. Het NameID is, in tegenstelling tot bijvoorbeeld het e-mailadres, stabiel en zal niet snel veranderen (uitgezonderd het gebruik van 'transient' identifiers). SURFconext genereert een NameID voor iedere nieuwe gebruiker. Deze is uniek voor de gebruiker en specifiek voor een bepaalde SP. Dit zorgt ervoor dat SP's deze informatie niet kan correleren met andere diensten.
Er zijn twee typen NameId's:
urn:oasis:names:tc:SAML:2.0:nameid-format:persistent
Een persistent NameID bevat een willekeurige en unieke code om de gebruiker voor deze Service Provider te identificeren. Deze blijft blijft hetzelfde over verschillende sessies.urn:oasis:names:tc:SAML:2.0:nameid-format:transient
Deze bevat een willekeurige unieke code om de gebruiker voor deze Service Provider uniek te identificeren tijdens een sessie. Wanneer de gebruikerssessie bij SURFconext verloopt en de gebruiker opnieuw aanmeldt op een dienst, wordt een nieuwe tijdelijke, transiente, NameID gegenereerd.
Opmerking
De attributen NameID (indien geconfigureerd als persistent) en eduPersonTargetedID, wat feitelijk een kopie is van het NameID, zijn onveranderlijk maar dit is zo tot op zekere hoogte. In sommige gevallen kan het zijn dat er door een service provider of een identity provider keuzes gemaakt worden die er voor zorgen dat het NameID toch wijzigt. Het NameID, zoals gebruikt in de SAML assertion naar de service provider bij het aanmelden op de dienst, is een samenstelling van de attributen uid, schacHomeOrganization, het Entity ID van de service provider samen met een geheim wat gebruik maakt van een SHA algoritme. Als een instelling of dienstverlener er voor kiest bij een dienst die al in productie is één van deze attributen aan te passen zal het er toe leiden dat SURFconext een nieuw NameID en eduPersonTargetedID gaat genereren. Dit kan tot gevolg hebben dat gebruikers geen toegang meer hebben tot hun profielen bij diensten. Als wij zien dat een instelling dan wel dienstverlener voornemens is één van deze attributen aan te passen zullen wij dit ter sprake brengen en ze wijzen op de gevolgen.
Links
Als u een account heeft bij een instelling die aangesloten is bij SURFconext kunt u informatie krijgen over attributen die u deelt met SURFconext door onze profielpagina te bezoeken. Deze pagina geeft u inzicht in persoonlijke gegevens, die door uw instelling via SURFconext zijn verstrekt, naar welke dienst zijn doorgestuurd. Voor nieuwe IdP's of voor IdP's die hun omgeving upgraden, zullen systeembeheerders op enig moment gevraagd worden om de metadata van hun account te delen voor analyses. Ga naar deze pagina en klik op de 'Mail to SURFconext' knop. We nemen contact met u op wanneer we de ingediende metadata hebben beoordeeld. Deze pagina toont u ook de gedeelde attributen.
- Profiel Pagina: https://profile.surfconext.nl/
- Mail response van Identity Provider aan SURFconext en review je attributen: https://engine.surfconext.nl/authentication/sp/debug
Attributenschema's
Een attributenschema is een abstracte representatie van de karakteristieken van een object, en de relatie tot andere objecten.
SURFconext ondersteunt twee attributen schema's:
urn:oid
schema (SAML2.0 compliant)urn
schema (SAML1.1 compliant)
Beiden kunnen worden gebruikt om dezelfde informatie uit te drukken. De uitzondering hierop is het NameID, deze is enkel beschikbaar binnen het urn:oid schema. Standaard geeft SURFconext de attributen door in beide schema's als onderdeel van de assertion. Desalniettemin wordt het door elkaar gebruiken van de schema's afgeraden.
Attributenoverzicht
SURFconext ondersteunt het vrijgeven van de volgende attributen:
Omschrijving | Attribuutnaam | Definitie | Data type | Voorbeeld |
---|---|---|---|---|
(NameID) | eduPerson (1) | UTF8 string | bd09168cf0c2e675b2def0ade6f50b7d4bb4aae | |
urn:mace:dir:attribute-def:sn | X.520 | UTF8 string | Vermeegen | |
urn:mace:dir:attribute-def:givenName | X.520 | UTF8 string | Mërgim Lukáš | |
urn:mace:dir:attribute-def:cn | X.520 | UTF8 String | Prof.dr. Mërgim Lukáš Vermeegen | |
urn:mace:dir:attribute-def:displayName | UTF8 String | Prof.dr. Mërgim L. Vermeegen | ||
urn:mace:dir:attribute-def:mail | RFC-5322 address | m.l.vermeegen@university.example.org | ||
urn:mace:terena.org:attribute-def:schacHomeOrganization | RFC-1035 domain string | example.nl | ||
urn:mace:terena.org:attribute-def:schacHomeOrganizationType | RFC-2141 URN | urn:mace:terena.org:schac:homeOrganizationType:int:university | ||
Employee/student number | urn:schac:attribute-def:schacPersonalUniqueCode | Schac | RFC-2141 URN | urn:schac:personalUniqueCode:nl:local:example.edu:employeeid:x12-3456 urn:schac:personalUniqueCode:nl:local:example.nl:studentid:s1234567 |
urn:mace:dir:attribute-def:eduPersonAffiliation | eduPerson (1) | Enum type (UTF8 String) | employee, student, faculty, member, affiliate, pre-student | |
Scoped affiliation | urn:mace:dir:attribute-def:eduPersonScopedAffiliation urn:oid:1.3.6.1.4.1.5923.1.1.1.9 | eduPerson (1) | UTF8 String user@domain | student@uniharderwijk.nl |
urn:mace:dir:attribute-def:eduPersonEntitlement | eduPerson (1) | RFC-2141 URN | Wordt gedefineerd per dienst (zie Standardized values for eduPersonEntitlement) | |
urn:mace:dir:attribute-def:eduPersonPrincipalName | eduPerson (1) | UTF8 String | piet.jønsen@example.edu | |
urn:mace:dir:attribute-def:isMemberOf | eduMember | RFC-2141 URN | urn:collab:org:surf.nl | |
urn:mace:dir:attribute-def:uid | UTF8 String | s9603145 | ||
urn:mace:dir:attribute-def:preferredLanguage | List of BCP47 language tags | nl | ||
ORCID | urn:mace:dir:attribute-def:eduPersonORCID urn:oid:1.3.6.1.4.1.5923.1.1.1.16 | eduPerson (1) | URL registered with ORCID.org | http://orcid.org/0000-0002-1825-0097 |
ECK ID | urn:mace:surf.nl:attribute-def:eckid | SURF / Edu-K | URL zoals gedefinieerd door Edu-K | https://ketenid.nl/spv1/eacf3765ad342feb5f65c2bf8194b4ccc3d68cec3c01d3c26063 6747a 2b06d092fcc3a8d655bbdc4 ae7d815ed005cf3a11fe9cab 2365f95da3e9965501f7c98e |
Minimale vereiste aantal attributen voor IdP's die op SURFconext aansluiten
Er is een minimum aantal attributen nodig om een IdP aan te sluiten op SURFconext. Als de attributen urn:mace:dir:attribute-def:uid en urn:mace:terena.org:attribute-def:schacHomeOrganization ontbreken zal een fatale fout onstaan omdat deze nodig zijn om de NameID te genereren. Uw IdP kan niet worden aangesloten op SURFconext zonder deze. Als de attributen urn:mace:mace:dir:dir:attribute-def:displayName en urn:mace:dir:attribute-def:mail niet worden geleverd, wordt een waarschuwing gegeven. Veel diensten zijn hiervan afhankelijk. Bovenstaande attributen zijn het absolute minimum en zullen er waarschijnlijk toe leiden dat veel diensten niet gekoppeld kunnen worden met uw instelling. Lever de attributen aan zoals beschreven op deze pagina of die aangegeven in de configuratiehandleidingen op deze pagina: 'Handleidingen en Richtlijnen'.
Verouderde attributen
SURFconext beschouwt de attributen nlEduPersonOrgUnit, nlEduPersonStudyBranch en nlStudielinkNummer als verouderd. Deze worden niet meer toegepast bij nieuw op te voeren IdP's en SP's in SURFconext. Als je al een IdP of SP bij SURFconext hebt geregistreerd die gebruik maakt van deze attributen kunnen deze tot nader orde gebruikt worden.
Gedetailleerde beschrijvingen van de attributen
ID
Zie de paragraaf Identifiers van een gebruiker.
Surname
urn:mace | urn:mace:dir:attribute-def:sn |
urn:oid | urn:oid:2.5.4.4 |
Multiplicity | single-valued |
Data type | UTF8 string (unbounded) |
Omschrijving | De achternaam van een gebruiker (Inclusief woorden als “van”, “de”, “von” etc.) en wordt gebruikt voor personalisatie; dit kan een combinatie zijn van bestaande attributen. |
Voorbeeld | Vermeegen 孝慈 |
Opmerking |
Given name
urn:mace | urn:mace:dir:attribute-def:givenName |
urn:oid | urn:oid:2.5.4.42 |
Multiplicity | single-valued |
Data type | UTF8 string (unbounded) |
Beschrijving | Voornaam / 'name known by'; combinatie van titel, initialen, en 'name known by' zijn mogelijk. |
Voorbeeld | Jan Klaassen |
Opmerking |
Common name
urn:mace | urn:mace:dir:attribute-def:cn |
urn:oid | urn:oid:2.5.4.3 |
Multiplicity | multi-valued |
Data type | UTF8 string (unbounded) |
Omschrijving | Volledige naam. |
Voorbeeld | Prof.dr. Mërgim Lukáš Vermeegen 加来 千代, PhD. |
Opmerking | Bijvoorbeeld: een gebruikersnaam in een Engelssprekend land bevat een persoonlijke titel (bijvoorbeeld dhr., mw., professor, mijnheer, Lord), een voornaam, 2e (en verdere) naam, achternaam, kwalificatie van de generatie (als die er is, bijvoorbeeld Jr.) en onderscheidingen en prijzen (als die er zijn; bijvoorbeeld een onderscheiding Commander of the Order of the British Empire, CBE). |
Display name
urn:mace | urn:mace:dir:attribute-def:displayName |
urn:oid | urn:oid:2.16.840.1.113730.3.1.241 |
Multiplicity | single-valued |
Data type | UTF8 string (unbounded) |
Omschrijving | Naam zoals weergegeven in applicaties. |
Voorbeeld | Prof.dr. Mërgim Lukáš Vermeegen 加来 千代, PhD. |
Opmerkingen | Mogelijkerwijs kunnen gebruikers zelf invloed hebben op deze waarde. Daarom is deze niet geschikt voor identificatie. |
Email-adres
urn:mace | urn:mace:dir:attribute-def:mail |
urn:oid | urn:oid:0.9.2342.19200300.100.1.3 |
Multiplicity | multi-valued |
Data type | RFC-5322 address (max 256 chars) |
Omschrijving | e-mailadres; syntax in overeenstemming met RFC 5322 |
Voorbeelden | m.l.vermeegen@university.example.org "very.unusual.@.unusual.com"@example.com mlv@[IPv6:2001:db8::1234:4321]; |
Opmerkingen |
|
uid
urn:mace | urn:mace:dir:attribute-def:uid |
urn:oid | urn:oid:0.9.2342.19200300.100.1.1 |
Multiplicity | single-valued (multi-valued in de specificatie, maar in SURFconext is slechts 1 waarde toegestaan) |
Data type | UTF8 String (max 256 chars); gebruik van spaties en @ -characters wordt afgeraden |
Omschrijving | De unieke code voor een persoon, die als inlognaam wordt gebruikt binnen een organisatie. |
Voorbeelden | s9603145 |
Opmerkingen |
|
Home organization
urn:mace | urn:mace:terena.org:attribute-def:schacHomeOrganization |
urn:oid | urn:oid:1.3.6.1.4.1.25178.1.2.9 |
Multiplicity | single-valued |
Data type | RFC-1035 domain string. Dit MOET een secondary-level domein zijn die in beheer is van de instelling. Bij voorkeur wordt de hoofd-domeinnaam van de instelling gebruikt. |
Omschrijving | The user's organization using the organization's domain name; syntax in accordance with RFC 1035. |
Voorbeelden | uniharderwijk.nl |
Opmerkingen |
|
Organization type
urn:mace | urn:mace:terena.org:attribute-def:schacHomeOrganizationType |
urn:oid | urn:oid:1.3.6.1.4.1.25178.1.2.10 |
Multiplicity | single-value |
Data type | RFC-2141 URN (Zie Schac standard) |
Omschrijving | Naam van het type organisatie zoals gedefinieerd op http://www.terena.org/registry/terena.org/schac/homeOrganizationType |
Voorbeelden | urn:mace:terena.org:schac:homeOrganizationType:int:university urn:mace:terena.org:schac:homeOrganizationType:es:opi |
Opmerkingen |
|
Employee-student number
urn:mace | urn:schac:attribute-def:schacPersonalUniqueCode |
urn:oid | urn:oid:1.3.6.1.4.1.25178.1.2.14 |
Multiplicity | multi-value |
Data-type | RFC-2141 URN (zie SURFnet registry) |
Omschrijving | Het interne studentnummer, medewerkernummer of persoonsnummer van de gebruiker. |
Voorbeelden | urn:schac:personalUniqueCode:nl:local:example.edu:employeeid:x12-3456 urn:schac:personalUniqueCode:nl:local:example.nl:studentid:s1234567 |
Opmerkingen |
|
Affiliation
urn:mace | |
urn:oid | |
Multiplicity | multi-valued |
Data type | UTF8 String (only the values enumerated below are allowed) |
Beschrijving | Geeft de relatie aan tussen de gebruiker en zijn instelling. De volgende waarden zijn toegestaan binnen SURFconext:
Gebruik de bovenstaande voorbeelden om vast te stellen welke waarde een gebruiker krijgt. Indien de definities niet toereikend zijn, gebruik gezond verstand. |
Voorbeelden | Zie beschrijving |
Opmerkingen |
|
Scoped Affiliation
urn:mace | urn:mace:dir:attribute-def:eduPersonScopedAffiliation |
urn:oid | urn:oid:1.3.6.1.4.1.1466.115.121.1.15 |
Multiplicity | multi-valued |
Data type | UTF8 String of the form affiliation@domain (zie onder) |
Beschrijving | Beschrijft de relatie tussen de gebruiker en het domein van zijn thuisorganisatie. Het affiliation-gedeelte moet een van de toegestane waarden van het eduPersonAffiliation attribuut zijn (zie direct hierboven). De waarde is de rol van de de gebruiker en de algemene domeinnaam van de instelling. Feitelijk kan eduPersonScopedAffiliation dus gedefinieerd worden als: <eduPersonAffiliation> "@" <schacHomeOrganization>. Dit attribuut is net als eduPersonScopedAffiliation meerwaardig. Het domein-gedeelte moet de schacHomeOrganization van de gebruiker zijn (of een subdomein ervan). |
Voorbeelden | student@uniharderwijk.nl faculty@uniharderwijk.nl |
Opmerkingen |
|
Entitlements
urn:mace | urn:mace:dir:attribute-def:eduPersonEntitlement |
urn:oid | urn:oid:1.3.6.1.4.1.5923.1.1.1.7 |
Multiplicity | multi-value |
Data type | RFC-2141 URN |
Beschrijving | rechten; een URI (URL of URN) die aangeeft welke rechten een gebruiker heeft. |
Voorbeelden |
|
Opmerkingen |
|
Principal name
urn:mace | urn:mace:dir:attribute-def:eduPersonPrincipalName |
urn:oid | urn:oid:1.3.6.1.4.1.5923.1.1.1.6 |
Multiplicity | single-valued |
Data type | UTF8 String |
Beschrijving | Unieke identifier voor een gebruiker |
Voorbeelden | piet.jønsen@example.edu not.a@vålîd.émail.addreß |
Opmerkingen |
|
isMemberOf
urn:mace | urn:mace:dir:attribute-def:isMemberOf |
urn:oid | urn:oid:1.3.6.1.4.1.5923.1.5.1.1 |
Multiplicity | multi-valued |
Data type | RFC-2141 URN |
Beschrijving | Somt de samenwerkende organisaties op waarvan de gebruiker lid is. |
Voorbeeld | urn:collab:org:surf.nl |
Opmerkingen |
|
Preferred Language
urn:mace | urn:mace:dir:attribute-def:preferredLanguage |
urn:oid | urn:oid:2.16.840.1.113730.3.1.39 |
Multiplicity | single-valued |
Data type | RFC2798 BCP47 |
Beschrijving | Een afkorting van 2 letters voor de voorkeurstaal volgens de ISO 639 codetabel; geen subcodes. |
Veerbeelden | nl |
Opmerkingen | Wordt gebruikt om aan te geven aan welke geschreven of gesproken taal de gebruiker de voorkeur geeft. Dit is nuttig voor internationale correspondentie of mens-computer-interactie. Waarden voor dit attribuuttype MOETEN overeenkomen met de definitie van het 'Accept-Language header field' in RFC 2068, met 1 uitzondering: de waarde ':' moet worden weggelaten. |
EduPersonTargetedID
urn:mace | urn:mace:dir:attribute-def:eduPersonTargetedID |
urn:oid | urn:oid:1.3.6.1.4.1.5923.1.1.1.10 |
Multiplicity | single-valued |
Data type | UTF8 string (unbounded) |
Beschrijving | Het attribuut eduPersonTargetedID is een kopie van de Subject -> NameID (maar alleen als het NameID is geconfigureerd als persistent) welke door SURFconext zelf wordt gegenereerd. Als een Identity Provider de eduPersonTargetedID zelf zet, wordt deze altijd overschreven door SURFconext. |
Voorbeeld | bd09168cf0c2e675b2def0ade6f50b7d4bb4aae |
Opmerkingen | Dit attribuut is in het leven geroepen omdat de Subject -> NameID zelf geen onderdeel is van de SAML v2.0-respons en dus niet gebruikt kan worden. Als SURFconext de Subject -> NameID expliciet in het attribuut eduPersonTargetedID plaatst, kun je deze wel gebruiken. |
eduPersonOrcid
urn:mace | urn:mace:dir:attribute-def:eduPersonOrcid |
urn:oid | urn:oid:1.3.6.1.4.1.5923.1.1.1.16 |
Multiplicity | multi-valued (maar zie onder) |
Data type | URL, geregistreerd via ORCID.org |
Beschrijving | Het ORCID is een persistente digitale identifier die de houder onderscheidt van andere onderzoekers. Via integratie in publicatieworkflows leidt dit tot de herkenning van de juiste onderzoeker bij zijn wetenschappelijke activiteiten. Waarden moeten geldige ORCID identifiers zijn in de ORCID-voorkeursrepresentatie als URL, b.v. http://orcid.org/0000-0002-1825-0097 |
Voorbeelden | |
Opmerkingen | Zie voor achtergrondinformatie over ORCID: https://www.surf.nl/nieuws/2016/02/orcid-nu-beschikbaar-voor-europese-instellingen.html Het attribuut is in theorie multi-valued, maar in de praktijk lijkt het logisch niet meer dan één waarde mee te geven. |
ECK ID
urn:mace | urn:mace:surf.nl:attribute-def:eckid |
urn:oid | - |
Multiplicity | single-valued |
Data type | URL zoals gespecificeerd door Edu-K, geheel in onderkast |
Description | Educatieve Content Keten Identifier (ECK ID) is een pseudonieme identificatie voor toegang tot leermaterialen voor primair, secundair en middelbaar beroepsonderwijs. |
Examples | https://ketenid.nl/spv1/eacf3765ad342feb5f65c2bf8194b4ccc3d68cec3c01d3c260636747a2b06d092fcc3a8d655bbdc4ae7d815ed005cf3a11fe9cab2365f95da3e9965501f7c98e |
Notes | Dit attribuut mag alleen gebruikt worden voor “de toegang tot en het gebruik van digitale leermiddelen of het digitaal afnemen van toetsen en examens”. Voor meer informatie zie https://www.eck-id.nl |