Exemple #1
0
    def test_signed_metadata(self, entity_desc, signature_security_context, verification_security_context):
        signed_metadata = create_signed_entity_descriptor(entity_desc, signature_security_context)

        md = InMemoryMetaData(None, security=verification_security_context)
        md.parse(signed_metadata)
        assert md.signed() is True
        assert md.parse_and_check_signature(signed_metadata) is True
        assert not md.entity_descr.valid_until
Exemple #2
0
    def test_signed_metadata(self, entity_desc, signature_security_context, verification_security_context):
        signed_metadata = create_signed_entity_descriptor(entity_desc, signature_security_context)

        md = InMemoryMetaData(None, security=verification_security_context)
        md.parse(signed_metadata)
        assert md.signed() is True
        assert md.parse_and_check_signature(signed_metadata) is True
        assert not md.entity_descr.valid_until
Exemple #3
0
    def test_valid_for(self, entity_desc, signature_security_context):
        valid_for = 4  # metadata valid for 4 hours
        expected_validity = in_a_while(hours=valid_for)
        signed_metadata = create_signed_entity_descriptor(
            entity_desc, signature_security_context, valid_for=valid_for)

        md = InMemoryMetaData(None)
        md.parse(signed_metadata)
        assert md.entity_descr.valid_until == expected_validity
Exemple #4
0
    def test_valid_for(self, entity_desc, signature_security_context):
        valid_for = 4  # metadata valid for 4 hours
        expected_validity = in_a_while(hours=valid_for)
        signed_metadata = create_signed_entity_descriptor(entity_desc, signature_security_context,
                                                          valid_for=valid_for)

        md = InMemoryMetaData(None)
        md.parse(signed_metadata)
        assert md.entity_descr.valid_until == expected_validity
Exemple #5
0
    def assert_single_sign_on_endpoints_for_saml_mirror_frontend(self, entity_descriptors, encoded_target_entity_id,
                                                                 saml_mirror_frontend_config, backend_names):
        expected_entity_id = saml_mirror_frontend_config["config"]["idp_config"][
                                 "entityid"] + "/" + encoded_target_entity_id
        metadata = InMemoryMetaData(None, None)
        for ed in entity_descriptors:
            metadata.parse(str(ed))
        sso = metadata.service(expected_entity_id, "idpsso_descriptor", "single_sign_on_service")

        for backend_name in backend_names:
            for binding, path in saml_mirror_frontend_config["config"]["endpoints"]["single_sign_on_service"].items():
                sso_urls_for_binding = [endpoint["location"] for endpoint in sso[binding]]
                expected_url = "{}/{}/{}/{}".format(BASE_URL, backend_name, encoded_target_entity_id, path)
                assert expected_url in sso_urls_for_binding
Exemple #6
0
    def assert_single_sign_on_endpoints_for_saml_mirror_frontend(self, entity_descriptors, encoded_target_entity_id,
                                                                 saml_mirror_frontend_config, backend_names):
        expected_entity_id = saml_mirror_frontend_config["config"]["idp_config"][
                                 "entityid"] + "/" + encoded_target_entity_id
        metadata = InMemoryMetaData(None, None)
        for ed in entity_descriptors:
            metadata.parse(str(ed))
        sso = metadata.service(expected_entity_id, "idpsso_descriptor", "single_sign_on_service")

        for backend_name in backend_names:
            for binding, path in saml_mirror_frontend_config["config"]["endpoints"]["single_sign_on_service"].items():
                sso_urls_for_binding = [endpoint["location"] for endpoint in sso[binding]]
                expected_url = "{}/{}/{}/{}".format(BASE_URL, backend_name, encoded_target_entity_id, path)
                assert expected_url in sso_urls_for_binding