How many passwords must a man write down?
“Centralized Multiple Re-Authenticator”, ma cosa significa?
Internet è satura di autenticatori dell’identità digitale: server SMTP, POP3, LDAP, e tanti altri.
Anche su uno stesso server diverse applicazioni per siti affini spesso richiedono autenticazioni distinte, ad esempio per il forum e per il ticket system.
Chimera permette di utilizzare per l’autenticazione le identità digitali già esistenti, senza dover necessariamente definire un nuovo repository di utenti e password.
Si definiscono diversi domìni di autenticazione accettati (ad esempio
“gmail”, “MobileMe”), si specifica il metodo con cui verranno autenticati
(ad esempio POP3/POP3S
, o SMTP/SMTPS
) e da quel momento si può
utilizzare Chimera perché provveda ad una autenticazione centralizzata.
Chimera è un modulo Perl (CMRA.pm
) accompagnato da un server LDAP opzionale
(scritto in pure Perl); non un prodotto finito ed autonomo, ma un utile servizio, una base
su cui realizzare il proprio sistema di autenticazione e gestione permessi centralizzato.
Chimera attualmente può autenticare gli utenti tramite SMTP
, SMTPS
,
POP3
, POP3S
, confronto con un file .INI
locale,
LDAP
(semplice bind) o LDAPS
, file .htpasswd
di Apache,
tabella MySQL
(anche crittata md5_hex
, ad esempio per un Forum phpBB
già esistente).
Di semplice implementazione l’estensione a diversi tipi che possono essere necessari: verso gli utenti di un database, verso una tabella di un database diverso da MySQL, verso SSH, telnet ecc.
Per effettuare una autenticazione tramite Chimera ci si può avvvalere del
metodo Perl CMRA::login()
una volta incluso il modulo CMRA, o si
può utilizzare il server LDAP che accompagna Chimera.
Estensioni di autenticazione sono semplicissime da realizzare (in POP3, HTTP o quant’altro) con un minuscolo script Perl.
Chimera è anche un utile complemento allo sviluppo applicativo: sia Bastet che Booking Manager si avvalgono di Chimera per non reinventare una efficiente procedura di autenticazione.
È bene sottolineare che il processo di autenticazione prevede la sola e
semplice verifica dell’identità digitale dell’utente.
Diritti, gruppi e quant’altro sono e rimangono di competenza applicativa.
Sono tanti i sistemi che effettuano il single sign-on, ma tutti presentano un unico, forte e sostanziale limite: la base di utenti deve essere una ed unica, spesso definiti nello stesso strumento che effettua il sign-on.
Chimera è la base necessaria per qualunque sistema di Single Sign-On: se si vuole accedere tramite un ID univoco, è necessario che questo ID sia verificabile presso sorgenti esterne ed eterogenee, altrimenti tutto quel che avremo ottenuto sarà solo un nuovo ultetiore ID per ogni utente.
Chimera è un modulo Perl (CMRA.pm
) che si avvale di diversi
moduli CPAN esistenti: Config::INI::Reader
, Config::INI::Writer
,
Net::LDAP
, Mail::POP3Client
, Net::SMTP, Net::SMTP::SSL
,
Apache::Htpasswd
, DBI
e DBD::mysql
.
Tutti questi metodi e protocolli cuciti insieme formano il nostro animale
mitologico, assemblato con parti eterogenee.