Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Attribute SessionIndex generated incorrectly for SPIDL2 and SPIDL3 AuthnRequests #32

Closed
Tracked by #57
AntonioGiovanniSchiavone opened this issue Jul 16, 2019 · 3 comments

Comments

@AntonioGiovanniSchiavone
Copy link
Contributor

According to SPID Technical Rules, attribute SessionIndex of AuthStatement element must be generated only for AuthnRequest requiring SPIDL1 context.

it is erroneously always generated

@mauromol
Copy link

mauromol commented May 5, 2021

I also noticed this problem.

@robertociuccigiuliani
Copy link

Hello , I also have the same problem, is there a fix soon?
Great job

@carlobonamico
Copy link

Anche in una validazione recente (Maggio 2021) il validator ha riportato come fallito il test di invio di SPIDL2 a fronte di una richiesta SPIDL1, ma perche' l'applicazione (correttamente?) rifiuta la richiesta per la presenza del SessionIndex.

La specifica https://docs.italia.it/italia/spid/spid-regole-tecniche/it/stabile/single-sign-on.html ​riporta:

Nel caso di asserzioni emesse a seguito di richieste di autenticazione per il livello SPID 1 l’elemento  deve avere l’attributo SessionIndex specificante l’indice della sessione di autenticazione instaurata per l’utente presso il gestore dell’identità; tale elemento non dovrà essere presente nel caso di asserzioni emesse a seguito di richieste di autenticazione per i livelli SPID 2 e SPID 3.

Gli step necessari per riprodurre il problema sono:

  1. configurare i metadati del validator nell' applicazione
  2. inviare una richiesta di autenticaione SPIDL1 al validator indicando che la modalità di comparison sia "minimum"
        <AuthnContextClassRef xmlns="urn:oasis:names:tc:SAML:2.0:assertion">
            https://www.spid.gov.it/SpidL1
        </AuthnContextClassRef>
    </saml2p:RequestedAuthnContext>
  1. scegliere la Response 95 o 96

Nella GUI del Validator si vede che il campo sessionIndex è valorizzato

image

e viene passato nella Response

        <saml:AuthnStatement AuthnInstant="2021-05-31T08:50:16Z" SessionIndex="_45ba6169-6fe9-4a4d-84b6-a8a201eeacb6">
            <saml:AuthnContext>
                <saml:AuthnContextClassRef>
                    https://www.spid.gov.it/SpidL2
                </saml:AuthnContextClassRef>
            </saml:AuthnContext>
        </saml:AuthnStatement>

Se a questo punto l'applicativo implementa il controllo sulla presenza/assenza del SessionIndex come da specifica, l'autenticazione nei casi 95 e 96 fallisce dove invece il test prevede che vada a buon fine.

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

No branches or pull requests

4 participants