在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
开源软件名称:italia/spid-dotnet-sdk开源软件地址:https://github.com/italia/spid-dotnet-sdk开源编程语言:C# 41.5%开源软件介绍:spid-dot-netOriginiQuesto progetto tra origine dal progetto TPCWare SPID, frutto dell'hackaton day che si è tenuto in diverse sedi italiane il 7 e 8 ottobre 2017, realizzato da Nicolò Carandini e Antimo Musone. Maggiori informazioni possono essere trovate nel README del progetto originario. ContenutoIl repository contiene i seguenti progetti:
Libreria di autenticazioneLa libreria implementa tutte le funzionalità relative a SAML 2.0 e al protocollo di comunicazione tra SP e IdP tramite i seguenti servizi: Creazione e configurazione dell'elenco degli IdPLa libreria offre servizi orientati alla creazione dell'elenco degli IdP (Identity Providers) a partire dall'URL del servizio di metadati forniti dall'AgID (Agenzia per l'Italia Digitale) secondo quanto previsto dalle norme tecniche SPID. Tale elenco può essere ampliato e arricchito con ulteriori dettagli dall'applicazione che usa la libreria di autenticazione, tipicamente tramite file di configurazione. Al momento le due applicazioni web dimostrative utilizzano il meccanismo di configurazione per la creazione dell'elenco degli IdP, ma è in corso di sviluppo la funzionalità di lettura dell'elenco IdP dal registro SPID fornito da AgID. Richiesta Authn
Richiesta Logout
HelpersLa libreria contiene inoltre una serie di Helpers, utili alle applicazioni che la utilizzano:
PackagingLa libreria di autenticazione è stata scritta in modo da essere totalmente compatibile con .NET Standard 2.0 e con .NET 4.6.1, quindi è utilizzabile da quasiasi applicazione ASP.NET classic, ASP.NET Core (su Windows, Linux e OSX) e Xamarin (per App Android, iOS e UWP). Per l'uso in produzione, si consiglia di utilizzare la libreria aggiungendo al progetto il pacchetto NuGet Web AppPer quanto riguarda le Web app (ASP.NET e ASP.NET Core 2.0) abbiamo cercato di scrivere un codice il più pulito e commentato possibile (ma si puo sempre migliorare...) in modo da farla diventare una reference app che documenti in modo pratico l'uso della libreria di autenticazione. Per un tour visivo del funzionamento dell'app si rimanda alla documentazione Sviluppi futuri
Build and TestCome prima cosa occorre creare il certificato digitale self-signed, tramite OpenSSL: Una volta installato il tool, aprire da cmd.exe la cartella C:\OpenSSL-Win64\ e lanciare i seguenti comandi per generare il certificato mycerthackdevelopers.pfx:
Ora occorre importare il certificato myspidcertificate.pfx in local machine/My e tramite lo strumento di gestione dei certificati della macchina (START + "Gestisci i certificati computer") esportare il file .CER in formato BASE64, facendo attenzione di non esportare la private key. Se l'applicazione Web da errore "Unable to find private key in the X509Certificate" la causa più probabile è che il certificato non è più valido e deve essere reinstallato con la medesima procedura di cui sopra. Il file così ottenuto contiene la chiave pubblica da utilizzare per la creazione del file XML dei metadati da inviare all'AgID (Agenzia per l'Italia Digitale) secondo le modalità di accreditamento descritte nella pagina Come diventare fornitore di servizi Pubblici o Privati con SPID. Una volta accreditati con AgID, il suddetto file di metadati verrà inviato direttamenta da AgID ai vari IdP e si potrà testare il servizio e mandarlo in produzione. Ad oggi, oltre al servizio locale di test, l'unico servizio esterno di test è fornito da Poste.it ed è a loro che va inviato il suddetto file di metadati per accreditarsi come SP e fare poi le prove di autenticazione e logout. Nota: Poiché la libreria è di tipo .NET Standard 2.0 non è possibile aprire la soluzione con versioni di Visual Studio antecedenti a Visual Studio 2017. |
2022-08-15
2022-08-17
2022-09-23
2022-08-18
2023-10-27
请发表评论