Validazione Response

Buongiorno Michele, anch’io riscontro lo stesso problema segnalato da @Simone_Scala. Ho seguito le indicazioni in merito al Debugging “State Information Lost” errors ma non ho risolto nulla. Successivamente ho scelto come metodo di storage delle sessione la modalità “sql”, configurando la connessione con un database disponibile. La libreria genera due tabelle, inserisce i dei record e quindi sono certo che la connessione funziona. Purtroppo il problema persiste, ho controllato il file di log generato da simplesaml, e mi trovo i vari step:

Saved state: ‘_cc7994e8c2bbd73419cc4f76729a971df81e9f160f’
Loading state: ‘_cc7994e8c2bbd73419cc4f76729a971df81e9f160f’
Exception: State not found for id _cc7994e8c2bbd73419cc4f76729a971df81e9f160f

Nel caso in esame, id sessione="_cc7994e8c2bbd73419cc4f76729a971df81e9f160f"

P.S: uso la seguente versione del validator: https://www.spid-validator.it/

Da cosa può dipendere?
Grazie per la disponibilità.
Alessandro

Buongiorno @alepap,
che versione di spid-php stai utilizzando?

Buongiorno Michele,
“version”: “3.7”
Se può esserle utile per identificare la versione su cui sto lavorando, segnalo che ho avuto problemi anche con le datee. L’eccezione sollevata era:
Invalid SAML2 timestamp passed to xsDateTimeToTimestamp: 2021-05-28T10:03:08+02:00
L’ho risolta modificando il codice php che si trova nel percorso ‘…vendor/simplesamlphp/saml2/src/SAML2/Utils.php:699’, anche se questa operazione non rappresenta di certo una Best Practice
Grazie
Alessandro

Consiglio di aggiornare all’ultima release:

Fammi sapere se il problema viene ancora riscontrato.
Grazie

Buongiorno @damikael,
ho installato la libreria aggiornata ma riscontro ancora diversi problemi.
La prima differenza riguarda il recupero dei metadati; in questo caso, per visualizzare il file xml che trovo all’url … /myservice/module.php/saml/sp/metadata.php/service, mi richiede la password scelta durante lo script d’installazione. Questo aspetto credo che crei dei problemi anche in fase di validazione dei metadati. Infatti, quando vado a fare le verifiche ricevo un alert “Please download metadata first”; se inserisco l’url dei metadati nell’area “Download” si genera un popup con errore “HTTP request sent, awaiting response… 302 Moved Temporarily Location:”.

Per quanto riguarda la fase di “Check Response” l’errore è riportato nello screen seguente.

Inoltre vengono generate una serie di eccezioni.

1-Exception: Invalid SAML2 timestamp passed to xsDateTimeToTimestamp: 2021-06-03T12:40:58+02:00 (risolvo se modifico il file nella libreria oppure se cambio il formato delle date nei vari campi come IssueInstant, NotOnOrAfter, AuthnIstant…)

2-Exception: Missing Conditions on Assertion
al file …setup/simplesamlphp/saml2/src/SAML2/Response.php:86 (disattivo temporaneamente i controlli presenti nel file Response.php)

3-Exception: State not found for id… che è l’errore commentato nel post precedente…

GRAZIE ancora per la disponibilità.
Alessandro

Nelle ultime versioni l’endpoint per il download del metadata non è più protetto da password e sono state inserite ulteriori configurazioni per SimpleSAMLphp che risolvono il problema relativo all’errore “state not found”.

Buona sera,
sto usando https://www.spid-validator.it/. Nessun problema con Metadata SP e Request: tutto positivo.
Response- Check responsive problemi .

  1. Response corretta a DX leggo Descrizione e risultato atteso
    Response corretta. Risultato atteso: Ok
    Clicco su Invia response al Service Provider. Raggiungo il sito, ma leggo
    Errore SAML nella risposta del gestore identità SPID
    Response - Formato IssueInstant non corretto
    Ho provato con metadata già validati: Spid funzionante.
    Purtroppo, però la risposta è esattamente uguale
    Errore SAML nella risposta del gestore identità SPID
    Response - Formato IssueInstant non corretto
    Tutte le richieste di validazione inoltrate a settembre hanno avuto esito positivo, quanto richiesto ad ottobre NO. Eppure siti uguali, metadata con stessa struttura, … e tutti i metadata, già validati o no in Response segnalano per 01. Response corretta lo stesso problema. Non capisco. Cosa sbaglio? Potete aiutarmi a capire?
  1. l’IssueInstant non ha nulla a che vedere con il metadata. E’ un elemento presente nell’AuthnRequest e nella Response/assertion.

  2. Il formato dell’IssueInstant deve essere quello indicato nelle regole tecniche

  3. L’orario deve essere espresso in UTC

Grazie per la risposta. Noi infatti abbiamo indicato
setAttribute(‘IssueInstant’, gmdate(“Y-m-d\TH:i:s\Z”));

Ora se in spid validator dove IssueInstant cambio 2021-10-06T15:26:04+02:00 in 2021-10-06T13:26:04Z e così anche in NotOnOrAfter
Ho esito positivo. Davvero non capisco.

Buonasera @Nadia_Caprotti ,
ti consiglio di verificare con gli ambienti demo e validator pubblici ufficiali, rispettivamente:

