From 324b638559dc1bbed2cae63777659077a19c83ba Mon Sep 17 00:00:00 2001 From: Roland Hedberg Date: Tue, 27 Aug 2013 13:31:46 +0200 Subject: [PATCH] Sp test directory --- tests/sp_test/config.py | 91 ++++++++++++++++++++++++++++++++ tests/sp_test/localsp.py | 23 ++++++++ tests/sp_test/pki/mycert.pem | 18 +++++++ tests/sp_test/pki/mykey.pem | 15 ++++++ tests/sp_test/pki/server.crt | 14 +++++ tests/sp_test/pki/server.csr | 11 ++++ tests/sp_test/pki/server.key | 15 ++++++ tests/sp_test/pki/server.key.org | 18 +++++++ 8 files changed, 205 insertions(+) create mode 100644 tests/sp_test/config.py create mode 100755 tests/sp_test/localsp.py create mode 100644 tests/sp_test/pki/mycert.pem create mode 100644 tests/sp_test/pki/mykey.pem create mode 100644 tests/sp_test/pki/server.crt create mode 100644 tests/sp_test/pki/server.csr create mode 100644 tests/sp_test/pki/server.key create mode 100644 tests/sp_test/pki/server.key.org diff --git a/tests/sp_test/config.py b/tests/sp_test/config.py new file mode 100644 index 0000000..0916241 --- /dev/null +++ b/tests/sp_test/config.py @@ -0,0 +1,91 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- +from saml2 import BINDING_HTTP_REDIRECT, BINDING_URI +from saml2 import BINDING_HTTP_POST +from saml2.saml import NAME_FORMAT_URI +from saml2.saml import NAMEID_FORMAT_TRANSIENT +from saml2.saml import NAMEID_FORMAT_PERSISTENT + +try: + from saml2.sigver import get_xmlsec_binary +except ImportError: + get_xmlsec_binary = None + +if get_xmlsec_binary: + xmlsec_path = get_xmlsec_binary(["/opt/local/bin"]) +else: + xmlsec_path = '/usr/bin/xmlsec1' + +#BASE = "http://lingon.ladok.umu.se:8088" +#BASE = "http://lingon.catalogix.se:8088" +BASE = "http://localhost:8088" + +CONFIG = { + "entityid": "%s/idp.xml" % BASE, + "description": "My IDP", + "service": { + "idp": { + "name": "Rolands IdP", + "endpoints": { + "single_sign_on_service": [ + ("%s/sso/redirect" % BASE, BINDING_HTTP_REDIRECT), + ("%s/sso/post" % BASE, BINDING_HTTP_POST), + ], + "single_logout_service": [ + ("%s/slo/post" % BASE, BINDING_HTTP_POST), + ("%s/slo/redirect" % BASE, BINDING_HTTP_REDIRECT) + ], + "assertion_id_request_service": [ + ("%s/airs" % BASE, BINDING_URI) + ], + "manage_name_id_service": [ + ("%s/mni/post" % BASE, BINDING_HTTP_POST), + ("%s/mni/redirect" % BASE, BINDING_HTTP_REDIRECT), + ], + }, + "policy": { + "default": { + "lifetime": {"minutes": 15}, + "attribute_restrictions": None, # means all I have + "name_form": NAME_FORMAT_URI + }, + }, + "subject_data": ("dict", None), + "name_id_format": [NAMEID_FORMAT_TRANSIENT, + NAMEID_FORMAT_PERSISTENT] + }, + }, + "debug": 1, + "key_file": "pki/server.key", + "cert_file": "pki/server.crt", + "metadata": {}, + "organization": { + "display_name": "Rolands Identiteter", + "name": "Rolands Identiteter", + "url": "http://www.example.com", + }, + "contact_person": [ + { + "contact_type": "technical", + "given_name": "Roland", + "sur_name": "Hedberg", + "email_address": "technical@example.com" + }, { + "contact_type": "support", + "given_name": "Support", + "email_address": "support@example.com" + }, + ], + # This database holds the map between a subjects local identifier and + # the identifier returned to a SP + "xmlsec_binary": xmlsec_path, + "attribute_map_dir": "./attributemaps", + "logger": { + "rotating": { + "filename": "idp.log", + "maxBytes": 500000, + "backupCount": 5, + }, + "loglevel": "debug", + } +} diff --git a/tests/sp_test/localsp.py b/tests/sp_test/localsp.py new file mode 100755 index 0000000..feee4aa --- /dev/null +++ b/tests/sp_test/localsp.py @@ -0,0 +1,23 @@ +#!/usr/bin/env python + +__author__ = 'rolandh' + +import json + +BASE = "http://localhost:8087" +#BASE= "http://lingon.catalogix.se:8087" + +metadata = open("./sp/sp.xml").read() + +info = { + "start_page": BASE, + "entity_id": "%s/sp.xml" % BASE, + "result": { + "matches": { + "content": "

