Skip to content
This repository has been archived by the owner on Feb 8, 2025. It is now read-only.

Ambiente di test SPID con caricamento Certificato X509 da file #10

Open
sviluppohermes opened this issue Feb 26, 2018 · 4 comments
Open

Comments

@sviluppohermes
Copy link

per far funzionare il login SPID in locale, avendo noi l'esigenza di caricare il certificato da file, è stato necessario apportare le seguenti modifiche al codice nel file X509Helper.cs
ovvero è stata Creata una nuova funzione: GetCertificateFromFile(string path)

il codice è il seguente:

//Create new X509 store called teststore from the local certificate store.
X509Certificate2 certificate = new X509Certificate2();
//Create certificates from certificate files.
//You must put in a valid path to three certificates in the following constructors.
X509KeyStorageFlags flags = X509KeyStorageFlags.Exportable;
string path = ""C:/sviluppo/spid/spid-dotnet-sdk-master/Italia.Spid.AspNetClassic.WebApp/App_Data/myspidcertificate.pfx";
X509Certificate2 certificate1 = new X509Certificate2(path, "password", flags);
return certificate1;

la password deve essere quella con cui abbiamo creato il certificato da riga di comando attraverso le istruzioni openssl:

  1. openssl genrsa -out rootCA.key 1024
  2. openssl req -new -x509 -days 3650 -key rootCA.key -out rootCA.crt
  3. openssl pkcs12 -export -out mycertificate.pfx -inkey rootCA.key -in rootCA.crt

tuttavia per far funzionare la chiamata è stato necessario disabilitare il check
"Enable Signature Validation in Authentication Requests and Logout Requests" nella configurazione SAML del service provider.

@ncarandini
Copy link
Collaborator

ncarandini commented Feb 27, 2018

Grazie per la segnalazione, faccio delle prove e aggiorno poi qui. In generale credo non sia la soluzione giusta, perché disabilitando la signature validation si perde il requisito minimo di sicurezza e chiunque potrebbe inviare la richiesta a nome di altro. Se la signature funziona ovviamente non è necessario disabilitare il controllo lato Service Provider.
Vi consiglio comunque di utilizzare il server di test di Poste.it per essere poi certi che la vostra Web App funzioni con i service provider di produzione.

@sviluppohermes
Copy link
Author

Scusa, abbiamo ripreso lo sviluppo di SPID. Ci sono novità per la signature? volevo chiederti anche come utilizzare il server di test di poste. Grazie

@ncarandini
Copy link
Collaborator

Per utilizzare il server di test di poste.it devi inviare il file con i metadati del tuo servizio al responsabile di poste.it, di modo che le chiamate dal tuo servizio vengano accettate. Lunedì ti aggiungo le informazioni necessarie.

@sviluppohermes
Copy link
Author

ok grazie. Attendo ;)

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants