-
Notifications
You must be signed in to change notification settings - Fork 22
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 |