Your identity are" + }, + }, + "metadata": metadata, +} + +print json.dumps(info) \ No newline at end of file diff --git a/tests/sp_test/pki/mycert.pem b/tests/sp_test/pki/mycert.pem new file mode 100644 index 0000000..d4a0873 --- /dev/null +++ b/tests/sp_test/pki/mycert.pem @@ -0,0 +1,18 @@ +-----BEGIN CERTIFICATE----- +MIIC8jCCAlugAwIBAgIJAJHg2V5J31I8MA0GCSqGSIb3DQEBBQUAMFoxCzAJBgNV +BAYTAlNFMQ0wCwYDVQQHEwRVbWVhMRgwFgYDVQQKEw9VbWVhIFVuaXZlcnNpdHkx +EDAOBgNVBAsTB0lUIFVuaXQxEDAOBgNVBAMTB1Rlc3QgU1AwHhcNMDkxMDI2MTMz +MTE1WhcNMTAxMDI2MTMzMTE1WjBaMQswCQYDVQQGEwJTRTENMAsGA1UEBxMEVW1l +YTEYMBYGA1UEChMPVW1lYSBVbml2ZXJzaXR5MRAwDgYDVQQLEwdJVCBVbml0MRAw +DgYDVQQDEwdUZXN0IFNQMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDkJWP7 +bwOxtH+E15VTaulNzVQ/0cSbM5G7abqeqSNSs0l0veHr6/ROgW96ZeQ57fzVy2MC +FiQRw2fzBs0n7leEmDJyVVtBTavYlhAVXDNa3stgvh43qCfLx+clUlOvtnsoMiiR +mo7qf0BoPKTj7c0uLKpDpEbAHQT4OF1HRYVxMwIDAQABo4G/MIG8MB0GA1UdDgQW +BBQ7RgbMJFDGRBu9o3tDQDuSoBy7JjCBjAYDVR0jBIGEMIGBgBQ7RgbMJFDGRBu9 +o3tDQDuSoBy7JqFepFwwWjELMAkGA1UEBhMCU0UxDTALBgNVBAcTBFVtZWExGDAW +BgNVBAoTD1VtZWEgVW5pdmVyc2l0eTEQMA4GA1UECxMHSVQgVW5pdDEQMA4GA1UE +AxMHVGVzdCBTUIIJAJHg2V5J31I8MAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEF +BQADgYEAMuRwwXRnsiyWzmRikpwinnhTmbooKm5TINPE7A7gSQ710RxioQePPhZO +zkM27NnHTrCe2rBVg0EGz7QTd1JIwLPvgoj4VTi/fSha/tXrYUaqc9AqU1kWI4WN ++vffBGQ09mo+6CffuFTZYeOhzP/2stAPwCTU4kxEoiy0KpZMANI= +-----END CERTIFICATE----- diff --git a/tests/sp_test/pki/mykey.pem b/tests/sp_test/pki/mykey.pem new file mode 100644 index 0000000..d9ec5f8 --- /dev/null +++ b/tests/sp_test/pki/mykey.pem @@ -0,0 +1,15 @@ +-----BEGIN RSA PRIVATE KEY----- +MIICXAIBAAKBgQDkJWP7bwOxtH+E15VTaulNzVQ/0cSbM5G7abqeqSNSs0l0veHr +6/ROgW96ZeQ57fzVy2MCFiQRw2fzBs0n7leEmDJyVVtBTavYlhAVXDNa3stgvh43 +qCfLx+clUlOvtnsoMiiRmo7qf0BoPKTj7c0uLKpDpEbAHQT4OF1HRYVxMwIDAQAB +AoGAbx9rKH91DCw/ZEPhHsVXJ6cYHxGcMoAWvnMMC9WUN+bNo4gNL205DLfsxXA1 +jqXFXZj3+38vSFumGPA6IvXrN+Wyp3+Lz3QGc4K5OdHeBtYlxa6EsrxPgvuxYDUB +vx3xdWPMjy06G/ML+pR9XHnRaPNubXQX3UxGBuLjwNXVmyECQQD2/D84tYoCGWoq +5FhUBxFUy2nnOLKYC/GGxBTX62iLfMQ3fbQcdg2pJsB5rrniyZf7UL+9FOsAO9k1 +8DO7G12DAkEA7Hkdg1KEw4ZfjnnjEa+KqpyLTLRQ91uTVW6kzR+4zY719iUJ/PXE +PxJqm1ot7mJd1LW+bWtjLpxs7jYH19V+kQJBAIEpn2JnxdmdMuFlcy/WVmDy09pg +0z0imdexeXkFmjHAONkQOv3bWv+HzYaVMo8AgCOksfEPHGqN4eUMTfFeuUMCQF+5 +E1JSd/2yCkJhYqKJHae8oMLXByNqRXTCyiFioutK4JPYIHfugJdLfC4QziD+Xp85 +RrGCU+7NUWcIJhqfiJECQAIgUAzfzhdj5AyICaFPaOQ+N8FVMLcTyqeTXP0sIlFk +JStVibemTRCbxdXXM7OVipz1oW3PBVEO3t/VyjiaGGg= +-----END RSA PRIVATE KEY----- diff --git a/tests/sp_test/pki/server.crt b/tests/sp_test/pki/server.crt new file mode 100644 index 0000000..b26cb7e --- /dev/null +++ b/tests/sp_test/pki/server.crt @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICNzCCAaACCQCsW28S35BoDDANBgkqhkiG9w0BAQUFADBgMQswCQYDVQQGEwJT +RTEMMAoGA1UEBxMDVW1lMRcwFQYDVQQKEw5VbWUgVW5pdmVyc2l0eTEMMAoGA1UE +CxMDSVRTMRwwGgYDVQQDExNsaW5nb24ubGFkb2sudW11LnNlMB4XDTEzMDIyNzEy +MjA0MVoXDTE0MDIyNzEyMjA0MVowYDELMAkGA1UEBhMCU0UxDDAKBgNVBAcTA1Vt +ZTEXMBUGA1UEChMOVW1lIFVuaXZlcnNpdHkxDDAKBgNVBAsTA0lUUzEcMBoGA1UE +AxMTbGluZ29uLmxhZG9rLnVtdS5zZTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkC +gYEAyL9EFHRYqFpVYKiACo7v448Fr8GWD2rbsAJSfWYtAbZ0jEpzRc2+bljxp311 +vVy0XbTeSOK1fYHyj3PWj1cjCARQ6eAnfq5BlA8wKXY/mCirgQfPowroTSur4+qs +BykHT/y1GaivFAWpAyxChEeJxa8Hq/aZHI6oZdThjE9vpz0CAwEAATANBgkqhkiG +9w0BAQUFAAOBgQB0dZMCIhgQOB0D0Pc6cqE2iPD3OA0DhD62TtENnQeQ/+cRtkJ5 +Dx/WU6cQ3VtkxdwknxzUUmA8vyJCLFqNLGfAfEKA17w8spPwR30p0wOWJtqsjc1y +LTu4GL8TsEDR0NWwDJQZCiIx4og/T68Mp0rVb7bQ+10tnTzkaYJhXWmQsg== +-----END CERTIFICATE----- diff --git a/tests/sp_test/pki/server.csr b/tests/sp_test/pki/server.csr new file mode 100644 index 0000000..ee304b8 --- /dev/null +++ b/tests/sp_test/pki/server.csr @@ -0,0 +1,11 @@ +-----BEGIN CERTIFICATE REQUEST----- +MIIBoDCCAQkCAQAwYDELMAkGA1UEBhMCU0UxDDAKBgNVBAcTA1VtZTEXMBUGA1UE +ChMOVW1lIFVuaXZlcnNpdHkxDDAKBgNVBAsTA0lUUzEcMBoGA1UEAxMTbGluZ29u +LmxhZG9rLnVtdS5zZTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAyL9EFHRY +qFpVYKiACo7v448Fr8GWD2rbsAJSfWYtAbZ0jEpzRc2+bljxp311vVy0XbTeSOK1 +fYHyj3PWj1cjCARQ6eAnfq5BlA8wKXY/mCirgQfPowroTSur4+qsBykHT/y1Gaiv +FAWpAyxChEeJxa8Hq/aZHI6oZdThjE9vpz0CAwEAAaAAMA0GCSqGSIb3DQEBBQUA +A4GBAB1QcNrP/iJxJTLu8+nyKX+PCRkELYvOY6tDd4EjP56nJP4JRLzJ0qeR0Wic +g7BVbaYu5khUTNML5CRteDVBp5ZoMxgiWkYCsKGROvP5r6xHFok67QgL9gQ8/bJr +O4nNF7Zi8WXvkHN9HuHbzyiY22aRr9QZ2HrrswT5pbOrTXSf +-----END CERTIFICATE REQUEST----- diff --git a/tests/sp_test/pki/server.key b/tests/sp_test/pki/server.key new file mode 100644 index 0000000..26d2db8 --- /dev/null +++ b/tests/sp_test/pki/server.key @@ -0,0 +1,15 @@ +-----BEGIN RSA PRIVATE KEY----- +MIICWwIBAAKBgQDIv0QUdFioWlVgqIAKju/jjwWvwZYPatuwAlJ9Zi0BtnSMSnNF +zb5uWPGnfXW9XLRdtN5I4rV9gfKPc9aPVyMIBFDp4Cd+rkGUDzApdj+YKKuBB8+j +CuhNK6vj6qwHKQdP/LUZqK8UBakDLEKER4nFrwer9pkcjqhl1OGMT2+nPQIDAQAB +AoGAGHlpHW1J2cyZmB0y7xaaHI41TUY2u0511jGSSQOJ/Sl3cBsrjpkU3HMvkxHy +ptGEk+AXMZ+iLNkI74BZ6kPfW0V7C3yia6QE8EjU9dbiwDCb8v5zt+/Q5/w658Yr +cscfIL//vqNNIwlaSuDPrAVIRT38AuklvMAkZh2/EMCOOYECQQDwvgCb1sqQ0tqf +sfYA3ZB1lZ4fBFR11CYEUZiR5tslrJQpu4C2MHu+ReRHYu0GlqQu9tY2zkzYGQX0 +d15J90ExAkEA1XhZ3alyGS9Ge7FAV/OFgmFSRIi3HKUsLf0OwbG5rQqjPs5SrpOq +lw9st0t5nj20CxRUp5z/VBigNVjct0LjzQJAXAhm9yyP1/mjtnU0FHSfazQ9dKIV +H85wkioXZ3+Xu7lUEvgpZnz2cXEKqfe5oVEphwK6Nc18Nwip7CFOHHy3oQJAKuhe +/9wQUBmdjD1LlqIfQt62/4mPbNWSdMf50Fsd3DdYKsaj/e02i9iQ3KLyFimG5/c1 +MN+wvsGYakCrVLbAPQJAAnDZmdYXJ5W3y6zn0GgVaiRPKNWXQfFeLXYj0wpM4WFo +VYNqfyq2PQLWKspVsUrbJYaDl6U9WmtD7Uwabbq3+Q== +-----END RSA PRIVATE KEY----- diff --git a/tests/sp_test/pki/server.key.org b/tests/sp_test/pki/server.key.org new file mode 100644 index 0000000..545078e --- /dev/null +++ b/tests/sp_test/pki/server.key.org @@ -0,0 +1,18 @@ +-----BEGIN RSA PRIVATE KEY----- +Proc-Type: 4,ENCRYPTED +DEK-Info: DES-EDE3-CBC,7E7264C57D049F36 + +Xe0/i5Z/aWU8nxfb0RNyzJ+zSnycFO2Jdk0rVnu1PIaEpjDaZiFUuaTueoNl/bqY +ZLtB/2bitGyRDaw+1kzqGmDG5cxyH0mGFWuv0uk/amaNgzuqox0Bvi/iQeAKP+Ao +iDoSZTsm4+pee9XkdcO54MG9P748mxintnM9e/IyB1D+JSx0V3iLfx15yBdQOa2z +FEb+E1FRZaivnI96lu4QG204QQKfpK1ANrCZo+zjcXkO1ArfsRBuKMmlcSGDXVWl +FJYhPgoF2Vbdn+YeNxcoaHF2vlC3T0gu0MVTFjQStVHCygQo4AdxBn6Mws76q/U+ +5xorj5pEplDQ0emebF442Xcr5s2W5u6U+HbxUSW9LcqZavD8CrI9SYPyC9xC+RbM +7uZ4b+dIX7CZlXkbkwsI+sl93vfD4Q+Vtcz/ugsfHUAESrWfwd0Ki9DZ0EIX3UPH +MeYYCOcfFSKXCT7tG8O799sHkPZiD6jqzC1vLt+WBsTbCFlf63mtxE5q0AyQmYFC +89hLJLHBGQ47GvCvcNTJQJdfbdxvdwxFVmB7jM/IErguilvZmdgxDyKtT8dzXnPg ++ZWVgS6qM98PnCTPYz3msS1tFCn4RmcN2yzcicjw16s9Oj69gP2ijJFYTJgu/83q +c8NgFp5sVm17RiHut6NDPXWx5xTs2XVFSQCIcGheuJNQjZakDydiSCU4pRvWLgjr +h87d+eYfde/gTRX5sML26Fx6N44vxIzv8zt7yaEjjwixQlx41ErjH7VehJMRk2k5 +Zeynhek7EVfT1U3Wu3+3FMmUDwtDa0BE2d28Xyn15xg= +-----END RSA PRIVATE KEY-----