Differenze tra le versioni di "KnowledgeBase"
m (Malavolti@garr.it ha spostato la pagina IDEM:KnowledgeBase a KnowledgeBase: Rimozione NS "IDEM:") |
|||
Riga 1: | Riga 1: | ||
Questa pagina raccoglie diverse informazioni e casi presentati a IDEM e loro risoluzioni | Questa pagina raccoglie diverse informazioni e casi presentati a IDEM e loro risoluzioni | ||
− | == CASO 1 - Autenticazione Multivalore == | + | ==CASO 1 - Autenticazione Multivalore== |
− | === Problema === | + | ===Problema=== |
Si vuole permettere ai propri utenti di autenticarsi al proprio IdP Shibboleth inserendo come username il valore di uno dei seguenti campi LDAP: uid, mail. | Si vuole permettere ai propri utenti di autenticarsi al proprio IdP Shibboleth inserendo come username il valore di uno dei seguenti campi LDAP: uid, mail. | ||
Esempio: | Esempio: | ||
− | * username: '''nome.cognome''' | + | *username: '''nome.cognome''' |
− | * username: '''nome.cognome@example.org''' | + | *username: '''nome.cognome@example.org''' |
− | === Soluzione === | + | ===Soluzione=== |
Modificare opportunamente i seguenti valori di <code>ldap.properties</code>: | Modificare opportunamente i seguenti valori di <code>ldap.properties</code>: | ||
Prima: | Prima: | ||
− | * <code>idp.authn.LDAP.userFilter = (uid={user})</code> | + | |
− | * <code>idp.attribute.resolver.LDAP.searchFilter = (uid=$resolutionContext.principal)</code> | + | *<code>idp.authn.LDAP.userFilter = (uid={user})</code> |
+ | *<code>idp.attribute.resolver.LDAP.searchFilter = (uid=$resolutionContext.principal)</code> | ||
Dopo: | Dopo: | ||
− | * <code>idp.authn.LDAP.userFilter = (|(uid={user})(mail={user}))</code> | + | |
− | * <code>idp.attribute.resolver.LDAP.searchFilter = (|(uid=$resolutionContext.principal)(mail=$resolutionContext.principal))</code> | + | *<code>idp.authn.LDAP.userFilter = (|(uid={user})(mail={user}))</code> |
+ | *<code>idp.attribute.resolver.LDAP.searchFilter = (|(uid=$resolutionContext.principal)(mail=$resolutionContext.principal))</code> | ||
Una volta eseguita la modifica riavviare il Servlet Container (Jetty o Tomcat) per applicare il cambiamento. | Una volta eseguita la modifica riavviare il Servlet Container (Jetty o Tomcat) per applicare il cambiamento. | ||
+ | |||
+ | == CASO 2 - Restringere l'accesso a determinate Location su uno Shibboleth SP == | ||
+ | |||
+ | === '''Problema''' === | ||
+ | Si vuole concedere l'accesso solamente a determinate istituzioni a specifiche <code>Location</code> della propria risorsa federata. | ||
+ | |||
+ | Si deve installare e configurare un Discovery Service aggiuntivo che poi sarà utilizzato solamente per determinate <code>Location</code> | ||
+ | |||
+ | Esempio: | ||
+ | |||
+ | - <code><nowiki>https://sp.example.org/secure-all</nowiki></code> (usa l'Embedded Discovery Service di Shibboleth per tutti gli istituti) | ||
+ | |||
+ | - <code><nowiki>https://sp.example.org/secure-limited</nowiki></code> (usa un WAYF o Discovery Service Centralizzato per gli istituti ammessi) | ||
+ | |||
+ | === Soluzione === | ||
+ | DOC: https://shibboleth.atlassian.net/wiki/spaces/SP3/pages/2065334723/ContentSettings<syntaxhighlight lang="apacheconf"> | ||
+ | <Location /secure-mfa> | ||
+ | ShibRequestSetting discoveryURL https://wayf.idem-test.garr.it/WAYF | ||
+ | Authtype shibboleth | ||
+ | ShibRequireSession On | ||
+ | require valid-user | ||
+ | </Location> | ||
+ | </syntaxhighlight> |
Versione delle 15:25, 12 mar 2024
Questa pagina raccoglie diverse informazioni e casi presentati a IDEM e loro risoluzioni
Indice
CASO 1 - Autenticazione Multivalore
Problema
Si vuole permettere ai propri utenti di autenticarsi al proprio IdP Shibboleth inserendo come username il valore di uno dei seguenti campi LDAP: uid, mail.
Esempio:
- username: nome.cognome
- username: nome.cognome@example.org
Soluzione
Modificare opportunamente i seguenti valori di ldap.properties
:
Prima:
idp.authn.LDAP.userFilter = (uid={user})
idp.attribute.resolver.LDAP.searchFilter = (uid=$resolutionContext.principal)
Dopo:
idp.authn.LDAP.userFilter = (|(uid={user})(mail={user}))
idp.attribute.resolver.LDAP.searchFilter = (|(uid=$resolutionContext.principal)(mail=$resolutionContext.principal))
Una volta eseguita la modifica riavviare il Servlet Container (Jetty o Tomcat) per applicare il cambiamento.
CASO 2 - Restringere l'accesso a determinate Location su uno Shibboleth SP
Problema
Si vuole concedere l'accesso solamente a determinate istituzioni a specifiche Location
della propria risorsa federata.
Si deve installare e configurare un Discovery Service aggiuntivo che poi sarà utilizzato solamente per determinate Location
Esempio:
- https://sp.example.org/secure-all
(usa l'Embedded Discovery Service di Shibboleth per tutti gli istituti)
- https://sp.example.org/secure-limited
(usa un WAYF o Discovery Service Centralizzato per gli istituti ammessi)
Soluzione
DOC: https://shibboleth.atlassian.net/wiki/spaces/SP3/pages/2065334723/ContentSettings
<Location /secure-mfa>
ShibRequestSetting discoveryURL https://wayf.idem-test.garr.it/WAYF
Authtype shibboleth
ShibRequireSession On
require valid-user
</Location>