https://demo.spid.gov.it
il cui metadata è scaricabile da
https://demo.spid.gov.it/metadata.xml

e

https://demo.spid.gov.it/validator
il cui metadata è scaricabile da
https://demo.spid.gov.it/validator/metadata.xml

Michele D’Amico (damikael)

Ringrazio per la risposta.
Il metadata è la prima cosa che abbiamo aggiornato.
Abbiamo testato con
https://demo.spid.gov.it che però non controlla Response
ma anche con
www.spid-validator.it più articolato.
Tutto è verde eccetto 4 voci in Response.
in Response 01… vedo un problema legato al formato data. “IssueInstant”
Noi abbiamo formato UTC come richiesto da specifiche AgID, ma il validatore legge altro, tanto che se intervengo e correggo nella colonna di dx di https://www.spid-validator.it/ con Z la risposta è OK.
Quello che non mi spiego è che le domande di validazione delle scuole con CMS Drupal PASW sino a circa 10 gg fa sono state tutte validate e ora no, nonostante non siano state apportate modifiche al modulo MicrospidPASW. Le scuole con SPID non sono poche, lo SPID funziona e viene usato. Il modulo Drupal vjene sempre regolarmente aggiornato alle richieste AgID.
Ma… Noi abbiamo ricontrollato e validato e rivalidato, ma…
Davvero non capisco. Come uscirne? Suggerimenti sono più che ben accetti. Grazie tantissimo

Il servizio esposto su https://www.spid-validator.it non è ufficiale e potrebbe essere affetto da problemi derivanti da timezone non configurata correttamente, come rilevato qui:
Servizio SPID Validator disponibile pubblicamente su spid-validator.it · Issue #129 · italia/spid-saml-check · GitHub
Pertanto, consiglio di utilizzare SPID Demo in modalità Validator (che presenta l’interfaccia di validazione Metadata, Request e Response), configurando il relativo metadata disponibile su https://demo.spid.gov.it/validator/metadata.xml.

Michele D’Amico (damikael)

Grazie tantissimo per l’aiuto.
Ora effettivamente, grazie ai suggerimenti, i risultati sono tutti positivi, quindi domani dico alle scuole di inviare nuova richiesta di validazione del metadata.

Grazie ai suggerimenti ricevuti da Michele D’Amico le scuole con CMS Drupal che hanno chiesto validazione del metadata hanno ricevuto conferma positiva e lo SPID è operante.
Purtroppo in questi giorni una scuola mi segnala problemi.
La scuola ha cambiato il dominio da .it a .edu.it quindi ha inviato a spid.tech@agid.gov.it richiesta di validazione del nuovo metadata.
Il diniego precisa L’EntityID è l’attributo che identifica univocamente il Service Provider, quindi è necessario che sia sempre lo stesso in ogni aggiornamento dello stesso metadata.
*A seguito segnalazione la scuola provvede e nel metadata per entityID compare quanto richiesto.
La scuola testa il metadata con Demo SPID Validator e verificato l’esito positivo di:

  • Metadata Service Provider / Check Strict
  • Metadata Service Provider / Check Extra
  • Request / Check Strict
  • Request / Check Extra
  • Response / Test
    invia nuova richiesta di validazione, ma in risposta riceve:
    I casi di test della Response in cui l’utente dovrebbe accedere vanno in KO. Vi ricordiamo che il certificato del Validator è stato rinnovato e qualora non l’aveste già fatto, vi consigliamo di scaricare il nuovo metadata di SPID Validator.
    Ma, quando è stato cambiato il metadata di SPID validator? Recentemente? Dopo il 7 ottobre 2021?
    Non riesco a capire perché, nel frattempo, altre scuole hanno ottenuto la validazione del metadata.
    Comunque ho verificato personalmente il tutto con SPID validator e per
  • Metadata Service Provider / Check Strict
  • Metadata Service Provider / Check Extra
  • Request / Check Strict
  • Request / Check Extra
  • Response / Test
    ho testato tutti i punti presenti – uno per uno- e sempre con esito positivo.
    La scuola invia mail a [SPID.Tech #XXXX] mettendo in allegato i report ottenuti da SPID validator e in risposta riceve
    In data odierna è stato effettuato un check per il vostro Ente.
    Riscontriamo ancora problemi all’accesso per l’utente con c.f TINIT-GDASDV00A01H501J
    Di seguito riportiamo l’errore riscontrato:

Errore SAML nella risposta del gestore identità
SPID
Firma digitale non valida.
Le domande sono:
** Il metadata di SPID validator quando è stato cambiato? Recentemente? Dopo il 7 ottobre 2021?*
** E’ cambiata la procedura di verifica?*
** Forse la* scuola, oltre all’ entityID precedente, doveva mantenere anche il certificato precedente?

Il certificato incluso nel metadata è stato generato il 28 Settembre 2021. Presumo il metadata sia stato cambiato in quel periodo, ma non so il giorno esatto.

SI, è appunto il metadata che stiamo usando, con cui abbiamo testato.
Non mi spiego perchè le stesse risposte positive ottenute con SPID validator per gli altri siti siano state confermate da spid.tech@agid.gov.it e, per questa scuola no.
In pratica è questo metadata https://demo.spid.gov.it/validator/metadata.xml
Tutti i suggerimenti sono ben accetti e ringrazio