Integrazione SPID e strumenti di SSO

Ciao,
vorrei un suggerimento da parte della community relativamente agli strumenti di SSO usati per integrare SPID nelle vostre applicazioni.

La mia amministrazione ha un discreto numero di applicazioni custom dedicate alle persone fisiche - purtroppo anche non cittadini italiani - per cui la società di consulenza in convenzione Consip che ha seguito l’installazione dello strato SPID ci ha installato OpenAM v13.5, configurando un realm federato tra SPID e una DC locale su LDAP. L’utente può scegliere di autenticarsi via SPID o via autenticazione LDAP integrata.

La mia perplessità deriva dalla scelta del software OpenAM, perché sostanzialmente non ha nessun tipo di community dietro - anzi - è diventato closed source da diversi anni. I consulenti hanno anche dovuto scrivere del codice ad hoc per supportare le AuthnRequest specifiche di SPID - quindi la customizzazione è pesante, non si tratta di sola configurazioni. Infine il supporto per le applicazioni non-Java (ne abbiamo parecchie anche vecchie, da PHP a C#) è generalmente scarso.

Ho dedicato un po’ di tempo a sperimentare altri sistemi, ma nessuno di questi sembra supportare le estensioni richieste da SPID (sto provando con il testenv2):

  • LemonLdap: introduce attributi non supportati dal sistema e non ha molti dei parametri necessari per configurare le request SAML;
  • KeyCloak: non supporta le identità transient;
  • Gluu: basato su Shibboleth per la parte SAML, duplica le utenze LDAP su un suo LDAP riservato, cosa francamente non gradevole;
  • Shibboleth: non ha una UI per la gestione del logon/registrazione/cambio mail/cambio password, andrebbe scritta da zero (spero vivamente di sbagliarmi, ma non sono riuscito a trovare nulla!).

Riassumendo… siccome credo che sia piuttosto trasversale l’esigenza di avere “credenziali esterne” oltre al sistema SPID, è possibile che ogni amministrazione si sia reinventata la sua ruota? Ed è possibile che non ci siano soluzioni meno raffazzonate?

Ogni suggerimento è il benvenuto!
Grazie a tutti e buon weekend!

Ciao Luca.
Su OpenAM hai ragione, pur io ho provato ad utilizzarlo e poi ho abbandonato l’idea.

Qualche tempo addietro ho implementato una un SP SPID (su Liferay) utilizzando OpenSAML e non ho incontrato particolari problemi.

Recentemente in una delle più grosse Banca d’Italia è stata implementa una soluzione SPID federeata utilizzando il prodotto però commerciale di Oracle, IAM/OAM.

Ciao,
Antonio