Skip to content

Compliance tests results

Luca Leonardo Scorcia edited this page Apr 3, 2022 · 5 revisions

During the initial onboarding process, the SPID federation administration runs a large list of compliance tests to verify that the Service Provider handles correctly any malformed response it may receive. This is the complete list of checks that is executed and that all implementations must pass in order to proceed with the federation process. Most of them should already be handled by Keycloak SAML implementation, but some are really nitpicky, so they had to be custom coded.

Please open an issue if you can help me fill this table with the appropriate outcome for the tests I have not run yet.

Check ID Official Description Tested (Y/N) Test result (OK/KO) Validator (Keycloak/Custom)
SpidSamlCheck_02 Response non firmata. Y OK Keycloak
SpidSamlCheck_03 Response firmata, Assertion non firmata. (L'assertion deve essere sempre firmata, la response può essere firmata). Y OK Keycloak
SpidSamlCheck_04 Response firmata con certificato diverso da quello registrato su SP. Y OK Keycloak
SpidSamlCheck_08 Response - Attributo ID non specificato. Y OK Custom
SpidSamlCheck_09 Attributo ID mancante. Y OK Keycloak
SpidSamlCheck_10 Attributo Version diverso da 2.0. Y OK Keycloak
SpidSamlCheck_11 Attributo IssueInstant non specificato. Y OK Keycloak
SpidSamlCheck_12 Attributo IssueInstant mancante. Y OK Keycloak
SpidSamlCheck_13 Attributo IssueInstant avente formato non corretto. Y OK Custom
SpidSamlCheck_14 Attributo IssueInstant precedente a IssueInstant della request. Y OK Custom
SpidSamlCheck_15 Attributo IssueInstant successivo all'istante di ricezione. Y OK Custom
SpidSamlCheck_16 Attributo InResponseTo non specificato (SPID check nr16) Y OK Custom
SpidSamlCheck_17 Attributo InResponseTo mancante (SPID check nr17) Y OK Custom
SpidSamlCheck_18 Attributo InResponseTo diverso da ID request (SPID check nr18) Y OK Custom
SpidSamlCheck_19 Attributo Destination non specificato.
SpidSamlCheck_20 Attributo Destination mancante.
SpidSamlCheck_21 Attributo Destination diverso da AssertionConsumerServiceURL.
SpidSamlCheck_22 Elemento Status non specificato.
SpidSamlCheck_23 Elemento Status mancante.
SpidSamlCheck_24 Elemento StatusCode non specificato.
SpidSamlCheck_25 Elemento StatusCode mancante.
SpidSamlCheck_26 Elemento StatusCode diverso da Success (non valido).
SpidSamlCheck_27 Elemento Issuer non specificato.
SpidSamlCheck_28 Elemento Issuer mancante.
SpidSamlCheck_29 Elemento Issuer diverso da EntityID IdP.
SpidSamlCheck_30 L'attributo Format di Issuer deve essere omesso o assumere valore urn:oasis:names:tc:SAML:2.0:nameid-format:entity.
SpidSamlCheck_32 Elemento Assertion mancante ed esito positivo autenticazione.
SpidSamlCheck_33 Attributo ID dell'Assertion non specificato.
SpidSamlCheck_34 Attributo ID dell'Assertion mancante.
SpidSamlCheck_35 Attributo Version dell'Assertion diverso da 2.0.
SpidSamlCheck_36 Attributo IssueInstant dell'Assertion non specificato.
SpidSamlCheck_37 Attributo IssueInstant dell'Assertion mancante.
SpidSamlCheck_38 Attributo IssueInstant dell'Assertion avente formato non corretto.
SpidSamlCheck_39 Attributo IssueInstant dell'Assertion precedente a IssueInstant della Request.
SpidSamlCheck_40 Attributo IssueInstant dell'Assertion successivo a IssueInstant della Request.
SpidSamlCheck_41 Elemento Subject dell'Assertion non specificato (SPID check nr41) Y OK Custom
SpidSamlCheck_42 Elemento Subject dell'Assertion mancante (SPID check nr42) Y OK Custom
SpidSamlCheck_43 Elemento NameID dell'Assertion non specificato.
SpidSamlCheck_44 Elemento NameID dell'Assertion mancante.
SpidSamlCheck_45 Attributo Format dell'elemento NameID dell'Assertion non specificato.
SpidSamlCheck_46 Attributo Format dell'elemento NameID dell'Assertion mancante.
SpidSamlCheck_47 Attributo Format di NameID dell'Assertion diverso da urn:oasis:names:tc:SAML:2.0:nameidformat:transient.
SpidSamlCheck_48 Attributo NameQualifier di NameID dell'Assertion non specificato.
SpidSamlCheck_49 Attributo NameQualifier di NameID dell'Assertion mancante.
SpidSamlCheck_51 Elemento SubjectConfirmation dell'Assertion non specificato (SPID check nr51) Y OK Custom
SpidSamlCheck_52 Elemento SubjectConfirmation dell'Assertion mancante(SPID check nr52) Y OK Custom
SpidSamlCheck_53 Attributo Method di SubjectConfirmation dell'Assertion non specificato (SPID check nr53) Y OK Custom
SpidSamlCheck_54 Attributo Method di SubjectConfirmation dell'Assertion mancante (SPID check nr54) Y OK Custom
SpidSamlCheck_55 Attributo Method di SubjectConfirmation dell'Assertion diverso da urn:oasis:names:tc:SAML:2.0:cm:bearer (SPID check nr55) Y OK Custom
SpidSamlCheck_56 Elemento SubjectConfirmationData dell'Assertion mancante (SPID check nr56) Y OK Custom
SpidSamlCheck_57 Attributo Recipient di SubjectConfirmationData dell'Assertion non specificato (SPID check nr57) Y OK Custom
SpidSamlCheck_58 Attributo Recipient di SubjectConfirmationData dell'Assertion mancante (SPID check nr58) Y OK Custom
SpidSamlCheck_59 Attributo Recipient di SubjectConfirmationData dell'Assertion diverso da AssertionConsumerServiceURL.
SpidSamlCheck_60 Attributo InResponseTo di SubjectConfirmationData dell'Assertion non specificato (SPID check nr60) Y OK Custom
SpidSamlCheck_61 Attributo InResponseTo di SubjectConfirmationData dell'Assertion mancante (SPID check nr61) Y OK Custom
SpidSamlCheck_62 Attributo InResponseTo di SubjectConfirmationData dell'Assertion diverso da ID request (SPID check nr62) Y OK Custom
SpidSamlCheck_63 Attributo NotOnOrAfter di SubjectConfirmationData dell'Assertion non specificato.
SpidSamlCheck_64 Attributo NotOnOrAfter di SubjectConfirmationData mancante.
SpidSamlCheck_65 Attributo NotOnOrAfter di SubjectConfirmationData avente formato non corretto.
SpidSamlCheck_66 Attributo NotOnOrAfter di SubjectConfirmationData precedente all'istante di ricezione della response.
SpidSamlCheck_67 Elemento Issuer dell'Assertion non specificato.
SpidSamlCheck_68 Elemento Issuer dell'Assertion mancante.
SpidSamlCheck_69 Elemento Issuer dell'Assertion diverso da EntityID IdP.
SpidSamlCheck_70 Attributo Format di Issuer dell'Assertion non specificato.
SpidSamlCheck_71 Attributo Format di Issuer dell'Assertion mancante.
SpidSamlCheck_72 L'attributo Format di Issuer dell'Assertion deve essere presente con il valore urn:oasis:names:tc:SAML:2.0:nameid-format:entity.
SpidSamlCheck_73 Elemento Conditions dell'Assertion non specificato.
SpidSamlCheck_74 Elemento Conditions dell'Assertion mancante.
SpidSamlCheck_75 Attributo NotBefore di Condition dell'Assertion non specificato.
SpidSamlCheck_76 Attributo NotBefore di Condition dell'Assertion mancante.
SpidSamlCheck_77 Attributo NotBefore di Condition dell'Assertion avente formato non corretto.
SpidSamlCheck_78 Attributo NotBefore di Condition dell'Assertion successivo all'instante di ricezione della response.
SpidSamlCheck_79 Attributo NotOnOrAfter di Condition dell'Assertion non specificato.
SpidSamlCheck_80 Attributo NotOnOrAfter di Condition dell'Assertion mancante.
SpidSamlCheck_81 Attributo NotOnOrAfter di Condition dell'Assertion avente formato non corretto.
SpidSamlCheck_82 Attributo NotOnOrAfter di Condition dell'Assertion precedente all'istante di ricezione della response.
SpidSamlCheck_83 Elemento AudienceRestriction di Condition dell'Assertion non specificato.
SpidSamlCheck_84 Elemento AudienceRestriction di Condition dell'Assertion mancante.
SpidSamlCheck_85 Elemento Audience di AudienceRestriction di Condition dell'Assertion non specificato.
SpidSamlCheck_86 Elemento Audience di AudienceRestriction di Condition dell'Assertion mancante.
SpidSamlCheck_87 Elemento Audience di AudienceRestriction di Condition dell'Assertion diverso da Entity Id del Service Provider.
SpidSamlCheck_88 Elemento AuthStatement dell'Assertion non specificato.
SpidSamlCheck_89 Elemento AuthStatement dell'Assertion mancante.
SpidSamlCheck_90 Elemento AuthnContext di AuthStatement dell'Assertion non specificato.
SpidSamlCheck_91 Elemento AuthnContext di AuthStatement dell'Assertion mancante.
SpidSamlCheck_92 Elemento AuthContextClassRef di AuthnContext di AuthStatement dell'Assertion non specificato.
SpidSamlCheck_93 Elemento AuthContextClassRef di AuthnContext di AuthStatement dell'Assertion mancante.
SpidSamlCheck_97 Elemento AuthContextClassRef impostato ad un valore non previsto.
SpidSamlCheck_98 Elemento AttributeStatement presente, ma sottoelemento Attribute mancante.
SpidSamlCheck_99 Elemento AttributeStatement presente, ma sottoelemento Attribute non specificato.
SpidSamlCheck_100 Assertion firmata con certificato diverso.
SpidSamlCheck_103 Set di attributi inviato diverso da quello richiesto