madbob / laravel-spid-cie-oidc
Italian SPID/CIE over OIDC authentication for Laravel
Fund package maintenance!
Other
Requires
- ext-gmp: *
- ext-mbstring: *
- ext-openssl: *
- guzzlehttp/guzzle: ^7.0
- web-token/jwt-core: ^2.2.11
- web-token/jwt-encryption: ^2.2.11
- web-token/jwt-encryption-algorithm-aescbc: ^2.2.11
- web-token/jwt-encryption-algorithm-aesgcm: ^2.2.11
- web-token/jwt-encryption-algorithm-aesgcmkw: ^2.2.11
- web-token/jwt-encryption-algorithm-aeskw: ^2.2.11
- web-token/jwt-encryption-algorithm-pbes2: ^2.2.11
- web-token/jwt-encryption-algorithm-rsa: ^2.2.11
- web-token/jwt-key-mgmt: ^2.2.11
- web-token/jwt-signature: ^2.2.11
- web-token/jwt-signature-algorithm-ecdsa: ^2.2.11
- web-token/jwt-signature-algorithm-hmac: ^2.2.11
- web-token/jwt-signature-algorithm-rsa: ^2.2.11
This package is auto-updated.
Last update: 2024-09-05 15:12:31 UTC
README
Questo pacchetto semplifica l'autenticazione SPID/CIE su protocollo OIDC per le applicazioni Laravel.
ATTENZIONE! L'AUTENTICAZIONE SPID NON È ANCORA STATA IMPLEMENTATA!
Per supporto e consulenza, manda una mail a info@madbob.org
Installazione
# Installa il pacchetto
composer require madbob/laravel-spid-cie-oidc
# Inizializza il file di configurazione in config/spid-cie-oidc.php
# È raccomandato revisionare e correggere i parametri della configurazione prima
# di eseguire il comando di generazione dei certificati, in particolare la
# sezione "organization"
php artisan vendor:publish --provider="MadBob\SCOL\SCOLServiceProvider" --tag=config
# Genera i certificati
php artisan scol:make-certificates
Un passaggio importante del setup iniziale è la predisposizione delle proprie callback di autenticazione: è necessario predisporre una propria classe che implementi l'interfaccia MadBob\SCOL\Interfaces\UserLogin
e specificarne il path nella configurazione (in spid-cie-oidc.operations.login
). Nel file src/Helpers/DefaultLogin.php
se ne trova un esempio con i relativi dettagli. Eventualmente si può fare altrettanto per gestire il logout, aggiungendo una propria classe che implementi l'interfaccia MadBob\SCOL\Interfaces\UserLogout
.
Nel proprio pannello di login, si può usare il seguente codice per ottenere il link che attiva la procedura di autenticazione:
$buttons = new \MadBob\SCOL\Helpers\Buttons();
$cie_link = $buttons->buttonCie();
echo '<a href="' . $cie_link . '">Entra con CIE</a>';
Note
I files che si trovano nella cartella deps
sono stati copiati interamente da questo repository, che a sua volta è un fork - riveduto e corretto - di quest'altro repository. Molti dei files qui presenti non sono utilizzati da questo modulo, ma si è preferito conservare l'intera cartella ed utilizzare direttamente quel codice senza modifiche per semplificare eventuali aggiornamenti futuri.
Tutti i files generati da questo modulo (certificati, databases...) sono conservati nella cartella storage/oidc
, che deve dunque essere scrivibile dal web server (come del resto tutta la cartella storage
).
Licenza
laravel-spid-cie-oidc è distribuito in licenza Apache 2.
Copyright holders:
- Roberto Guido @madbob info@madbob.org
- Glauco Rampogna @rglauco
- Michele D'Amico @damikael michele.damico@linfaservice.it