Integrazione FIDO U2F con WordPress

Oggi parliamo di U2F (Universal Second Factor), una tecnologia sponsorizzata dalla FIDO Alliance.

Esistono due implementazioni di questa tecnologia per WordPress, entrambe sono pacchettizzate in comodi plugin da aggiungere al vostro blog.

Il primo rilasciato direttamente da Yubico necessita dell'utilizzo di composer per risolvere un po' di dipendenze. In entrambi i casi è consigliabile (per il secondo plugin è un requisito) usare una versione di PHP pari o superiore alla 5.5.

Per l'installazione basta eseguire il seguente comando nella cartella wp-content/plugins/

git clone https://github.com/Yubico/wordpress-u2f

L'unico valore da impostare è l'AppID, si tratta semplicemente del nostro dominio preceduto da http:// o https://.

Il secondo plugin invece è scritto da una terza parte. Molto valido. Ne caso non avessimo una chiave U2F ci permetterà di autentificarsi tramite l'utilizzo di un token inviato alla casella mail.

Al momento in cui scrivo è presente un problema, ho dovuto fare un bel po' di debug per scovare l'inghippo, in quanto i messaggi di errore non sono proprio così chiari. Una volta scaricato il plugin nella cartella dei plugin di WordPress bisognerà modificare un file. Attenzione che il progetto include moduli da altri repository. Nel caso si utilizzasse git sarà necessario usare l'opzione --recursive oppure dopo aver clonato il repo sarà necessario eseguire: git submodules init e git submodules update.

git clone --recursive https://github.com/shield-9/u2f-login/

Modifichiamo ora il file u2f-api.js ed apportiamo questa modifica alla riga 22:

u2f.EXTENSION_ID = 'pfboblefjcgdjicmnffhdgionmgcdmne';

Salviamo, e ora possiamo attivare il plugin.