Differenze tra le versioni di "VerificareRilascioAttributiAACLI"
(5 versioni intermedie di uno stesso utente non sono mostrate) | |||
Riga 1: | Riga 1: | ||
Shibboleth Identity Provider (IdP) include uno strumento incredibilmente utile e potente per determinare, senza eseguire una sequenza di autenticazione effettiva, quali attributi verranno rilasciati per un determinato utente (''principal'') e fornitore di servizi (''service provider - sp''). | Shibboleth Identity Provider (IdP) include uno strumento incredibilmente utile e potente per determinare, senza eseguire una sequenza di autenticazione effettiva, quali attributi verranno rilasciati per un determinato utente (''principal'') e fornitore di servizi (''service provider - sp''). | ||
− | Tale strumento ha il nome di Attribute Authority Command Line Interface ( AACLI ) . | + | Tale strumento ha il nome di '''Attribute Authority Command Line Interface''' ( '''AACLI''' ) . |
Si può richiamare lo strumento AACLI eseguendo uno script nel terminale, ad esempio <code>{idp.home}/bin/aacli.sh</code>(o <code>{idp.home}/bin/aacli.bat</code>per installazioni Windows): | Si può richiamare lo strumento AACLI eseguendo uno script nel terminale, ad esempio <code>{idp.home}/bin/aacli.sh</code>(o <code>{idp.home}/bin/aacli.bat</code>per installazioni Windows): | ||
− | <code>[user @ /opt/shibboleth-idp/]$ .bin/aacli.sh -n <user-id> -r <entityID-ufficiale-SP></code> | + | <code>[user @ /opt/shibboleth-idp/]$ ./bin/aacli.sh -n <user-id> -r <entityID-ufficiale-SP></code> |
Affinché il comando produca un risultato sensato è necessario almeno indicare: | Affinché il comando produca un risultato sensato è necessario almeno indicare: | ||
− | *<code><user-id></code> deve essere | + | *<code><user-id></code> - deve essere un'identità esistente |
− | *<code><entityID-ufficiale-SP></code> deve essere l'entityID di un Service Provider i cui metadata siano stati configurati nel file <code>metadata-provider.xml</code> | + | *<code><entityID-ufficiale-SP></code> - deve essere l'entityID di un Service Provider esistente i cui metadata siano stati configurati nel file <code>metadata-provider.xml</code> |
Per conoscere l'entityID di uno specifico Service Provider utilizzare lo strumento [https://registry.idem.garr.it/rr3/providers/sp_list/showlist IDEM Registry] (è necessario fare login con il proprio IdP) o il [https://technical.edugain.org/entities database] di eduGAIN. | Per conoscere l'entityID di uno specifico Service Provider utilizzare lo strumento [https://registry.idem.garr.it/rr3/providers/sp_list/showlist IDEM Registry] (è necessario fare login con il proprio IdP) o il [https://technical.edugain.org/entities database] di eduGAIN. | ||
Riga 36: | Riga 36: | ||
| colspan="1" rowspan="1" | --saml2 | | colspan="1" rowspan="1" | --saml2 | ||
| colspan="1" rowspan="1" |Value is ignored, if present causes the output to be encoded into a SAML 2.0 assertion | | colspan="1" rowspan="1" |Value is ignored, if present causes the output to be encoded into a SAML 2.0 assertion | ||
+ | |- | ||
+ | | --unfiltered | ||
+ | |(only from 5.1) Value is ignored, if present causes the non-SAML output to include all attributes, not just filtered results | ||
|} | |} | ||
− | <br /> | + | Per formattare l'output è consigliabile installare [https://stedolan.github.io/jq/ jq] e seguire quanto indicato qui sotto: |
+ | |||
+ | <code>... | jq 'walk( if type == "array" then sort else . end )'</code> | ||
+ | |||
+ | Esempio: | ||
+ | |||
+ | <code>./bin/aacli.sh -n <existing-username> -r <nowiki>https://sp.aai-test.garr.it/shibboleth</nowiki> | jq 'walk( if type == "array" then sort else . end )'<br /></code> |
Versione attuale delle 13:09, 16 apr 2024
Shibboleth Identity Provider (IdP) include uno strumento incredibilmente utile e potente per determinare, senza eseguire una sequenza di autenticazione effettiva, quali attributi verranno rilasciati per un determinato utente (principal) e fornitore di servizi (service provider - sp).
Tale strumento ha il nome di Attribute Authority Command Line Interface ( AACLI ) .
Si può richiamare lo strumento AACLI eseguendo uno script nel terminale, ad esempio {idp.home}/bin/aacli.sh
(o {idp.home}/bin/aacli.bat
per installazioni Windows):
[user @ /opt/shibboleth-idp/]$ ./bin/aacli.sh -n <user-id> -r <entityID-ufficiale-SP>
Affinché il comando produca un risultato sensato è necessario almeno indicare:
<user-id>
- deve essere un'identità esistente<entityID-ufficiale-SP>
- deve essere l'entityID di un Service Provider esistente i cui metadata siano stati configurati nel filemetadata-provider.xml
Per conoscere l'entityID di uno specifico Service Provider utilizzare lo strumento IDEM Registry (è necessario fare login con il proprio IdP) o il database di eduGAIN.
All'interno della Federazione IDEM-test è presente il seguente Service Provider di test: https://sp.aai-test.garr.it/shibboleth
All'interno della Federazione IDEM è presente il seguente Service Provider di test: https://sp-demo.idem.garr.it/shibboleth
Command Line | Description |
---|---|
--acsIndex, -i | Identifies the index of an <md:AttributeConsumingService> element in the SP's metadata, which allows certain uncommonly used filtering rules to be run
|
--requester, -r | Required, identifies the relying party (SP) to simulate a resolution for |
--principal, -n | Required, names the subject/user to simulate a resolution for |
--saml1 | Value is ignored, if present causes the output to be encoded into a SAML 1.1 assertion |
--saml2 | Value is ignored, if present causes the output to be encoded into a SAML 2.0 assertion |
--unfiltered | (only from 5.1) Value is ignored, if present causes the non-SAML output to include all attributes, not just filtered results |
Per formattare l'output è consigliabile installare jq e seguire quanto indicato qui sotto:
... | jq 'walk( if type == "array" then sort else . end )'
Esempio:
./bin/aacli.sh -n <existing-username> -r https://sp.aai-test.garr.it/shibboleth | jq 'walk( if type == "array" then sort else . end )'