Entity Kategorije¶
Napomena:
Ova stranica je namenjena informativnim svrhama i služi za objašnjenje primenjenih Entity kategorija i njihove namene, kao i načina na koji se one primenjuju na entitete u okviru iAMRES Federacije.
Entity kategorije se dodeljuju i Davaocu Identiteta (IdP) i Davaocu Servisa (SP) kroz tagovanje odgovarajućih entiteta u njihovim metapodacima. Na taj način se definiše koje Entity kategorije pojedinačni entitet podržava i omogućava njegovo odgovarajuće uključivanje u iAMRES Federaciju.
Kod Davaoca Identiteta, Entity kategorije se implemetiraju i u okviru fajla attribute-filter.xml. Potrebne Entity kategorije već su obuhvaćene konfiguracionim fajlom koji se automatski ažurira na svakom IdP-u koji je konfigurisan prema uputstvu dostupnom na našoj zvaničnoj wiki stranici. Zbog toga nije potrebno ručno dodavanje ili menjanje ovih kategorija u okviru attribute-filter.xml fajla.
Kod Davaoca Servisa, Entity kategorije se, kao i kod IdP-a, definišu njihovim tagovanjem u metapodacima SP entiteta. Na osnovu tih metapodataka, vaš SP se može odgovarajuće označiti i pridružiti iAMRES Federaciji.
Uvod¶
U federativnom upravljanju identitetima, organizacije međusobno dele informacije o korisnicima kako bi omogućile pristup različitim servisima koristeći jedinstveni identitet. Međutim, jedan od najvećih izazova predstavlja pitanje: Koje atribute korisnika treba proslediti određenom servisu i pod kojim uslovima?
Da bi se ovaj proces pojednostavio, uveden je koncept Entity Kategorija - Entity Categories (EC).
Entity Kategorije predstavljaju skup pravila i oznaka (tagova) kojima se entiteti u Federaciji (Davaoci Identiteta i Davaoci Servisa) grupišu prema zajedničkim karakteristikama, zahtevima ili bezbednosnim politikama.
Šta su Entity Kategorije?¶
Entity Kategorija je standardizovana oznaka koja se dodaje u SAML metapodatke i označava da određeni entitet ispunjava unapred definisane uslove.
Osnovni ciljevi Entity Kategorija su:
- pojednostavljenje razmene atributa;
- unapređenje interoperabilnosti između organizacija;
- povećanje bezbednosti i poverenja;
- smanjenje administrativnog opterećenja;
- standardizacija procesa unutar federacija.
Sa Entity Kategorijama:
- pravila se definišu jednom;
- novi članovi kategorije automatski nasleđuju ista pravila;
- sistem postaje skalabilan i lakši za održavanje.
Ukoliko želite da se detaljnije upoznate sa konceptom Entity Kategorija, njihovim zahtevima, procesom implementacije i najnovijim preporukama možete pronaći više informacija u zvaničnoj REFEDS dokumentaciji. Dokumentacija sadrži detaljne specifikacije za kategorije kao što su Research and Scholarship (R&S), Code of Conduct (CoCo), SIRTFI, Personalized, Pseudonymous i Anonymous Access, kao i dodatne smernice za federacije, Davaoce Identiteta i Davaoce Servisa.
Opis Entity Kategorija¶
REFEDS Research and Scholarship (R&S)¶
REFEDS Research and Scholarship (R&S) je entity kategorija namenjena servisima koji podržavaju potrebe istraživačke i akademske zajednice, kao što su istraživački portali, naučni servisi, platforme za saradnju i infrastrukture koje se koriste u okviru akademskih projekata.
Cilj ove entity kategorije je da omogući jednostavno, pouzdano i skalabilno deljenje minimalnog skupa korisničkih atributa koji su neophodni za pristup ovim servisima, uz poštovanje principa zaštite privatnosti i bezbednosnih najboljih praksi.
Kada servis pripada R&S entity kategoriji, Davaoc Identiteta (IdP) može automatski da oslobodi unapred definisani skup atributa bez potrebe za ručnim podešavanjem pravila za svaki pojedinačni Davaoc Servisa.
Atributi koji se oslobađaju
Tipični atributi koji se prosleđuju servisima u okviru R&S kategorije su:
eduPersonPrincipalName– jedinstveni identifikator korisnika u federaciji.displayName– ime korisnika koje se koristi za prikaz u servisima.givenName– ime korisnika.sn– prezime korisnika.mail– email adresa korisnika.eduPersonScopedAffiliation– informacija o ulozi korisnika u instituciji (npr. student, zaposleni, nastavnik).
Prilikom registracije IdP-a u iAMRES Federaciju identiteta, izvršava se provera atributa koje IdP oslobađa i ako IdP prosleđuje gore pomenute atribute, u metapodatke ovog IdPa dodaje se tag ove entity kategorije.
Sintaksa metapodataka koja se dodaje za ovu entity kategoriju kod Davaoca Identiteta izgleda ovako:
R&S entity kategorija se na Shibboleth IdP-u implementira i kroz attribute-filter.xml fajl. U njemu se definiše pravilo koje omogućava oslobađanje atributa samo servisima (SP-ovima) koji imaju označenu odgovarajuću vrednost entity kategorije.
Pregled opšte konfiguracije filtra:
<!-- REFEDS Research and Scholarship Entity Category -->
<AttributeFilterPolicy id="releaseToRefedsResearchAndScholarship">
<!-- Primena pravila samo na SP-ove koji pripadaju R&S entity kategoriji -->
<PolicyRequirementRule xsi:type="EntityAttributeExactMatch"
attributeName="http://macedir.org/entity-category"
attributeValue="http://refeds.org/category/research-and-scholarship"/>
<!-- Oslobađanje atributa displayName -->
<AttributeRule attributeID="displayName">
<PermitValueRule xsi:type="ANY"/>
</AttributeRule>
<!-- Oslobađanje atributa givenName -->
<AttributeRule attributeID="givenName">
<PermitValueRule xsi:type="ANY"/>
</AttributeRule>
<!-- Oslobađanje atributa sn -->
<AttributeRule attributeID="sn">
<PermitValueRule xsi:type="ANY"/>
</AttributeRule>
<!-- Oslobađanje email adrese -->
<AttributeRule attributeID="mail">
<PermitValueRule xsi:type="ANY"/>
</AttributeRule>
<!-- Oslobađanje korisničkog identifikatora -->
<AttributeRule attributeID="eduPersonPrincipalName">
<PermitValueRule xsi:type="ANY"/>
</AttributeRule>
<!-- Oslobađanje afilijacije korisnika -->
<AttributeRule attributeID="eduPersonScopedAffiliation">
<PermitValueRule xsi:type="OR">
<Rule xsi:type="Value" value="faculty" caseSensitive="false"/>
<Rule xsi:type="Value" value="student" caseSensitive="false"/>
<Rule xsi:type="Value" value="staff" caseSensitive="false"/>
<Rule xsi:type="Value" value="alum" caseSensitive="false"/>
<Rule xsi:type="Value" value="member" caseSensitive="false"/>
<Rule xsi:type="Value" value="affiliate" caseSensitive="false"/>
<Rule xsi:type="Value" value="employee" caseSensitive="false"/>
<Rule xsi:type="Value" value="library-walk-in" caseSensitive="false"/>
</PermitValueRule>
</AttributeRule>
</AttributeFilterPolicy>
Davalac Servisa koji je tagovan ovom entity kategorijom ukazuje da svoje zahteve za atributima ograničava na atribute definisane R&S specifikacijom.
Sintaksa metapodataka ove entity kategorije kod Davaoca Servisa izgleda ovako:
REFEDS CoCo v2 (Code of Conduct)¶
REFEDS Data Protection Code of Conduct v2 (CoCo v2) je entity kategorija namenjena servisima, koji se obavezuju da će koristiti i obrađivati korisničke podatke u skladu sa principima zaštite privatnosti i važećim pravilima o zaštiti podataka.
Za razliku od entity kategorija kao što su R&S, Anonymous, Pseudonymous ili Personalized, CoCo v2 ne definiše konkretan skup atributa koji se automatski oslobađaju, već definiše okvir poverenja između Davaoca Identiteta i Davaoca Servisa.
Cilj ove kategorije je omogućavanje bezbedne razmene atributa uz poštovanje principa:
- minimalnog oslobađanja podataka (data minimisation);
- zaštite privatnosti korisnika;
- transparentne obrade korisničkih atributa;
- kontrole nad zahtevima za identifikacione podatke.
Međutim, svi atributi se ne oslobađaju automatski, već samo:
- ako ih Davalac Servisa eksplicitno zahteva u metapodacima;
- ako su dozvoljeni pravilima definisanim na IdP-u.
CoCo v2 se često koristi zajedno sa pravilima za moderne SAML identifikatore:
samlSubjectID- Predstavlja stabilni identifikator korisnika koji omogućava servisima da prepoznaju korisnika. Koristi se kada servis zahteva identifikaciju korisnika i kada je dozvoljeno korišćenje direktnijeg identifikatora.samlPairwiseID- Predstavlja pseudonimni identifikator. Ista osoba će imati različit identifikator kod različitih servisa, čime se sprečava povezivanje aktivnosti korisnika između više servisa. Koristi se kada je potrebno prepoznati istog korisnika, ali bez otkrivanja njegovog stvarnog identiteta.
Prilikom registracije IdP-a u iAMRES Federaciju identiteta, dodaje se tag ove entity kategorije.
Sintaksa metapodataka koja se dodaje za ovu entity kategoriju kod Davaoca Identiteta izgleda ovako:
<mdattr:EntityAttributes>
<saml:Attribute Name="http://macedir.org/entity-category-support"
NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:uri">
<saml:AttributeValue>
http://www.geant.net/uri/dataprotection-code-of-conduct/v2
</saml:AttributeValue>
</saml:Attribute>
</mdattr:EntityAttributes>
Na Davaocu Identiteta, CoCo v2 pravila se implementiraju i kroz fajl attribute-filter.xml.
Pregled opšte konfiguracije filtra:
<!-- REFEDS Data Protection Code of Conduct v2 -->
<AttributeFilterPolicy id="releaseToCodeOfConduct">
<!-- Primena pravila samo na CoCo v2 servise -->
<PolicyRequirementRule xsi:type="EntityAttributeExactMatch"
attributeName="http://macedir.org/entity-category"
attributeValue="https://refeds.org/category/code-of-conduct/v2"/>
<!--
Atributi se oslobađaju samo ako ih servis
eksplicitno zahteva u metapodacima
-->
<AttributeRule attributeID="mail">
<PermitValueRule xsi:type="AttributeInMetadata"
onlyIfRequired="true"/>
</AttributeRule>
<AttributeRule attributeID="displayName">
<PermitValueRule xsi:type="AttributeInMetadata"
onlyIfRequired="true"/>
</AttributeRule>
<AttributeRule attributeID="givenName">
<PermitValueRule xsi:type="AttributeInMetadata"
onlyIfRequired="true"/>
</AttributeRule>
<AttributeRule attributeID="sn">
<PermitValueRule xsi:type="AttributeInMetadata"
onlyIfRequired="true"/>
</AttributeRule>
<AttributeRule attributeID="schacHomeOrganization">
<PermitValueRule xsi:type="AttributeInMetadata"
onlyIfRequired="true"/>
</AttributeRule>
</AttributeFilterPolicy>
Kada je Service Provider takođe označen sa ovom entity kategorijom, IdP može da primeni unapred definisana pravila za oslobađanje atributa.
Sintaksa metapodataka ove entity kategorije kod Davaoca Servisa izgleda ovako:
Hide from Discovery (HfD)¶
REFEDS Hide from Discovery (HfD) entity kategorija omogućava Davaocima Identiteta (IdP) da budu sakriveni iz javnih lista za izbor organizacije prilikom prijave (Discovery Service / WAYF).
Ova kategorija se koristi u situacijama kada organizacija želi da ograniči vidljivost svog IdP-a, ali ne želi da ga potpuno ukloni iz federacije.
IdP označen kao Hide from Discovery i dalje ostaje funkcionalan i može da prihvati autentikacione zahteve, ali se neće prikazivati korisnicima koji ručno biraju svoju instituciju iz liste dostupnih Davaoca Identiteta.
Napomena: Trenutno u našoj federaciji ne postoji potreba za korišćenjem REFEDS Hide from Discovery (HfD) entity kategorije. Ukoliko se u budućnosti pojavi zahtev da određeni Identity Provider bude dostupan samo ograničenom krugu korisnika ili servisa, bez prikazivanja u Discovery Servisu, ova kategorija može biti primenjena.
HfD se ne konfiguriše kroz attribute-filter.xml. Za razliku od entity kategorija koje kontrolišu oslobađanje atributa, HfD se objavljuje kroz federacione metapodatke (metadata).
SIRTFI v2 (Security Incident Response Trust Framework for Federated Identity)¶
SIRTFI v2 je REFEDS sigurnosni okvir namenjen organizacijama koje učestvuju u federaciji identiteta. Njegova svrha je da omogući organizacijama da pokažu da imaju uspostavljene odgovarajuće procese, procedure i kapacitete za reagovanje na bezbednosne incidente povezane sa federativnim identitetima.
SIRTFI omogućava organizaciji da potvrdi da ima:
- definisane procedure za prijavu, obradu i rešavanje bezbednosnih incidenata;
- određene osobe ili timove odgovorne za reagovanje na bezbednosne incidente;
- mehanizme za saradnju sa drugim učesnicima federacije tokom incidenta;
- mogućnost razmene informacija potrebnih za istraživanje i rešavanje bezbednosnih problema;
- odgovarajuće mere za zaštitu sistema, servisa i korisnika u federativnom okruženju.
Drugim rečima, SIRTFI omogućava da organizacija potvrdi: Imamo definisane procedure i odgovorne osobe koje mogu reagovati kada dođe do bezbednosnog incidenta povezanog sa federativnim identitetima.
Važno je napomenuti da SIRTFI entity kategorija ne određuje niti kontroliše atribute koji se prosleđuju servisima (SP). SIRTFI se odnosi na bezbednosne procese i sposobnost organizacije da odgovori na incidente, a informacija o tome da je organizacija usklađena sa SIRTFI okvirom objavljuje se kroz federacione metapodatke.
Uslovi za usklađenost sa SIRTFI okvirom
Da bi organizacija postala usklađena sa SIRTFI okvirom, potrebno je da najpre sprovede samoprocenu svojih procedura i potvrdi da ispunjava sve zahteve definisane SIRTFI okvirom.
Zahtevi su organizovani u četiri oblasti:
- Operativna bezbednost (Operational Security – OS) – podrazumeva primenu odgovarajućih mera za zaštitu sistema i podataka, kao i upravljanje bezbednosnim rizicima.
- Odgovor na bezbednosne incidente (Incident Response – IR) – podrazumeva postojanje definisanih procedura i odgovornih osoba za prijavu, obradu, koordinaciju i rešavanje bezbednosnih incidenata.
- Praćenje i evidentiranje aktivnosti (Traceability – TR) – omogućava evidentiranje i praćenje relevantnih aktivnosti kako bi se, po potrebi, mogle sprovesti istrage bezbednosnih incidenata.
- Pravila i uslovi korišćenja (User Rules and Conditions – UR) – podrazumevaju definisanje i primenu pravila koja uređuju odgovorno korišćenje sistema i servisa.
Organizacija prolazi kroz sve zahteve definisane SIRTFI okvirom i, ukoliko može da potvrdi da ispunjava sve navedene zahteve, može da se smatra SIRTFI compliant.
Security kontakt u federacionim metapodacima
Pored same SIRTFI oznake, u metadata entiteta potrebno je navesti kontakt osobu ili tim koji je zadužen za reagovanje na bezbednosne incidente (Security kontakt).
Ovaj kontakt omogućava drugim učesnicima federacije da, u slučaju bezbednosnog incidenta koji zahteva saradnju, brzo pronađu odgovarajuću osobu ili tim kome incident treba prijaviti.
Primer Security kontakta u metapodacima:
<ContactPerson xmlns:remd="http://refeds.org/metadata"
contactType="other"
remd:contactType="http://refeds.org/metadata/contactType/security">
<GivenName>Security Response Team</GivenName>
<EmailAddress>mailto:security@xxxxxxxxxxxxxxx</EmailAddress>
</ContactPerson>
Kontakt za bezbednosne incidente je posebno važan u federativnom okruženju jer omogućava drugim organizacijama i učesnicima federacije da direktno stupe u kontakt sa odgovornim timom kada je potrebna reakcija na bezbednosni incident.
SIRTFI oznaka u metapodacima
Nakon što organizacija proceni i potvrdi da ispunjava zahteve SIRTFI okvira, u metadata se dodaje odgovarajuća EntityAttribute oznaka kojom se iskazuje usklađenost sa SIRTFI okvirom.
Primer:
<attr:EntityAttributes>
...
<saml:Attribute NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:uri"
Name="urn:oasis:names:tc:SAML:attribute:assurance-certification">
<saml:AttributeValue>https://refeds.org/sirtfi2
</saml:AttributeValue>
<saml:AttributeValue>https://refeds.org/sirtfi
</saml:AttributeValue>
</saml:Attribute>
...
</attr:EntityAttributes>
Na ovaj način se kroz federacione metapodatke objavljuje informacija da je organizacija deklarisala usklađenost sa SIRTFI okvirom.
Postupak dodavanja SIRTFI oznake u metapodatke Davaoca Identiteta u iAMRES Federaciji:
Pošto iAMRES Federacija Identiteta centralno upravlja federacionim metapodacima, organizacija ne vrši direktno izmene federacionih metapodataka.
Postupak je sledeći:
- Organizacija sprovodi samoprocenu prema SIRTFI v2 zahtevima.
- Organizacija potvrđuje da ispunjava sve zahteve SIRTFI okvira.
- Organizacija definiše odgovarajući Security kontakt – osobu ili tim odgovoran za reagovanje na bezbednosne incidente.
- Organizacija obaveštava operatora iAMRES federacije da je SIRTFI compliant i dostavlja podatke o Security kontaktu.
- Operator federacije vrši potrebne izmene u federacionim metapodacima.
- U metadata entiteta dodaje se Security kontakt, kao i odgovarajuća SIRTFI EntityAttribute oznaka
Pseudonymous Access¶
REFEDS Pseudonymous Authorization entity kategorija namenjena je servisima kojima nije potrebno da poznaju stvarni identitet korisnika, već im je dovoljan stabilan pseudonimni identifikator koji omogućava prepoznavanje istog korisnika kroz različite sesije.
Cilj ove entity kategorije je primena principa minimalnog oslobađanja atributa (data minimisation), odnosno prosleđivanje samo onih informacija koje su neophodne za funkcionisanje servisa i donošenje odluka o autorizaciji.
Za razliku od servisa koji zahtevaju identifikaciju korisnika putem atributa kao što su ime, prezime ili email adresa, servisi u ovoj kategoriji rade sa pseudonimnim identifikatorom i dodatnim atributima koji opisuju ulogu ili pripadnost korisnika.
U okviru Pseudonymous Authorization entity kategorije mogu se osloboditi sledeći atributi:
samlPairwiseID– stabilni pseudonimni identifikator korisnika. Ista vrednost se koristi za isti servis, ali se različiti servisi međusobno ne mogu povezati preko ovog identifikatora.eduPersonScopedAffiliation– informacija o ulozi korisnika u instituciji (npr. student, staff...).schacHomeOrganization– matična organizacija korisnika.eduPersonAssurance– informacije o nivou pouzdanosti i načinu verifikacije identiteta.
Dodatna zaštita privatnosti:
Pseudonymous Authorization kategorija se primenjuje samo na servise koji nisu označeni kao Anonymous entity kategorija. Na ovaj način se sprečava kombinovanje pseudonimnog pristupa sa potpuno anonimnim pristupom i obezbeđuje da servis dobije minimalni skup informacija potreban za autorizaciju korisnika.
Prilikom registracije IdP-a u iAMRES Federaciju identiteta, dodaje se tag ove entity kategorije.
Sintaksa metapodataka koja se dodaje za ovu entity kategoriju kod Davaoca Identiteta izgleda ovako:
<mdattr:EntityAttributes
xmlns:mdattr="urn:oasis:names:tc:SAML:metadata:attribute">
<saml:Attribute
xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion"
NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:uri"
Name="https://macedir.org/entity-category-support">
<saml:AttributeValue>https://refeds.org/category/pseudonymous</saml:Attr
ibuteValue>
</saml:Attribute>
</mdattr:EntityAttributes>
Na Shibboleth Davaocu Identiteta ova entity kategorija se implementira i kroz attribute-filter.xml fajl.
Pravilo definiše da se atributi oslobađaju samo servisima koji:
- pripadaju
REFEDS Pseudonymousentity kategoriji; - nisu istovremeno označeni kao
REFEDS Anonymousentity kategorija.
Pregled opšte konfiguracije filtra:
<!-- REFEDS Pseudonymous Authorization Entity Category -->
<!-- Supports data minimisation and prevents combination with Anonymous category -->
<AttributeFilterPolicy id="releaseToRefedsPseudonymous">
<!-- Primena pravila samo na pseudonymous SP-ove,
koji nisu označeni kao anonymous -->
<PolicyRequirementRule xsi:type="AND">
<Rule xsi:type="EntityAttributeExactMatch"
attributeName="http://macedir.org/entity-category"
attributeValue="https://refeds.org/category/pseudonymous"/>
<Rule xsi:type="NOT">
<Rule xsi:type="EntityAttributeExactMatch"
attributeName="http://macedir.org/entity-category"
attributeValue="https://refeds.org/category/anonymous"/>
</Rule>
</PolicyRequirementRule>
<!-- Stabilni pseudonimni identifikator korisnika -->
<AttributeRule attributeID="samlPairwiseID">
<PermitValueRule xsi:type="ANY"/>
</AttributeRule>
<!-- Uloga/pripadnost korisnika -->
<AttributeRule attributeID="eduPersonScopedAffiliation">
<PermitValueRule xsi:type="ANY"/>
</AttributeRule>
<!-- Matična organizacija korisnika -->
<AttributeRule attributeID="schacHomeOrganization">
<PermitValueRule xsi:type="ANY"/>
</AttributeRule>
<!-- Informacije o nivou pouzdanosti identiteta -->
<AttributeRule attributeID="eduPersonAssurance">
<PermitValueRule xsi:type="ANY"/>
</AttributeRule>
</AttributeFilterPolicy>
Kada je Service Provider takođe označen sa ovom entity kategorijom, IdP može da primeni unapred definisana pravila za oslobađanje atributa.
Sintaksa metapodataka ove entity kategorije kod Davaoca Servisa izgleda ovako:
<mdattr:EntityAttributes
xmlns:mdattr="urn:oasis:names:tc:SAML:metadata:attribute">
<saml:Attribute xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion"
NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:uri"
Name="https://macedir.org/entity-category">
<saml:AttributeValue>https://refeds.org/category/pseudonymous</saml:At
tributeValue>
</saml:Attribute>
</mdattr:EntityAttributes>
Anonymous Access¶
REFEDS Anonymous Authorization entity kategorija namenjena je servisima koji ne zahtevaju identifikaciju korisnika i kojima nije potreban ni pseudonimni identifikator. Kod ove kategorije servis ne može da utvrdi ko je konkretan korisnik niti da ga dugoročno prati kroz različite sesije. Davaoc Identiteta (IdP) prosleđuje samo minimalan skup atributa koji omogućava donošenje odluke o autorizaciji, bez otkrivanja identiteta korisnika.
Cilj ove entity kategorije je maksimalna zaštita privatnosti korisnika kroz primenu principa data minimisation — razmena samo onih informacija koje su neophodne za pristup servisu.
U okviru Anonymous Authorization entity kategorije mogu se osloboditi sledeći atributi:
eduPersonScopedAffiliation– informacija o ulozi korisnika u instituciji (npr. student, staff...).schacHomeOrganization– naziv matične organizacije korisnika.
Ovi atributi omogućavaju servisu da proveri, na primer: - da li korisnik pripada određenoj akademskoj instituciji; - da li ima odgovarajuću ulogu za korišćenje servisa;
bez potrebe da zna identitet korisnika.
Razlika u odnosu na Pseudonymous Authorization
Za razliku od REFEDS Pseudonymous Authorization kategorije, Anonymous Authorization ne prosleđuje stabilni identifikator korisnika (samlPairwiseID).
To znači da servis:
- ne može da poveže više sesija istog korisnika;
- ne može da razlikuje jednog korisnika od drugog;
- dobija samo informacije potrebne za autorizaciju.
Prilikom registracije IdP-a u iAMRES Federaciju Identiteta, dodaje se tag ove entity kategorije.
Sintaksa metapodataka koja se dodaje za ovu entity kategoriju kod Davaoca Identiteta izgleda ovako:
<mdattr:EntityAttributes
xmlns:mdattr="urn:oasis:names:tc:SAML:metadata:attribute">
<saml:Attribute
xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion"
NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:uri"
Name="https://macedir.org/entity-category-support">
<saml:AttributeValue>https://refeds.org/category/anonymous</saml:Attribu
teValue>
</saml:Attribute>
</mdattr:EntityAttributes>
Na Shibboleth Davaocu Identiteta ova entity kategorija se implementira kroz attribute-filter.xml fajl.
Pregled opšte konfiguracije filtra:
<!-- REFEDS Anonymous Authorization Entity Category -->
<AttributeFilterPolicy id="releaseToRefedsAnonymous">
<!-- Primena pravila samo na Anonymous SP-ove -->
<PolicyRequirementRule xsi:type="EntityAttributeExactMatch"
attributeName="http://macedir.org/entity-category"
attributeValue="https://refeds.org/category/anonymous"/>
<!-- Informacija o ulozi/pripadnosti korisnika -->
<AttributeRule attributeID="eduPersonScopedAffiliation"
permitAny="true"/>
<!-- Matična organizacija korisnika -->
<AttributeRule attributeID="schacHomeOrganization"
permitAny="true"/>
</AttributeFilterPolicy>
Kada je Service Provider takođe označen sa ovom entity kategorijom, IdP može da primeni unapred definisana pravila za oslobađanje atributa.
Sintaksa metapodataka ove entity kategorije kod Davaoca Servisa izgleda ovako:
<mdattr:EntityAttributes
xmlns:mdattr="urn:oasis:names:tc:SAML:metadata:attribute">
<saml:Attribute xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion"
NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:uri"
Name="https://macedir.org/entity-category">
<saml:AttributeValue>https://refeds.org/category/anonymous</saml:Attri
buteValue>
</saml:Attribute>
</mdattr:EntityAttributes>
REFEDS Personalized Access¶
REFEDS Personalized Access entity kategorija namenjena je servisima kojima je za pružanje funkcionalnosti potrebno da znaju stvarni identitet korisnika.
Za razliku od Anonymous Authorization kategorije, gde servis ne dobija nikakve identifikacione podatke, i Pseudonymous Authorization kategorije, gde servis koristi samo stabilni pseudonimni identifikator, Personalized Access omogućava oslobađanje atributa koji omogućavaju identifikaciju korisnika i/ili pružanje personalizovanih funkcionalnosti.
Ova kategorija se koristi kada servis mora da poveže korisnički nalog sa konkretnom osobom, na primer za:
- personalizovane korisničke profile;
- upravljanje korisničkim sadržajem;
- dodelu prava pristupa na osnovu identiteta;
- evidenciju aktivnosti korisnika;
- servise koji zahtevaju komunikaciju sa konkretnom osobom.
Cilj REFEDS Personalized Access kategorije je omogućavanje pristupa servisima kojima je potreban identitet korisnika, uz istovremeno poštovanje principa:
- data minimisation – oslobađanje samo atributa koji su potrebni servisu;
- privacy by design – zaštita privatnosti kroz unapred definisana pravila;
- kontrolisano deljenje identiteta – atributi se prosleđuju samo pouzdanim servisima koji pripadaju odgovarajućoj entity kategoriji.
U okviru Personalized Access entity kategorije mogu se osloboditi sledeći atributi:
samlSubjectID– stabilni identifikator korisnika koji omogućava servisu da poveže korisnički nalog sa istom osobom.displayName– ime koje se prikazuje korisniku u servisu.givenName– ime korisnika.sn– prezime korisnika.mail– email adresa korisnika.schacHomeOrganization– matična organizacija korisnika.eduPersonAssurance– informacije o nivou pouzdanosti identiteta.eduPersonScopedAffiliation– uloga korisnika u instituciji (npr. student,staff).
Sumirani prikaz REFEDS entity kategorija koje određuju različite nivoe dostupnosti korisničkih informacija:
| Entity kategorija | Informacije koje servis dobija | Primer upotrebe |
|---|---|---|
| Anonymous Authorization | Samo informacije potrebne za autorizaciju, bez identiteta | Servisima koji ne moraju da znaju ko je korisnik |
| Pseudonymous Authorization | Stabilni pseudonimni identifikator bez otkrivanja identiteta | Servisi koji moraju razlikovati korisnike, ali ne znaju njihov identitet |
| Personalized Access | Identitet korisnika i osnovni atributi | Servisi sa korisničkim profilima i personalizacijom |
Prilikom registracije IdP-a u iAMRES Federaciju identiteta, izvršava se provera atributa koje IdP oslobađa i ako IdP prosleđuje gore pomenute atribute, u metapodatke ovog IdPa dodaje se tag ove entity kategorije.
Sintaksa metapodataka koja se dodaje za ovu entity kategoriju kod Davaoca Identiteta izgleda ovako:
<mdattr:EntityAttributes
xmlns:mdattr="urn:oasis:names:tc:SAML:metadata:attribute">
<saml:Attribute
xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion"
NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:uri"
Name="https://macedir.org/entity-category-support">
<saml:AttributeValue>https://refeds.org/category/personalized</saml:Attr
ibuteValue>
</saml:Attribute>
</mdattr:EntityAttributes>
Na Shibboleth Davaocu Identiteta, Personalized Access entity kategorija se definiše kroz attribute-filter.xml fajl.
Pravilo se primenjuje samo na Service Provider-e koji:
- pripadaju
REFEDS Personalized Accessentity kategoriji; - nisu istovremeno označeni kao
AnonymousiliPseudonymouskategorija.
Pregled opšte konfiguracije filtra:
<!-- REFEDS Personalized Access Entity Category -->
<!-- Supports data minimisation and prevents combination with Anonymous and Pseudonymous categories -->
<AttributeFilterPolicy id="releaseToRefedsPersonalized">
<!-- Primena pravila samo na Personalized SP-ove,
koji nisu Anonymous ili Pseudonymous -->
<PolicyRequirementRule xsi:type="AND">
<Rule xsi:type="EntityAttributeExactMatch"
attributeName="http://macedir.org/entity-category"
attributeValue="https://refeds.org/category/personalized"/>
<Rule xsi:type="NOT">
<Rule xsi:type="OR">
<Rule xsi:type="EntityAttributeExactMatch"
attributeName="http://macedir.org/entity-category"
attributeValue="https://refeds.org/category/anonymous"/>
<Rule xsi:type="EntityAttributeExactMatch"
attributeName="http://macedir.org/entity-category"
attributeValue="https://refeds.org/category/pseudonymous"/>
</Rule>
</Rule>
</PolicyRequirementRule>
<!-- Stabilni identifikator korisnika -->
<AttributeRule attributeID="samlSubjectID">
<PermitValueRule xsi:type="ANY"/>
</AttributeRule>
<!-- Ime i prezime korisnika -->
<AttributeRule attributeID="displayName">
<PermitValueRule xsi:type="ANY"/>
</AttributeRule>
<AttributeRule attributeID="givenName">
<PermitValueRule xsi:type="ANY"/>
</AttributeRule>
<AttributeRule attributeID="sn">
<PermitValueRule xsi:type="ANY"/>
</AttributeRule>
<!-- Email adresa -->
<AttributeRule attributeID="mail">
<PermitValueRule xsi:type="ANY"/>
</AttributeRule>
<!-- Informacije o pouzdanosti identiteta -->
<AttributeRule attributeID="eduPersonAssurance">
<PermitValueRule xsi:type="ANY"/>
</AttributeRule>
<!-- Matična organizacija -->
<AttributeRule attributeID="schacHomeOrganization">
<PermitValueRule xsi:type="ANY"/>
</AttributeRule>
<!-- Uloga korisnika -->
<AttributeRule attributeID="eduPersonScopedAffiliation">
<PermitValueRule xsi:type="OR">
<Rule xsi:type="Value" value="faculty" caseSensitive="false"/>
<Rule xsi:type="Value" value="student" caseSensitive="false"/>
<Rule xsi:type="Value" value="staff" caseSensitive="false"/>
<Rule xsi:type="Value" value="alum" caseSensitive="false"/>
<Rule xsi:type="Value" value="member" caseSensitive="false"/>
<Rule xsi:type="Value" value="affiliate" caseSensitive="false"/>
<Rule xsi:type="Value" value="employee" caseSensitive="false"/>
<Rule xsi:type="Value" value="library-walk-in" caseSensitive="false"/>
</PermitValueRule>
</AttributeRule>
</AttributeFilterPolicy>
Kada je Service Provider takođe označen sa ovom entity kategorijom, IdP može da primeni unapred definisana pravila za oslobađanje atributa.
Sintaksa metapodataka ove entity kategorije kod Davaoca Servisa izgleda ovako:
<mdattr:EntityAttributes
xmlns:mdattr="urn:oasis:names:tc:SAML:metadata:attribute">
<saml:Attribute xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion"
NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:uri"
Name="https://macedir.org/entity-category">
<saml:AttributeValue>https://refeds.org/category/personalized</saml:At
tributeValue>
</saml:Attribute>
</mdattr:EntityAttributes>
REFEDS Assurance Framework (RAF)¶
REFEDS Assurance Framework (RAF) entity kategorija definiše način na koji Identity Provider (IdP) može da prenese informacije o nivou pouzdanosti identiteta korisnika.
U federativnom okruženju Davalac Servisa (SP) često ne zna kako je neki korisnik registrovan, kako je proverena njegova identifikacija, niti koliko su pouzdani atributi koje dobija od IdP-a.
Na primer, servis može da pita:
- Da li je ovaj korisnički identifikator jedinstven?
- Da li znamo da nalog zaista pripada toj osobi?
- Kada su poslednji put provereni atributi korisnika?
- Da li možemo da verujemo informaciji da je korisnik zaposlen u određenoj instituciji?
RAF omogućava da IdP prenese upravo takve informacije kroz standardizovane assurance vrednosti, koji se salju u okviru eduPersonAssurance atributa.
RAF deli assurance na nekoliko nezavisnih komponenti:
- Jedinstvenost identifikatora
Ova komponenta odgovara na pitanje: Da li je identifikator koji Identity Provider dodeljuje korisniku jedinstven i da li će zauvek ostati vezan za istu osobu?
Jedan od osnovnih zahteva RAF-a jeste da se isti identifikator ne dodeli drugom korisniku nakon što prvobitni korisnik prestane da ga koristi. Na taj način Service Provider može pouzdano da poveže identifikator sa istom osobom tokom celog njegovog životnog ciklusa.
Primer: Institucija koristi identifikator marko.markovic za jednog korisnika. Nakon što Marko napusti instituciju, taj identifikator ne bi trebalo da bude dodeljen novom korisniku. Ukoliko bi se isti identifikator ponovo iskoristio za drugu osobu, servis bi mogao pogrešno da zaključi da se radi o istom korisniku.
REFEDS Assurance Framework omogućava Service Provider-ima da znaju da li Identity Provider garantuje jedinstvenost i trajnost identifikatora koje izdaje.
- Pouzdanost identiteta
Identity Assurance opisuje nivo poverenja da digitalni identitet zaista pripada osobi koja ga koristi. Drugim rečima, odgovara na pitanje: Koliko možemo biti sigurni da je korisnik zaista osoba za koju se predstavlja?
Nivo poverenja zavisi od načina na koji je identitet korisnika utvrđen prilikom kreiranja naloga, kao i od procedura koje institucija primenjuje za upravljanje korisničkim identitetima i akreditivima.
Radi lakšeg razumevanja, mogu se razlikovati sledeći primeri nivoa pouzdanosti:
-
Niži nivo poverenja – Korisnik samostalno kreira nalog, pri čemu se identitet potvrđuje samo osnovnim mehanizmima, kao što je potvrda email adrese. U ovom slučaju postoji ograničeno poverenje da nalog zaista pripada konkretnoj osobi.
-
Srednji nivo poverenja – Institucija proverava identitet korisnika kroz svoje interne procedure pre izdavanja naloga. Na primer, nalog zaposlenog kreira se na osnovu podataka iz kadrovske službe ili računskog centra, dok se studentski nalozi izdaju na osnovu zvanične studentske evidencije.
-
Viši nivo poverenja – Organizacija primenjuje stroge procedure identifikacije i upravljanja korisničkim nalozima. To može uključivati fizičku proveru identiteta, proveru zvaničnih identifikacionih dokumenata ili druge formalne procedure koje pružaju visok stepen sigurnosti da nalog pripada odgovarajućoj osobi.
Na osnovu ovih informacija Service Provider može da proceni koliko može da veruje identitetu korisnika i da, u zavisnosti od nivoa pouzdanosti, odobri ili ograniči pristup određenim resursima.