Come testare response SPID

Ciao a tutti,
nel processo di validazione del metadata per SPID siamo arrivati al punto che il nostro metadata.xml ha superato i test di strict ed extra, però la response no. Ora la mia domanda è la seguente come faccio io a verificare e testare la response? Provando a registrare il nostro metadata sul SPID Validator li ho solamente i Check Strict ed Extra, ma non ho nulla per verificare la response. Come e cosa devo fare per poter avere la pagina in cui posso verificare il SAML, la response, verificare gli errori etc?
Vi chiedo se possibile di dettagliarmi il più possibile i passaggi.

Grazie a tutto

Vado un po’ “a memoria”.
Dopo che hai aggiunto i metadati del suo Service Provider sullo SPID Validator ed aver passato tutti i test per i metadati, avvia una procedura di autenticazione dal tuo service provider scegliendo come IdP lo SPID Validator (ciò presuppone che tu abbia precedentemente scaricato i metadati dello SPID Validator come IdP e li abbia “dati in pasto” al tuo Service Provider). Facendo questo, verrai rediretto sulla pagina dello SPID Validator che ti consente di fare tutti i check sulla request che il tuo Service Provider ha inviato e che ti permetterà anche di generare vari tipi di Response, con l’indicazione del risultato atteso per passare i controlli. Scelta la Response da generare, verrai rediretto indietro sul tuo Service Provider che dovrà quindi rispondere secondo quanto atteso.
Questo è utile per fare dei controlli “puntuali” e visivi su quello che succede.

Per automatizzare l’esecuzione di TUTTI i controlli sulla Response (che sono tanti, perché vanno testati tutti i possibili casi di errore…) puoi piuttosto utilizzare lo strumento spid-sp-test.

1 Mi Piace

Ti correggo, non si tratta del Validator, ma dell’Ambiente Demo , come indicato al punto 4 della procedura tecnica.

Sempre lo stesso punto indica la possbilità di installare su un proprio server una copia locale dello SPID Validator con cui eseguire i test.

Confermo la possibilità di utilizzare da linea di comando il tool spid-sp-test

Ciao,
“…avvia una procedura di autenticazione dal tuo service provider scegliendo come IdP lo SPID Validator (ciò presuppone che tu abbia precedentemente scaricato i metadati dello SPID Validator come IdP e li abbia “dati in pasto” al tuo Service Provider)…” ossia apro il mio sito vado su entra con SPID seleziono il mio “Validator” e vengo reindirizzato alla pagina SPID che mi porta alla seguente pagina


se provo ad entrare con SPID atterro alla pagina

se invece provo con un altro bottone che ho aggiunto nel mio tasto Entra con spid che punta a SPID atterro sulla pagina https://demo.spid.gov.it/Start in cui parte l’autenticazione ma poi ricevo questo errore:

PS nel mio sito ho inserito solamente un metadata.xml quello che attualmente, come scritto in precedenza, risulta ok lato check strict ed Extra:

Scrivi la AuthnRequest che mandi a Demo

