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

Aggiunta funzionalità per generazione metadata firmato #8

Closed
PiemP opened this issue Sep 7, 2022 · 2 comments · Fixed by #9
Closed

Aggiunta funzionalità per generazione metadata firmato #8

PiemP opened this issue Sep 7, 2022 · 2 comments · Fixed by #9
Assignees
Labels
enhancement New feature or request good first issue Good for newcomers

Comments

@PiemP
Copy link
Contributor

PiemP commented Sep 7, 2022

Buonasera @danielegiallonardo,

sono un fan del lavoro che hai svolto sulla libreria per consentire un integrazione facile dell'autenticazione SPID per il linguaggio .NET. In quella libreria hai implementato un endpoint dove viene generato automaticamente il metadata sulla base della configurazione del Service Provider e sulla base della configurazione dell'applicativo.

Se non ho capito male, per CIE non sussiste l'obbligo di esporre il metadata ma mi domandavo se potevo creare un PR per modificare il codice del middleware per la generazione del metadata presente sulla libreria https://github.com/italia/spid-aspnetcore e integrarlo in questa repository di modo da rendere disponibile la possibilità di generare un metadata firmato in "automatico".

Siccome sei l'autore di questo codice e di quello relativo a spid-aspnetcore volevo un tuo parere per capire se aveva senso un PR di questo tipo.

Grazie.

@danielegiallonardo
Copy link
Collaborator

Salve, tutte le PR sono assolutamente benvenute!!!
E' vero che non è obbligatorio mostrare il metadata ai fini della federazione, ma è anche vero che può tornare utile per la generazione e la firma del metadata stesso. A tal scopo sarebbe il caso di validare, tramite action, l'implementazione usando i profili cie-sp-public e cie-sp-private di spid-sp-test, come fatto nelle action del repository di spid.
Puoi collegare la PR a questa issue, che lascio aperta per tracking, integrazioni e suggerimenti.
Grazie

@danielegiallonardo danielegiallonardo added enhancement New feature or request good first issue Good for newcomers labels Sep 7, 2022
@PiemP
Copy link
Contributor Author

PiemP commented Sep 12, 2022

Buongiorno a tutti,

sto avendo qualche problema con spid-sp-test. Ho avviato le verifiche sul metadata generato ma mi da questo errore:

ERROR:spid_sp_test.metadata:Test https://host.docker.internal:5001/metadata-cie/metadata.xml with saml-schema-metadata-sp-cie.xsd: failed validating <Element '{urn:oasis:names:tc:SAML:2.0:metadata}Extensions' at 0x7f7ae29af630> with XsdGroup(model='sequence', occurs=[1, 1]):

Reason: Unexpected child with tag 'cie:NACE2Code' at position 4. Tag 'cie:Municipality' expected.

Schema:

  <complexType xmlns="http://www.w3.org/2001/XMLSchema" name="ContactPersonSPExtensionType">
      <sequence>
          <choice>
              <group ref="cie:PublicGroup" maxOccurs="1" />
              <group ref="cie:PrivateGroup" maxOccurs="1" />
          </choice>
          <element ref="cie:Municipality" minOccurs="1" maxOccurs="1" />
          <element ref="cie:Province" minOccurs="0" maxOccurs="1" />
          <element ref="cie:Country" minOccurs="0" maxOccurs="1" />
          <any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded" />
      </sequence>
  </complexType>

Instance:

  <md:Extensions xmlns:cie="https://www.cartaidentita.interno.gov.it/saml-extensions" xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata" xmlns:p7="http://www.w3.org/2001/XMLSchema-instance"><cie:Public p7:type="q1:string" /><cie:IPACode>codiceIPA_SP</cie:IPACode><cie:IPACategory>categoriaIPA_SP</cie:IPACategory><cie:NACE2Code>CODICE_ATECO</cie:NACE2Code><cie:Municipality>CODICE_ISTAT_SEDE</cie:Municipality><cie:Country>IT</cie:Country></md:Extensions>

Path: /md:EntityDescriptor/md:ContactPerson[1]/md:Extensions

ERROR:spid_sp_test.metadata:Test https://host.docker.internal:5001/metadata-cie/metadata.xml with saml-schema-metadata-sp-cie.xsd

Di per se non è complicato comprendere la segnalazione di errore ma se guardo alle classi che xsd ha generato non ho la possibilità di implementare l'ordine degli elementi che la verifica mi richiede: e sto utilizzando dei file XSD recuperati dal progetto spid-sp-test. Secondo me l'ordine che ho implementato è corretto ma ho fatto un commento alla issue italia/spid-sp-test#115 (comment) di spid-sp-test per capire come procedere.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request good first issue Good for newcomers
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants