Osobné certifikáty TCS
Názov služby | TCS - Trusted Certificate Service |
---|---|
Poskytovateľ | GÉANT / Harica |
entityID | https://www.harica.gr/simplesamlphp/module.php/saml/sp/metadata.php/pki-grnet-sp |
Opis | Poskytovanie používateľských certifikátov pre podpisovanie mailov alebo autentifikáciu vo webových službách |
Požadované atribúty | mail, displayName, cn, givenName, sn, eduPersonPrincipalName, schacHomeOrganization, eduPersonEntitlement |
Poznámky a detaily konfigurácie IdP Shibboleth týkajúce sa využívania GÉANT služby “Trusted Certificates Service” (TCS).
entityID
SAML služba, ktorej dodávateľom v kontexte TCS je od mája 2025 spoločnosť Harica, používa nasledovné globálne unikátne identitifikátory pre produkčnú, prípravnú a vývojársku inštanciu (v uvedenom poradí):
https://www.harica.gr/simplesamlphp/module.php/saml/sp/metadata.php/pki-grnet-sp
https://cm-stg.harica.gr/simplesamlphp/module.php/saml/sp/metadata.php/harica-cm-stg-sp
https://cm-dev.harica.gr/saml/module.php/saml/sp/metadata.php/harica-cm-dev-sp
SAML služba je registrovaná v prostredí federácie GRNET, z ktorej je publikovaná ďalej prostredníctvom interfederácie eduGAIN. To znamená, že pre prístup k SAML službe musí člen lokálnej federacie identít jej prostredíctvom zároveň participovať aj v interfederácii eduGAIN.
Atribúty
Pri žiadaní o osobný ceritifikát potrebuje služba nasledovnú množinu atribútov:
email adresa v rámci organizácie | |
displayName | meno |
givenName | krstné meno, alternatívna náhrada za displayName |
sn | priezvisko, alternatívna náhrada za displayName |
eduPersonPrincipalName | (viď nižšie) |
schacHomeOrganization | (viď nižšie) |
eduPersonEntitlement | (viď nižšie) |
Samoobslužný portál služby je dostupný prostredníctvom URL https://cm.harica.gr/
eduPersonPrincipalName
Služba TCS špecificky pre svoje potreby sprísňuje definíciu eduPersonPrincipalName (ePPN) a v rámci používania služby v zásade nedovoľuje opätovné pridelenie existujúcej hodnoty atribútu ePPN inej osobe. Opätovné prideľovanie ePPN inej osobe býva všeobecne príkladom zlej praxe ale podľa špecifikácie eduPerson nie je vylučené.
Obsah atribútu ePPN sa obvykle vytvára s pomocou lokálneho UserID, t.j. používateľského mena, ktoré slúži pri prihlasovaní a prístupe k službám. V prípade, že opätovné použitie UserID medzi osobami nie je v rámci organizácie vylúčené, nemalo by UserID služiť na generovanie obsahu atribútu eduPersonPrincipalName. Kedže TCS službe je informáciu potrebné doručiť prostredníctvom uvoľnenia hodnoty atribútu eduPersonPrincicalName, IdP musí (aspoň v prípade služby TCS) pri jeho tvorbe vychádzať z iného zdroja.
Samozrejme, nie je vhodné odchýliť sa od sémantiky štandardizovaných a globálne používaných atribútov s cieľom sledovať vlastné potreby, ako k tomu došlo v prípade služby TCS a atribútu zo schémy eduPerson. Z dôvodov kompatibility so zavedenými službami sa tento atribút zatiaľ stále využíva.
eduPersonEntitlement
Prístup k službe TCS pre potreby vydávania klientskych IGTF certifikátov môže používateľ získať len v prípade že atribút eduPersonEntitlement nadobúda hodnotu:
urn:mace:terena.org:tcs:personal-user
Poskytovateľ identity tým o.i. deklaruje, že pri overovaní totožnosti osoby používateľa, odovzdávaní prihlasovacích údajov, atď. postupuje v súlade s pravidlami, ktoré sa pri pristúpení k službe zaviazal dodržovať.
schacHomeOrganization
Informácie o spôsobe tvorby atribútu schacHomeOrganization sú tu.
Uvoľňovanie atribútov
Konfigurácia uvoľňovania atribútov je súčaťou nastavení v súbore /opt/shibboleth-idp/conf/attribute-filter.xml
:
<!-- Release to TCS portal --> <AttributeFilterPolicy id="TCSportal"> <PolicyRequirementRule xsi:type="OR"> <Rule xsi:type="Requester" value="https://www.harica.gr/simplesamlphp/module.php/saml/sp/metadata.php/pki-grnet-sp" /> <Rule xsi:type="Requester" value="https://cm-stg.harica.gr/simplesamlphp/module.php/saml/sp/metadata.php/harica-cm-stg-sp" /> <Rule xsi:type="Requester" value="https://cm-dev.harica.gr/saml/module.php/saml/sp/metadata.php/harica-cm-dev-sp" /> </PolicyRequirementRule> <AttributeRule attributeID="eduPersonPrincipalName" permitAny="true" /> <AttributeRule attributeID="displayName" permitAny="true" /> <AttributeRule attributeID="givenName" permitAny="true" /> <AttributeRule attributeID="sn" permitAny="true" /> <AttributeRule attributeID="mail" permitAny="true" /> <AttributeRule attributeID="schacHomeOrganization" permitAny="true" /> <AttributeRule attributeID="eduPersonEntitlement"> <PermitValueRule xsi:type="Value" value="urn:mace:terena.org:tcs:personal-user" /> </AttributeRule> </AttributeFilterPolicy>
Správnosť konfigurácie uvoľnovania atribútov je následne možné skontrolovať na testovacej stránke určenej pre jednotlivé inštancie služby, t.j. produkčnú, prípravnú a vývojársku inštanciu (v uvedenom poradí):
https://cm.harica.gr/loginsaml/test.php
https://cm-stg.harica.gr/loginsaml/test.php
https://cm-dev.harica.gr/loginsaml/test.php