digita o incolla il codice qui
<saml2p:AuthnRequest ID="_6110b91f-76e1-4b1f-a6f7-9fef5cc250fc"
                     Version="2.0"
                     IssueInstant="2022-11-17T14:20:39Z"
                     Destination=" https://demo.spid.gov.it/samlsso"
                     ForceAuthn="false"
                     AssertionConsumerServiceIndex="0"
                     AttributeConsumingServiceIndex="0"
                     xmlns:saml2p="urn:oasis:names:tc:SAML:2.0:protocol"
                     >
    <Issuer NameQualifier="https://spid.computershare.com"
            Format="urn:oasis:names:tc:SAML:2.0:nameid-format:entity"
            xmlns="urn:oasis:names:tc:SAML:2.0:assertion"
            >https://spid.computershare.com</Issuer>
    <Signature xmlns="http://www.w3.org/2000/09/xmldsig#">
        <SignedInfo>
            <CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" />
            <SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#rsa-sha256" />
            <Reference URI="">
                <Transforms>
                    <Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" />
                    <Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" />
                </Transforms>
                <DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256" />
                <DigestValue>n3a+9cqc5CfjpCo7XqQQGvOs9yU7H+rOwXDH4Kl/b48=</DigestValue>
            </Reference>
        </SignedInfo>
        <SignatureValue>APrJAA2KNZ6I7rnV8yZkcLSRBlGuc5aEESxK5SkgrcRZ0yDjG/LhDGYg6xHc2PQ+Vd2uxSLUtRTMQtRx99wlhsA4lr4hdPFGEMB3tS+wPRSrWxWOkDLL64qRBNdBjXpvbHcBGMuZ0sQKtrwCPGKZL7Hm7EjohyHWmNWq2+7rl9+5n7RCmsYNYnypLquwJGYDLyjSp0ApRIkhbkDkUN8QjzGjUGm0l8C/cMXmC9DfQexYiQd2nIlwQaz8ZaN0QvHfDqqs1081rtZV3IRMPDzmORqAsd4LO/vlYGQvOW2iHNB1XFPDNm4JEK5VYl+WeDfH4fMk0AgZGqqHg7Rb44Y893ExCYuShsFMc7rPMc4ZKfSYQP8sLmF04cO1IbQSnbNpxuLi0N2e2IjEbrU4JswnxoXH+RswxYogXJKMFzo0MOiGY669QrhDsJ8fkVqu961tXy7Pr93ePcf8jvhlsaUIZ4U5hTTB1WlK7a+Ndqw+XXaIrZp9QRlUmDlPWnExi1Wb</SignatureValue>
        <KeyInfo>
            <X509Data>
                <X509Certificate>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</X509Certificate>
            </X509Data>
        </KeyInfo>
    </Signature>
    <saml2p:NameIDPolicy Format="urn:oasis:names:tc:SAML:2.0:nameid-format:transient" />
    <Conditions NotBefore="2022-11-17T14:18:39Z"
                NotOnOrAfter="2022-11-17T14:25:39Z"
                xmlns="urn:oasis:names:tc:SAML:2.0:assertion"
                />
    <saml2p:RequestedAuthnContext Comparison="minimum">
        <AuthnContextClassRef xmlns="urn:oasis:names:tc:SAML:2.0:assertion">https://www.spid.gov.it/SpidL1</AuthnContextClassRef>
    </saml2p:RequestedAuthnContext>
</saml2p:AuthnRequest>

Il primo sito che provi mi sembra non c’entri niente, è il validatore di AgID, ad uso loro.
Il secondo mi sembra più promettente, ma dall’errore che ti dà mi sembra abbastanza evidente che la AuthnRequest non passa i controlli base, probabilmente fallisce già la validazione dello schema. Hai provato in prima istanza a validarla contro gli schemi di SAML?

Prova anche a togliere quello spazio iniziale nell’attributo Destination.

1 Mi Piace

ma porxxxxxxxxxx lo spazio era lo spazio…ora atterro alla pagina seguente:


Ora devo effettuare l’accesso per poter verificare il report con le info sugli eventuali errorri, corretto?
utente e pwd?

Onestamente non ricordo nome utente e password, ma dovrebbero essere gli stessi che hai usato quando hai acceduto al report con gli esiti dei check sui metadati.
Dovrebbe quindi darti il report con gli esiti sulla AuthnRequest e da lì hai la possibilità di fare le prove con le Response.

1 Mi Piace

Usa uno degli Utenti di Test

1 Mi Piace

Ottimo grazie mille a tutti e due… Ora dobbiamo sistemare la pagina di post per vedere i dati etc.

Buongiorno,

a beneficio della lettura e per disambiguare le modalità di utilizzo del tool, riporto anche qui quanto scritto in precedenti thread.

il progetto spid-saml-check, informalmente SPID Validator, può essere eseguito in due modalità:

  • modalità Validator, che permette di controllare direttamente il flusso ed eseguire le verifiche su Metadata, Request e Response;
  • modalità Demo, che simula un IdP presentando una form per l’inserimento delle credenziali;

Esistono le seguenti installazioni di spid-saml-check esposte da AgID:

L’istallazione su https://demo.spid.gov.it espone entrambe le modalità Validator e Demo.

Per utilizzare la modalità Validator, occorre registrare sul proprio SP il metadata da IdP del Validator (modalità Validator) disponibile alla URL: https://demo.spid.gov.it/validator/metadata.xml

Per utilizzare, invece, la modalità Demo, occorre registrare sul proprio SP il metadata da IdP del Validator (modalità Demo) disponibile alla URL https://demo.spid.gov.it/metadata.xml

La modalità Validator permette di controllare la conformità di Metadata, Request e Response.

Se si accede direttamente al Validator tramite la URL: SPID Validator, si troverà abilitata esclusivamente la sezione per la verifica del metadata.

Per abilitare le sezioni per la verifica di Request e Response, occorre inviare una AuthnRequest dal proprio SP all’IdP Validator (modalità Validator), il quale, come già indicato, dovrà essere stato precedentemente configurato sul proprio SP tramite il metadata da IdP (modalità Validator) scaricabile alla URL https://demo.spid.gov.it/validator/metadata.xml.

Cordiali saluti,
Michele D’Amico (@damikael)

1 Mi Piace