maestrano 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
 - data/.gitignore +34 -0
 - data/Gemfile +2 -0
 - data/Gemfile.lock +43 -0
 - data/LICENSE +21 -0
 - data/README.md +4 -0
 - data/Rakefile +32 -0
 - data/bin/maestrano-console +9 -0
 - data/lib/maestrano.rb +114 -0
 - data/lib/maestrano/account/bill.rb +14 -0
 - data/lib/maestrano/api/error/authentication_error.rb +8 -0
 - data/lib/maestrano/api/error/base_error.rb +24 -0
 - data/lib/maestrano/api/error/connection_error.rb +8 -0
 - data/lib/maestrano/api/error/invalid_request_error.rb +14 -0
 - data/lib/maestrano/api/list_object.rb +37 -0
 - data/lib/maestrano/api/object.rb +187 -0
 - data/lib/maestrano/api/operation/base.rb +216 -0
 - data/lib/maestrano/api/operation/create.rb +18 -0
 - data/lib/maestrano/api/operation/delete.rb +13 -0
 - data/lib/maestrano/api/operation/list.rb +18 -0
 - data/lib/maestrano/api/operation/update.rb +59 -0
 - data/lib/maestrano/api/resource.rb +39 -0
 - data/lib/maestrano/api/util.rb +121 -0
 - data/lib/maestrano/saml/attribute_value.rb +15 -0
 - data/lib/maestrano/saml/metadata.rb +64 -0
 - data/lib/maestrano/saml/request.rb +93 -0
 - data/lib/maestrano/saml/response.rb +201 -0
 - data/lib/maestrano/saml/schemas/saml20assertion_schema.xsd +283 -0
 - data/lib/maestrano/saml/schemas/saml20protocol_schema.xsd +302 -0
 - data/lib/maestrano/saml/schemas/xenc_schema.xsd +146 -0
 - data/lib/maestrano/saml/schemas/xmldsig_schema.xsd +318 -0
 - data/lib/maestrano/saml/settings.rb +37 -0
 - data/lib/maestrano/saml/validation_error.rb +7 -0
 - data/lib/maestrano/sso.rb +81 -0
 - data/lib/maestrano/sso/base_group.rb +31 -0
 - data/lib/maestrano/sso/base_user.rb +75 -0
 - data/lib/maestrano/sso/group.rb +24 -0
 - data/lib/maestrano/sso/session.rb +63 -0
 - data/lib/maestrano/sso/user.rb +34 -0
 - data/lib/maestrano/version.rb +3 -0
 - data/lib/maestrano/xml_security/signed_document.rb +170 -0
 - data/maestrano.gemspec +32 -0
 - data/test/helpers/api_helpers.rb +82 -0
 - data/test/helpers/saml_helpers.rb +62 -0
 - data/test/maestrano/account/bill_test.rb +48 -0
 - data/test/maestrano/api/list_object_test.rb +20 -0
 - data/test/maestrano/api/object_test.rb +28 -0
 - data/test/maestrano/api/resource_test.rb +343 -0
 - data/test/maestrano/api/util_test.rb +31 -0
 - data/test/maestrano/maestrano_test.rb +49 -0
 - data/test/maestrano/saml/request_test.rb +168 -0
 - data/test/maestrano/saml/response_test.rb +290 -0
 - data/test/maestrano/saml/settings_test.rb +51 -0
 - data/test/maestrano/sso/base_group_test.rb +54 -0
 - data/test/maestrano/sso/base_user_test.rb +114 -0
 - data/test/maestrano/sso/group_test.rb +47 -0
 - data/test/maestrano/sso/session_test.rb +108 -0
 - data/test/maestrano/sso/user_test.rb +65 -0
 - data/test/maestrano/sso_test.rb +81 -0
 - data/test/maestrano/xml_security/signed_document.rb +163 -0
 - data/test/support/saml/certificates/certificate1 +12 -0
 - data/test/support/saml/certificates/r1_certificate2_base64 +1 -0
 - data/test/support/saml/responses/adfs_response_sha1.xml +46 -0
 - data/test/support/saml/responses/adfs_response_sha256.xml +46 -0
 - data/test/support/saml/responses/adfs_response_sha384.xml +46 -0
 - data/test/support/saml/responses/adfs_response_sha512.xml +46 -0
 - data/test/support/saml/responses/no_signature_ns.xml +48 -0
 - data/test/support/saml/responses/open_saml_response.xml +56 -0
 - data/test/support/saml/responses/r1_response6.xml.base64 +1 -0
 - data/test/support/saml/responses/response1.xml.base64 +1 -0
 - data/test/support/saml/responses/response2.xml.base64 +79 -0
 - data/test/support/saml/responses/response3.xml.base64 +66 -0
 - data/test/support/saml/responses/response4.xml.base64 +93 -0
 - data/test/support/saml/responses/response5.xml.base64 +102 -0
 - data/test/support/saml/responses/response_with_ampersands.xml +139 -0
 - data/test/support/saml/responses/response_with_ampersands.xml.base64 +93 -0
 - data/test/support/saml/responses/response_with_multiple_attribute_values.xml +57 -0
 - data/test/support/saml/responses/simple_saml_php.xml +71 -0
 - data/test/support/saml/responses/starfield_response.xml.base64 +1 -0
 - data/test/support/saml/responses/wrapped_response_2.xml.base64 +150 -0
 - data/test/test_helper.rb +46 -0
 - metadata +305 -0
 
| 
         @@ -0,0 +1,163 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            require File.expand_path('../../../test_helper', __FILE__)
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            module Maestrano
         
     | 
| 
      
 4 
     | 
    
         
            +
              module XMLSecurity
         
     | 
| 
      
 5 
     | 
    
         
            +
                class XmlSecurityTest < Test::Unit::TestCase
         
     | 
| 
      
 6 
     | 
    
         
            +
                  include XMLSecurity
         
     | 
| 
      
 7 
     | 
    
         
            +
             
     | 
| 
      
 8 
     | 
    
         
            +
                  context "XmlSecurity" do
         
     | 
| 
      
 9 
     | 
    
         
            +
                    setup do
         
     | 
| 
      
 10 
     | 
    
         
            +
                      @document = Maestrano::XMLSecurity::SignedDocument.new(Base64.decode64(response_document))
         
     | 
| 
      
 11 
     | 
    
         
            +
                      @base64cert = @document.elements["//ds:X509Certificate"].text
         
     | 
| 
      
 12 
     | 
    
         
            +
                    end
         
     | 
| 
      
 13 
     | 
    
         
            +
             
     | 
| 
      
 14 
     | 
    
         
            +
                    should "should run validate without throwing NS related exceptions" do
         
     | 
| 
      
 15 
     | 
    
         
            +
                      assert !@document.validate_signature(@base64cert, true)
         
     | 
| 
      
 16 
     | 
    
         
            +
                    end
         
     | 
| 
      
 17 
     | 
    
         
            +
             
     | 
| 
      
 18 
     | 
    
         
            +
                    should "should run validate with throwing NS related exceptions" do
         
     | 
| 
      
 19 
     | 
    
         
            +
                      assert_raise(Maestrano::Saml::ValidationError) do
         
     | 
| 
      
 20 
     | 
    
         
            +
                        @document.validate_signature(@base64cert, false)
         
     | 
| 
      
 21 
     | 
    
         
            +
                      end
         
     | 
| 
      
 22 
     | 
    
         
            +
                    end
         
     | 
| 
      
 23 
     | 
    
         
            +
             
     | 
| 
      
 24 
     | 
    
         
            +
                    should "not raise an error when softly validating the document multiple times" do
         
     | 
| 
      
 25 
     | 
    
         
            +
                      assert_nothing_raised do
         
     | 
| 
      
 26 
     | 
    
         
            +
                        2.times { @document.validate_signature(@base64cert, true) }
         
     | 
| 
      
 27 
     | 
    
         
            +
                      end
         
     | 
| 
      
 28 
     | 
    
         
            +
                    end
         
     | 
| 
      
 29 
     | 
    
         
            +
             
     | 
| 
      
 30 
     | 
    
         
            +
                    should "should raise Fingerprint mismatch" do
         
     | 
| 
      
 31 
     | 
    
         
            +
                      exception = assert_raise(Maestrano::Saml::ValidationError) do
         
     | 
| 
      
 32 
     | 
    
         
            +
                        @document.validate_document("no:fi:ng:er:pr:in:t", false)
         
     | 
| 
      
 33 
     | 
    
         
            +
                      end
         
     | 
| 
      
 34 
     | 
    
         
            +
                      assert_equal("Fingerprint mismatch", exception.message)
         
     | 
| 
      
 35 
     | 
    
         
            +
                    end
         
     | 
| 
      
 36 
     | 
    
         
            +
             
     | 
| 
      
 37 
     | 
    
         
            +
                    should "should raise Digest mismatch" do
         
     | 
| 
      
 38 
     | 
    
         
            +
                      exception = assert_raise(Maestrano::Saml::ValidationError) do
         
     | 
| 
      
 39 
     | 
    
         
            +
                        @document.validate_signature(@base64cert, false)
         
     | 
| 
      
 40 
     | 
    
         
            +
                      end
         
     | 
| 
      
 41 
     | 
    
         
            +
                      assert_equal("Digest mismatch", exception.message)
         
     | 
| 
      
 42 
     | 
    
         
            +
                    end
         
     | 
| 
      
 43 
     | 
    
         
            +
             
     | 
| 
      
 44 
     | 
    
         
            +
                    should "should raise Key validation error" do
         
     | 
| 
      
 45 
     | 
    
         
            +
                      response = Base64.decode64(response_document)
         
     | 
| 
      
 46 
     | 
    
         
            +
                      response.sub!("<ds:DigestValue>pJQ7MS/ek4KRRWGmv/H43ReHYMs=</ds:DigestValue>",
         
     | 
| 
      
 47 
     | 
    
         
            +
                                    "<ds:DigestValue>b9xsAXLsynugg3Wc1CI3kpWku+0=</ds:DigestValue>")
         
     | 
| 
      
 48 
     | 
    
         
            +
                      document = Maestrano::XMLSecurity::SignedDocument.new(response)
         
     | 
| 
      
 49 
     | 
    
         
            +
                      base64cert = document.elements["//ds:X509Certificate"].text
         
     | 
| 
      
 50 
     | 
    
         
            +
                      exception = assert_raise(Maestrano::Saml::ValidationError) do
         
     | 
| 
      
 51 
     | 
    
         
            +
                        document.validate_signature(base64cert, false)
         
     | 
| 
      
 52 
     | 
    
         
            +
                      end
         
     | 
| 
      
 53 
     | 
    
         
            +
                      assert_equal("Key validation error", exception.message)
         
     | 
| 
      
 54 
     | 
    
         
            +
                    end
         
     | 
| 
      
 55 
     | 
    
         
            +
             
     | 
| 
      
 56 
     | 
    
         
            +
                    should "raise validation error when the X509Certificate is missing" do
         
     | 
| 
      
 57 
     | 
    
         
            +
                      response = Base64.decode64(response_document)
         
     | 
| 
      
 58 
     | 
    
         
            +
                      response.sub!(/<ds:X509Certificate>.*<\/ds:X509Certificate>/, "")
         
     | 
| 
      
 59 
     | 
    
         
            +
                      document = Maestrano::XMLSecurity::SignedDocument.new(response)
         
     | 
| 
      
 60 
     | 
    
         
            +
                      exception = assert_raise(Maestrano::Saml::ValidationError) do
         
     | 
| 
      
 61 
     | 
    
         
            +
                        document.validate_document("a fingerprint", false) # The fingerprint isn't relevant to this test
         
     | 
| 
      
 62 
     | 
    
         
            +
                      end
         
     | 
| 
      
 63 
     | 
    
         
            +
                      assert_equal("Certificate element missing in response (ds:X509Certificate)", exception.message)
         
     | 
| 
      
 64 
     | 
    
         
            +
                    end
         
     | 
| 
      
 65 
     | 
    
         
            +
                  end
         
     | 
| 
      
 66 
     | 
    
         
            +
             
     | 
| 
      
 67 
     | 
    
         
            +
                  context "Algorithms" do
         
     | 
| 
      
 68 
     | 
    
         
            +
                    should "validate using SHA1" do
         
     | 
| 
      
 69 
     | 
    
         
            +
                      @document = Maestrano::XMLSecurity::SignedDocument.new(fixture(:adfs_response_sha1, false))
         
     | 
| 
      
 70 
     | 
    
         
            +
                      assert @document.validate_document("F1:3C:6B:80:90:5A:03:0E:6C:91:3E:5D:15:FA:DD:B0:16:45:48:72")
         
     | 
| 
      
 71 
     | 
    
         
            +
                    end
         
     | 
| 
      
 72 
     | 
    
         
            +
             
     | 
| 
      
 73 
     | 
    
         
            +
                    should "validate using SHA256" do
         
     | 
| 
      
 74 
     | 
    
         
            +
                      @document = Maestrano::XMLSecurity::SignedDocument.new(fixture(:adfs_response_sha256, false))
         
     | 
| 
      
 75 
     | 
    
         
            +
                      assert @document.validate_document("28:74:9B:E8:1F:E8:10:9C:A8:7C:A9:C3:E3:C5:01:6C:92:1C:B4:BA")
         
     | 
| 
      
 76 
     | 
    
         
            +
                    end
         
     | 
| 
      
 77 
     | 
    
         
            +
             
     | 
| 
      
 78 
     | 
    
         
            +
                    should "validate using SHA384" do
         
     | 
| 
      
 79 
     | 
    
         
            +
                      @document = Maestrano::XMLSecurity::SignedDocument.new(fixture(:adfs_response_sha384, false))
         
     | 
| 
      
 80 
     | 
    
         
            +
                      assert @document.validate_document("F1:3C:6B:80:90:5A:03:0E:6C:91:3E:5D:15:FA:DD:B0:16:45:48:72")
         
     | 
| 
      
 81 
     | 
    
         
            +
                    end
         
     | 
| 
      
 82 
     | 
    
         
            +
             
     | 
| 
      
 83 
     | 
    
         
            +
                    should "validate using SHA512" do
         
     | 
| 
      
 84 
     | 
    
         
            +
                      @document = Maestrano::XMLSecurity::SignedDocument.new(fixture(:adfs_response_sha512, false))
         
     | 
| 
      
 85 
     | 
    
         
            +
                      assert @document.validate_document("F1:3C:6B:80:90:5A:03:0E:6C:91:3E:5D:15:FA:DD:B0:16:45:48:72")
         
     | 
| 
      
 86 
     | 
    
         
            +
                    end
         
     | 
| 
      
 87 
     | 
    
         
            +
                  end
         
     | 
| 
      
 88 
     | 
    
         
            +
             
     | 
| 
      
 89 
     | 
    
         
            +
                  context "XmlSecurity::SignedDocument" do
         
     | 
| 
      
 90 
     | 
    
         
            +
             
     | 
| 
      
 91 
     | 
    
         
            +
                    context "#extract_inclusive_namespaces" do
         
     | 
| 
      
 92 
     | 
    
         
            +
                      should "support explicit namespace resolution for exclusive canonicalization" do
         
     | 
| 
      
 93 
     | 
    
         
            +
                        response = fixture(:open_saml_response, false)
         
     | 
| 
      
 94 
     | 
    
         
            +
                        document = Maestrano::XMLSecurity::SignedDocument.new(response)
         
     | 
| 
      
 95 
     | 
    
         
            +
                        inclusive_namespaces = document.send(:extract_inclusive_namespaces)
         
     | 
| 
      
 96 
     | 
    
         
            +
             
     | 
| 
      
 97 
     | 
    
         
            +
                        assert_equal %w[ xs ], inclusive_namespaces
         
     | 
| 
      
 98 
     | 
    
         
            +
                      end
         
     | 
| 
      
 99 
     | 
    
         
            +
             
     | 
| 
      
 100 
     | 
    
         
            +
                      should "support implicit namespace resolution for exclusive canonicalization" do
         
     | 
| 
      
 101 
     | 
    
         
            +
                        response = fixture(:no_signature_ns, false)
         
     | 
| 
      
 102 
     | 
    
         
            +
                        document = Maestrano::XMLSecurity::SignedDocument.new(response)
         
     | 
| 
      
 103 
     | 
    
         
            +
                        inclusive_namespaces = document.send(:extract_inclusive_namespaces)
         
     | 
| 
      
 104 
     | 
    
         
            +
             
     | 
| 
      
 105 
     | 
    
         
            +
                        assert_equal %w[ #default saml ds xs xsi ], inclusive_namespaces
         
     | 
| 
      
 106 
     | 
    
         
            +
                      end
         
     | 
| 
      
 107 
     | 
    
         
            +
             
     | 
| 
      
 108 
     | 
    
         
            +
                      should_eventually 'support inclusive canonicalization' do
         
     | 
| 
      
 109 
     | 
    
         
            +
             
     | 
| 
      
 110 
     | 
    
         
            +
                        response = Maestrano::Saml::Response.new(fixture("tdnf_response.xml"))
         
     | 
| 
      
 111 
     | 
    
         
            +
                        response.stubs(:conditions).returns(nil)
         
     | 
| 
      
 112 
     | 
    
         
            +
                        assert !response.is_valid?
         
     | 
| 
      
 113 
     | 
    
         
            +
                        settings = Maestrano::Saml::Settings.new
         
     | 
| 
      
 114 
     | 
    
         
            +
                        assert !response.is_valid?
         
     | 
| 
      
 115 
     | 
    
         
            +
                        response.settings = settings
         
     | 
| 
      
 116 
     | 
    
         
            +
                        assert !response.is_valid?
         
     | 
| 
      
 117 
     | 
    
         
            +
                        settings.idp_cert_fingerprint = "e6 38 9a 20 b7 4f 13 db 6a bc b1 42 6a e7 52 1d d6 56 d4 1b".upcase.gsub(" ", ":")
         
     | 
| 
      
 118 
     | 
    
         
            +
                        assert response.validate!
         
     | 
| 
      
 119 
     | 
    
         
            +
                      end
         
     | 
| 
      
 120 
     | 
    
         
            +
             
     | 
| 
      
 121 
     | 
    
         
            +
                      should "return an empty list when inclusive namespace element is missing" do
         
     | 
| 
      
 122 
     | 
    
         
            +
                        response = fixture(:no_signature_ns, false)
         
     | 
| 
      
 123 
     | 
    
         
            +
                        response.slice! %r{<InclusiveNamespaces xmlns="http://www.w3.org/2001/10/xml-exc-c14n#" PrefixList="#default saml ds xs xsi"/>}
         
     | 
| 
      
 124 
     | 
    
         
            +
             
     | 
| 
      
 125 
     | 
    
         
            +
                        document = Maestrano::XMLSecurity::SignedDocument.new(response)
         
     | 
| 
      
 126 
     | 
    
         
            +
                        inclusive_namespaces = document.send(:extract_inclusive_namespaces)
         
     | 
| 
      
 127 
     | 
    
         
            +
             
     | 
| 
      
 128 
     | 
    
         
            +
                        assert inclusive_namespaces.empty?
         
     | 
| 
      
 129 
     | 
    
         
            +
                      end
         
     | 
| 
      
 130 
     | 
    
         
            +
                    end
         
     | 
| 
      
 131 
     | 
    
         
            +
             
     | 
| 
      
 132 
     | 
    
         
            +
                    context "StarfieldTMS" do
         
     | 
| 
      
 133 
     | 
    
         
            +
                      setup do
         
     | 
| 
      
 134 
     | 
    
         
            +
                        @response = Maestrano::Saml::Response.new(fixture(:starfield_response))
         
     | 
| 
      
 135 
     | 
    
         
            +
                        @response.settings = Maestrano::Saml::Settings.new(
         
     | 
| 
      
 136 
     | 
    
         
            +
                                                                          :idp_cert_fingerprint => "8D:BA:53:8E:A3:B6:F9:F1:69:6C:BB:D9:D8:BD:41:B3:AC:4F:9D:4D"
         
     | 
| 
      
 137 
     | 
    
         
            +
                                                                          )
         
     | 
| 
      
 138 
     | 
    
         
            +
                      end
         
     | 
| 
      
 139 
     | 
    
         
            +
             
     | 
| 
      
 140 
     | 
    
         
            +
                      should "be able to validate a good response" do
         
     | 
| 
      
 141 
     | 
    
         
            +
                        Timecop.freeze Time.parse('2012-11-28 17:55:00 UTC') do
         
     | 
| 
      
 142 
     | 
    
         
            +
                          assert @response.validate!
         
     | 
| 
      
 143 
     | 
    
         
            +
                        end
         
     | 
| 
      
 144 
     | 
    
         
            +
                      end
         
     | 
| 
      
 145 
     | 
    
         
            +
             
     | 
| 
      
 146 
     | 
    
         
            +
                      should "fail before response is valid" do
         
     | 
| 
      
 147 
     | 
    
         
            +
                        Timecop.freeze Time.parse('2012-11-20 17:55:00 UTC') do
         
     | 
| 
      
 148 
     | 
    
         
            +
                          assert ! @response.is_valid?
         
     | 
| 
      
 149 
     | 
    
         
            +
                        end
         
     | 
| 
      
 150 
     | 
    
         
            +
                      end
         
     | 
| 
      
 151 
     | 
    
         
            +
             
     | 
| 
      
 152 
     | 
    
         
            +
                      should "fail after response expires" do
         
     | 
| 
      
 153 
     | 
    
         
            +
                        Timecop.freeze Time.parse('2012-11-30 17:55:00 UTC') do
         
     | 
| 
      
 154 
     | 
    
         
            +
                          assert ! @response.is_valid?
         
     | 
| 
      
 155 
     | 
    
         
            +
                        end
         
     | 
| 
      
 156 
     | 
    
         
            +
                      end
         
     | 
| 
      
 157 
     | 
    
         
            +
                    end
         
     | 
| 
      
 158 
     | 
    
         
            +
             
     | 
| 
      
 159 
     | 
    
         
            +
                  end
         
     | 
| 
      
 160 
     | 
    
         
            +
             
     | 
| 
      
 161 
     | 
    
         
            +
                end
         
     | 
| 
      
 162 
     | 
    
         
            +
              end
         
     | 
| 
      
 163 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -0,0 +1,12 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            -----BEGIN CERTIFICATE-----
         
     | 
| 
      
 2 
     | 
    
         
            +
            MIIBrTCCAaGgAwIBAgIBATADBgEAMGcxCzAJBgNVBAYTAlVTMRMwEQYDVQQIDApD
         
     | 
| 
      
 3 
     | 
    
         
            +
            YWxpZm9ybmlhMRUwEwYDVQQHDAxTYW50YSBNb25pY2ExETAPBgNVBAoMCE9uZUxv
         
     | 
| 
      
 4 
     | 
    
         
            +
            Z2luMRkwFwYDVQQDDBBhcHAub25lbG9naW4uY29tMB4XDTEwMTAxMTIxMTUxMloX
         
     | 
| 
      
 5 
     | 
    
         
            +
            DTE1MTAxMTIxMTUxMlowZzELMAkGA1UEBhMCVVMxEzARBgNVBAgMCkNhbGlmb3Ju
         
     | 
| 
      
 6 
     | 
    
         
            +
            aWExFTATBgNVBAcMDFNhbnRhIE1vbmljYTERMA8GA1UECgwIT25lTG9naW4xGTAX
         
     | 
| 
      
 7 
     | 
    
         
            +
            BgNVBAMMEGFwcC5vbmVsb2dpbi5jb20wgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJ
         
     | 
| 
      
 8 
     | 
    
         
            +
            AoGBAMPmjfjy7L35oDpeBXBoRVCgktPkLno9DOEWB7MgYMMVKs2B6ymWQLEWrDug
         
     | 
| 
      
 9 
     | 
    
         
            +
            MK1hkzWFhIb5fqWLGbWy0J0veGR9/gHOQG+rD/I36xAXnkdiXXhzoiAG/zQxM0ed
         
     | 
| 
      
 10 
     | 
    
         
            +
            MOUf40n314FC8moErcUg6QabttzesO59HFz6shPuxcWaVAgxAgMBAAEwAwYBAAMB
         
     | 
| 
      
 11 
     | 
    
         
            +
            AA==
         
     | 
| 
      
 12 
     | 
    
         
            +
            -----END CERTIFICATE-----
         
     | 
| 
         @@ -0,0 +1 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            MIIEYTCCA0mgAwIBAgIJAMax+2BoUJmCMA0GCSqGSIb3DQEBBQUAMIHGMQswCQYDVQQGEwJVUzERMA8GA1UECAwISWxsaW5vaXMxEDAOBgNVBAcMB0NoaWNhZ28xIzAhBgNVBAoMGldlbGxzcHJpbmcgV29ybGR3aWRlLCBJbmMuMRwwGgYDVQQLDBNTeXN0ZW1zIEVuZ2luZWVyaW5nMSQwIgYDVQQDDBtzc28ud2VsbHNwcmluZ3dvcmxkd2lkZS5jb20xKTAnBgkqhkiG9w0BCQEWGml0QHdlbGxzcHJpbmd3b3JsZHdpZGUuY29tMB4XDTEzMDIyNzIzNTUwOFoXDTIzMDIyNzIzNTUwOFowgcYxCzAJBgNVBAYTAlVTMREwDwYDVQQIDAhJbGxpbm9pczEQMA4GA1UEBwwHQ2hpY2FnbzEjMCEGA1UECgwaV2VsbHNwcmluZyBXb3JsZHdpZGUsIEluYy4xHDAaBgNVBAsME1N5c3RlbXMgRW5naW5lZXJpbmcxJDAiBgNVBAMMG3Nzby53ZWxsc3ByaW5nd29ybGR3aWRlLmNvbTEpMCcGCSqGSIb3DQEJARYaaXRAd2VsbHNwcmluZ3dvcmxkd2lkZS5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCzNhrDaXa00JAIRaxEyDrK/Zjj8bBTQD5dPgugDndYf1AOpzSGpGFU+lPu0QRv0o66K64HrF24FATWI18Q6aZ+xX8QbuBrfia6hOFef29Sk5paS9+DcDCmisuNpl84kbbiazy6S6cFtcdrG9/cr2iXtYmIzz7EfUcP/UVAp24ZW7dWhcvxoqxF9n6Fj94N+rA0dmUFUGz6glm7us3p36xbkiUMpgr3feD/9P34H+2YFsQ2b2DblDI5Z7YULHxBsl5nuhPLFuPN1olcWQBsJYO6iHElFRH+487L2yZ1mLVXKI0LFb/w1rAJpPeUc8E5s1MATAjNx3wPwwqgw30sKtoXAgMBAAGjUDBOMB0GA1UdDgQWBBSrGGV9w3hGXTafkJLUaWBsWiDGaTAfBgNVHSMEGDAWgBSrGGV9w3hGXTafkJLUaWBsWiDGaTAMBgNVHRMEBTADAQH/MA0GCSqGSIb3DQEBBQUAA4IBAQCcvZV0VIwIRD4C5CItFwfNRF2LRBmYiNh4FJbo0wESbH0cWT9vXNdcjcx6PHrIj7ICErSCR5eZmIrSgLEBEkptjVsiFsHWSvMHv37WaHwyhZWnhutss32aP9+ifxQ1lzwm54jZWZsVVVFQH155BDsVeU1UwEhvcCExFa7RNjyvqQrZmyQwMFSzL1cQp0humu0hHLtAI7E32lp5itw6kTOfyhjB8d1bzBVZe6RY64RxOPEcx+9hkrHmfCohdt644jRtPdLTvqqxpscYGD+L2QOt1HpbGgAdcgUZeUHo/eosqpwDOoyuFepz7JzqMncxFN//NmjnFGVZdGR+6bTxKUKq
         
     | 
| 
         @@ -0,0 +1,46 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            <?xml version="1.0"?>
         
     | 
| 
      
 2 
     | 
    
         
            +
            <samlp:Response xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol" ID="_0263a07b-205f-479c-90fc-7495715ecbbf" Version="2.0" IssueInstant="2011-06-22T12:49:30.348Z" Destination="https://someone.example.com/endpoint" Consent="urn:oasis:names:tc:SAML:2.0:consent:unspecified" InResponseTo="_fc4a34b0-7efb-012e-caae-782bcb13bb38">
         
     | 
| 
      
 3 
     | 
    
         
            +
              <Issuer xmlns="urn:oasis:names:tc:SAML:2.0:assertion">http://login.example.com/issuer</Issuer>
         
     | 
| 
      
 4 
     | 
    
         
            +
              <samlp:Status>
         
     | 
| 
      
 5 
     | 
    
         
            +
                <samlp:StatusCode Value="urn:oasis:names:tc:SAML:2.0:status:Success"/>
         
     | 
| 
      
 6 
     | 
    
         
            +
              </samlp:Status>
         
     | 
| 
      
 7 
     | 
    
         
            +
              <Assertion xmlns="urn:oasis:names:tc:SAML:2.0:assertion" ID="_721b4a5a-d7e1-4861-9754-a9b197b6f9ab" IssueInstant="2011-06-22T12:49:30.348Z" Version="2.0">
         
     | 
| 
      
 8 
     | 
    
         
            +
                <Issuer>http://login.example.com/issuer</Issuer>
         
     | 
| 
      
 9 
     | 
    
         
            +
                <ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
         
     | 
| 
      
 10 
     | 
    
         
            +
                  <ds:SignedInfo>
         
     | 
| 
      
 11 
     | 
    
         
            +
                    <ds:CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
         
     | 
| 
      
 12 
     | 
    
         
            +
                    <ds:SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#rsa-sha1"/>
         
     | 
| 
      
 13 
     | 
    
         
            +
                    <ds:Reference URI="#_721b4a5a-d7e1-4861-9754-a9b197b6f9ab">
         
     | 
| 
      
 14 
     | 
    
         
            +
                      <ds:Transforms>
         
     | 
| 
      
 15 
     | 
    
         
            +
                        <ds:Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/>
         
     | 
| 
      
 16 
     | 
    
         
            +
                        <ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
         
     | 
| 
      
 17 
     | 
    
         
            +
                      </ds:Transforms>
         
     | 
| 
      
 18 
     | 
    
         
            +
                      <ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha1"/>
         
     | 
| 
      
 19 
     | 
    
         
            +
                      <ds:DigestValue>tGpkynNC34A5SFqDSfXmPSiIGpU=</ds:DigestValue>
         
     | 
| 
      
 20 
     | 
    
         
            +
                    </ds:Reference>
         
     | 
| 
      
 21 
     | 
    
         
            +
                  </ds:SignedInfo>
         
     | 
| 
      
 22 
     | 
    
         
            +
                  <ds:SignatureValue>WXtmslqh2npLtwhvU8yVx0pvH7E1s8ASksv7VtWirQDFrRRO9k+sNnQcGzA75QNyd6nP+T2e+ofIWyj8G70Rd6gEU4ZmV1vlGVq49Ilc7r/oxauitIuasOvrmpyHCXRbttYeWz4T5xoTCDx9RZQvI4fdrFugrymFT2OREFx1lSk=</ds:SignatureValue>
         
     | 
| 
      
 23 
     | 
    
         
            +
                  <KeyInfo xmlns="http://www.w3.org/2000/09/xmldsig#">
         
     | 
| 
      
 24 
     | 
    
         
            +
                    <ds:X509Data>
         
     | 
| 
      
 25 
     | 
    
         
            +
                      <ds:X509Certificate>LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURxekNDQXhTZ0F3SUJBZ0lCQVRBTkJna3Foa2lHOXcwQkFRc0ZBRENCaGpFTE1Ba0dBMVVFQmhNQ1FWVXgKRERBS0JnTlZCQWdUQTA1VFZ6RVBNQTBHQTFVRUJ4TUdVM2xrYm1WNU1Rd3dDZ1lEVlFRS0RBTlFTVlF4Q1RBSApCZ05WQkFzTUFERVlNQllHQTFVRUF3d1BiR0YzY21WdVkyVndhWFF1WTI5dE1TVXdJd1lKS29aSWh2Y05BUWtCCkRCWnNZWGR5Wlc1alpTNXdhWFJBWjIxaGFXd3VZMjl0TUI0WERURXlNRFF4T1RJeU5UUXhPRm9YRFRNeU1EUXgKTkRJeU5UUXhPRm93Z1lZeEN6QUpCZ05WQkFZVEFrRlZNUXd3Q2dZRFZRUUlFd05PVTFjeER6QU5CZ05WQkFjVApCbE41Wkc1bGVURU1NQW9HQTFVRUNnd0RVRWxVTVFrd0J3WURWUVFMREFBeEdEQVdCZ05WQkFNTUQyeGhkM0psCmJtTmxjR2wwTG1OdmJURWxNQ01HQ1NxR1NJYjNEUUVKQVF3V2JHRjNjbVZ1WTJVdWNHbDBRR2R0WVdsc0xtTnYKYlRDQm56QU5CZ2txaGtpRzl3MEJBUUVGQUFPQmpRQXdnWWtDZ1lFQXFqaWUzUjJvaStwRGFldndJeXMvbWJVVApubkdsa3h0ZGlrcnExMXZleHd4SmlQTmhtaHFSVzNtVXVKRXpsbElkVkw2RW14R1lUcXBxZjkzSGxoa3NhZUowCjhVZ2pQOVVtTVlyaFZKdTFqY0ZXVjdmei9yKzIxL2F3VG5EVjlzTVlRcXVJUllZeTdiRzByMU9iaXdkb3ZudGsKN2dGSTA2WjB2WmFjREU1Ym9xVUNBd0VBQWFPQ0FTVXdnZ0VoTUFrR0ExVWRFd1FDTUFBd0N3WURWUjBQQkFRRApBZ1VnTUIwR0ExVWREZ1FXQkJTUk9OOEdKOG8rOGpnRnRqa3R3WmRxeDZCUnlUQVRCZ05WSFNVRUREQUtCZ2dyCkJnRUZCUWNEQVRBZEJnbGdoa2dCaHZoQ0FRMEVFQllPVkdWemRDQllOVEE1SUdObGNuUXdnYk1HQTFVZEl3U0IKcXpDQnFJQVVrVGpmQmlmS1B2STRCYlk1TGNHWGFzZWdVY21oZ1l5a2dZa3dnWVl4Q3pBSkJnTlZCQVlUQWtGVgpNUXd3Q2dZRFZRUUlFd05PVTFjeER6QU5CZ05WQkFjVEJsTjVaRzVsZVRFTU1Bb0dBMVVFQ2d3RFVFbFVNUWt3CkJ3WURWUVFMREFBeEdEQVdCZ05WQkFNTUQyeGhkM0psYm1ObGNHbDBMbU52YlRFbE1DTUdDU3FHU0liM0RRRUoKQVF3V2JHRjNjbVZ1WTJVdWNHbDBRR2R0WVdsc0xtTnZiWUlCQVRBTkJna3Foa2lHOXcwQkFRc0ZBQU9CZ1FDRQpUQWVKVERTQVc2ejFVRlRWN1FyZWg0VUxGT1JhajkrZUN1RjNLV0RIYyswSVFDajlyZG5ERzRRL3dmNy9yYVEwCkpuUFFDU0NkclBMSmV5b1BIN1FhVHdvYUY3ZHpWdzRMQ3N5TkpURld4NGNNNTBWdzZSNWZET2dpQzhic2ZmUzgKQkptb3VscnJaRE5OVmpHOG1XNmNMeHJZdlZRT3JSVmVjQ0ZJZ3NzQ2JBPT0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=</ds:X509Certificate>
         
     | 
| 
      
 26 
     | 
    
         
            +
                    </ds:X509Data>
         
     | 
| 
      
 27 
     | 
    
         
            +
                  </KeyInfo>
         
     | 
| 
      
 28 
     | 
    
         
            +
                </ds:Signature>
         
     | 
| 
      
 29 
     | 
    
         
            +
                <Subject>
         
     | 
| 
      
 30 
     | 
    
         
            +
                  <NameID Format="urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress">hello@example.com</NameID>
         
     | 
| 
      
 31 
     | 
    
         
            +
                  <SubjectConfirmation Method="urn:oasis:names:tc:SAML:2.0:cm:bearer">
         
     | 
| 
      
 32 
     | 
    
         
            +
                    <SubjectConfirmationData InResponseTo="_fc4a34b0-7efb-012e-caae-782bcb13bb38" NotOnOrAfter="2011-06-22T12:54:30.348Z" Recipient="https://someone.example.com/endpoint"/>
         
     | 
| 
      
 33 
     | 
    
         
            +
                  </SubjectConfirmation>
         
     | 
| 
      
 34 
     | 
    
         
            +
                </Subject>
         
     | 
| 
      
 35 
     | 
    
         
            +
                <Conditions NotBefore="2011-06-22T12:49:30.332Z" NotOnOrAfter="2011-06-22T13:49:30.332Z">
         
     | 
| 
      
 36 
     | 
    
         
            +
                  <AudienceRestriction>
         
     | 
| 
      
 37 
     | 
    
         
            +
                    <Audience>example.com</Audience>
         
     | 
| 
      
 38 
     | 
    
         
            +
                  </AudienceRestriction>
         
     | 
| 
      
 39 
     | 
    
         
            +
                </Conditions>
         
     | 
| 
      
 40 
     | 
    
         
            +
                <AuthnStatement AuthnInstant="2011-06-22T12:49:30.112Z" SessionIndex="_721b4a5a-d7e1-4861-9754-a9b197b6f9ab">
         
     | 
| 
      
 41 
     | 
    
         
            +
                  <AuthnContext>
         
     | 
| 
      
 42 
     | 
    
         
            +
                    <AuthnContextClassRef>urn:oasis:names:tc:SAML:2.0:ac:classes:PasswordProtectedTransport</AuthnContextClassRef>
         
     | 
| 
      
 43 
     | 
    
         
            +
                  </AuthnContext>
         
     | 
| 
      
 44 
     | 
    
         
            +
                </AuthnStatement>
         
     | 
| 
      
 45 
     | 
    
         
            +
              </Assertion>
         
     | 
| 
      
 46 
     | 
    
         
            +
            </samlp:Response>
         
     | 
| 
         @@ -0,0 +1,46 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            <?xml version="1.0"?>
         
     | 
| 
      
 2 
     | 
    
         
            +
            <samlp:Response xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol" ID="_0263a07b-205f-479c-90fc-7495715ecbbf" Version="2.0" IssueInstant="2011-06-22T12:49:30.348Z" Destination="https://someone.example.com/endpoint" Consent="urn:oasis:names:tc:SAML:2.0:consent:unspecified" InResponseTo="_fc4a34b0-7efb-012e-caae-782bcb13bb38">
         
     | 
| 
      
 3 
     | 
    
         
            +
              <Issuer xmlns="urn:oasis:names:tc:SAML:2.0:assertion">http://login.example.com/issuer</Issuer>
         
     | 
| 
      
 4 
     | 
    
         
            +
              <samlp:Status>
         
     | 
| 
      
 5 
     | 
    
         
            +
                <samlp:StatusCode Value="urn:oasis:names:tc:SAML:2.0:status:Success"/>
         
     | 
| 
      
 6 
     | 
    
         
            +
              </samlp:Status>
         
     | 
| 
      
 7 
     | 
    
         
            +
              <Assertion xmlns="urn:oasis:names:tc:SAML:2.0:assertion" ID="_721b4a5a-d7e1-4861-9754-a9b197b6f9ab" IssueInstant="2011-06-22T12:49:30.348Z" Version="2.0">
         
     | 
| 
      
 8 
     | 
    
         
            +
                <Issuer>http://login.example.com/issuer</Issuer>
         
     | 
| 
      
 9 
     | 
    
         
            +
                <ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
         
     | 
| 
      
 10 
     | 
    
         
            +
                  <ds:SignedInfo>
         
     | 
| 
      
 11 
     | 
    
         
            +
                    <ds:CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
         
     | 
| 
      
 12 
     | 
    
         
            +
                    <ds:SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#rsa-sha256"/>
         
     | 
| 
      
 13 
     | 
    
         
            +
                    <ds:Reference URI="#_721b4a5a-d7e1-4861-9754-a9b197b6f9ab">
         
     | 
| 
      
 14 
     | 
    
         
            +
                      <ds:Transforms>
         
     | 
| 
      
 15 
     | 
    
         
            +
                        <ds:Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/>
         
     | 
| 
      
 16 
     | 
    
         
            +
                        <ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
         
     | 
| 
      
 17 
     | 
    
         
            +
                      </ds:Transforms>
         
     | 
| 
      
 18 
     | 
    
         
            +
                      <ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/>
         
     | 
| 
      
 19 
     | 
    
         
            +
                      <ds:DigestValue>5mUndDm7OQSGNYVTevsJw3JRVZiwvlDnR2nprJ+6Mhc=</ds:DigestValue>
         
     | 
| 
      
 20 
     | 
    
         
            +
                    </ds:Reference>
         
     | 
| 
      
 21 
     | 
    
         
            +
                  </ds:SignedInfo>
         
     | 
| 
      
 22 
     | 
    
         
            +
                  <ds:SignatureValue>MmuXQdjutiuP7soIaB7nk9wSR8OGkmyH5n9aelMTOrV7gTVNDazgQ/GXMmYXTTrhdvGN65duLO0oYdsYGxwNIjlA1lYhoGeBgYuIB/4iKZ6oLSDgjMcQxHkSW1OJ8pIEuUa/3MPUUjaSlTg0me4WRxVdXp34A9Mtlj0DgrK9m0A=</ds:SignatureValue>
         
     | 
| 
      
 23 
     | 
    
         
            +
                  <KeyInfo xmlns="http://www.w3.org/2000/09/xmldsig#">
         
     | 
| 
      
 24 
     | 
    
         
            +
                    <ds:X509Data>
         
     | 
| 
      
 25 
     | 
    
         
            +
                      <ds:X509Certificate>LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUQwRENDQXptZ0F3SUJBZ0lCQVRBTkJna3Foa2lHOXcwQkFRVUZBRENCaGpFTE1Ba0dBMVVFQmhNQ1FWVXgKRERBS0JnTlZCQWdUQTA1VFZ6RVBNQTBHQTFVRUJ4TUdVM2xrYm1WNU1Rd3dDZ1lEVlFRS0RBTlFTVlF4Q1RBSApCZ05WQkFzTUFERVlNQllHQTFVRUF3d1BiR0YzY21WdVkyVndhWFF1WTI5dE1TVXdJd1lKS29aSWh2Y05BUWtCCkRCWnNZWGR5Wlc1alpTNXdhWFJBWjIxaGFXd3VZMjl0TUI0WERURXlNRFF4T0RBMU1qVTFPVm9YRFRNeU1EUXgKTXpBMU1qVTFPVm93Z1lZeEN6QUpCZ05WQkFZVEFrRlZNUXd3Q2dZRFZRUUlFd05PVTFjeER6QU5CZ05WQkFjVApCbE41Wkc1bGVURU1NQW9HQTFVRUNnd0RVRWxVTVFrd0J3WURWUVFMREFBeEdEQVdCZ05WQkFNTUQyeGhkM0psCmJtTmxjR2wwTG1OdmJURWxNQ01HQ1NxR1NJYjNEUUVKQVF3V2JHRjNjbVZ1WTJVdWNHbDBRR2R0WVdsc0xtTnYKYlRDQm56QU5CZ2txaGtpRzl3MEJBUUVGQUFPQmpRQXdnWWtDZ1lFQW9mR3p4NFZvQzZDSENYdFJPdkVLSFRzRAppNkFBWCtoVWpiSVloeERsZUxMZUNVemZDaVVXOFkwbTVrWkVKbjJXSmt5Si8wRFdPZmE5b0c1ZUg1eXNKSWpVCnpTUjVkMGJldmJZMEV1OHJDTmh3S001UzdYaXltTzBGc09mcnh6TkJxbVRBblE2VFJYT25nY1BYTitXRWd4cmQKZDVoV1V5ZXh2dkQ2d05McWdVRUNBd0VBQWFPQ0FVb3dnZ0ZHTUFrR0ExVWRFd1FDTUFBd0N3WURWUjBQQkFRRApBZ1VnTUIwR0ExVWREZ1FXQkJRMk1xTFZwRnlyVmNNaGFXMzRHanFkTVF6c3dqQVRCZ05WSFNVRUREQUtCZ2dyCkJnRUZCUWNEQVRCQ0JnbGdoa2dCaHZoQ0FRMEVOUll6VkdWemRDQllOVEE1SUdObGNuUWdZM0psWVhSbFpDQm0KYjNJZ1QyNWxURzluYVc0Z1lua2dUR0YzY21WdVkyVWdVR2wwTUlHekJnTlZIU01FZ2Fzd2dhaUFGRFl5b3RXawpYS3RWd3lGcGJmZ2FPcDB4RE96Q29ZR01wSUdKTUlHR01Rc3dDUVlEVlFRR0V3SkJWVEVNTUFvR0ExVUVDQk1EClRsTlhNUTh3RFFZRFZRUUhFd1pUZVdSdVpYa3hEREFLQmdOVkJBb01BMUJKVkRFSk1BY0dBMVVFQ3d3QU1SZ3cKRmdZRFZRUUREQTlzWVhkeVpXNWpaWEJwZEM1amIyMHhKVEFqQmdrcWhraUc5dzBCQ1FFTUZteGhkM0psYm1ObApMbkJwZEVCbmJXRnBiQzVqYjIyQ0FRRXdEUVlKS29aSWh2Y05BUUVGQlFBRGdZRUFOM2VRMUM5T0JJbVgvdWZGClNIUC9FeUxPQjJPQ1dqdlNpSytNbndQRWsralRRdDZZYXIxMkRacWVnRGhrWC92OGplTWh4VnpwaStBcHA4M0YKYWFmUE54UFJYc01FTFRCblhDQUJ1YzZEakxBaFlvNGQ4TDhCWUovVjlxLzZRMzdNYVZmc0ZKWVVKNmFBQUppWQpwd1RMUWJidFpqaytZc0s5TzZFR1U4ZjE5djg9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K</ds:X509Certificate>
         
     | 
| 
      
 26 
     | 
    
         
            +
                    </ds:X509Data>
         
     | 
| 
      
 27 
     | 
    
         
            +
                  </KeyInfo>
         
     | 
| 
      
 28 
     | 
    
         
            +
                </ds:Signature>
         
     | 
| 
      
 29 
     | 
    
         
            +
                <Subject>
         
     | 
| 
      
 30 
     | 
    
         
            +
                  <NameID Format="urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress">hello@example.com</NameID>
         
     | 
| 
      
 31 
     | 
    
         
            +
                  <SubjectConfirmation Method="urn:oasis:names:tc:SAML:2.0:cm:bearer">
         
     | 
| 
      
 32 
     | 
    
         
            +
                    <SubjectConfirmationData InResponseTo="_fc4a34b0-7efb-012e-caae-782bcb13bb38" NotOnOrAfter="2011-06-22T12:54:30.348Z" Recipient="https://someone.example.com/endpoint"/>
         
     | 
| 
      
 33 
     | 
    
         
            +
                  </SubjectConfirmation>
         
     | 
| 
      
 34 
     | 
    
         
            +
                </Subject>
         
     | 
| 
      
 35 
     | 
    
         
            +
                <Conditions NotBefore="2011-06-22T12:49:30.332Z" NotOnOrAfter="2011-06-22T13:49:30.332Z">
         
     | 
| 
      
 36 
     | 
    
         
            +
                  <AudienceRestriction>
         
     | 
| 
      
 37 
     | 
    
         
            +
                    <Audience>example.com</Audience>
         
     | 
| 
      
 38 
     | 
    
         
            +
                  </AudienceRestriction>
         
     | 
| 
      
 39 
     | 
    
         
            +
                </Conditions>
         
     | 
| 
      
 40 
     | 
    
         
            +
                <AuthnStatement AuthnInstant="2011-06-22T12:49:30.112Z" SessionIndex="_721b4a5a-d7e1-4861-9754-a9b197b6f9ab">
         
     | 
| 
      
 41 
     | 
    
         
            +
                  <AuthnContext>
         
     | 
| 
      
 42 
     | 
    
         
            +
                    <AuthnContextClassRef>urn:oasis:names:tc:SAML:2.0:ac:classes:PasswordProtectedTransport</AuthnContextClassRef>
         
     | 
| 
      
 43 
     | 
    
         
            +
                  </AuthnContext>
         
     | 
| 
      
 44 
     | 
    
         
            +
                </AuthnStatement>
         
     | 
| 
      
 45 
     | 
    
         
            +
              </Assertion>
         
     | 
| 
      
 46 
     | 
    
         
            +
            </samlp:Response>
         
     | 
| 
         @@ -0,0 +1,46 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            <?xml version="1.0"?>
         
     | 
| 
      
 2 
     | 
    
         
            +
            <samlp:Response xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol" ID="_0263a07b-205f-479c-90fc-7495715ecbbf" Version="2.0" IssueInstant="2011-06-22T12:49:30.348Z" Destination="https://someone.example.com/endpoint" Consent="urn:oasis:names:tc:SAML:2.0:consent:unspecified" InResponseTo="_fc4a34b0-7efb-012e-caae-782bcb13bb38">
         
     | 
| 
      
 3 
     | 
    
         
            +
              <Issuer xmlns="urn:oasis:names:tc:SAML:2.0:assertion">http://login.example.com/issuer</Issuer>
         
     | 
| 
      
 4 
     | 
    
         
            +
              <samlp:Status>
         
     | 
| 
      
 5 
     | 
    
         
            +
                <samlp:StatusCode Value="urn:oasis:names:tc:SAML:2.0:status:Success"/>
         
     | 
| 
      
 6 
     | 
    
         
            +
              </samlp:Status>
         
     | 
| 
      
 7 
     | 
    
         
            +
              <Assertion xmlns="urn:oasis:names:tc:SAML:2.0:assertion" ID="_721b4a5a-d7e1-4861-9754-a9b197b6f9ab" IssueInstant="2011-06-22T12:49:30.348Z" Version="2.0">
         
     | 
| 
      
 8 
     | 
    
         
            +
                <Issuer>http://login.example.com/issuer</Issuer>
         
     | 
| 
      
 9 
     | 
    
         
            +
                <ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
         
     | 
| 
      
 10 
     | 
    
         
            +
                  <ds:SignedInfo>
         
     | 
| 
      
 11 
     | 
    
         
            +
                    <ds:CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
         
     | 
| 
      
 12 
     | 
    
         
            +
                    <ds:SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#rsa-sha384"/>
         
     | 
| 
      
 13 
     | 
    
         
            +
                    <ds:Reference URI="#_721b4a5a-d7e1-4861-9754-a9b197b6f9ab">
         
     | 
| 
      
 14 
     | 
    
         
            +
                      <ds:Transforms>
         
     | 
| 
      
 15 
     | 
    
         
            +
                        <ds:Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/>
         
     | 
| 
      
 16 
     | 
    
         
            +
                        <ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
         
     | 
| 
      
 17 
     | 
    
         
            +
                      </ds:Transforms>
         
     | 
| 
      
 18 
     | 
    
         
            +
                      <ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha384"/>
         
     | 
| 
      
 19 
     | 
    
         
            +
                      <ds:DigestValue>XU0mb78TVA+VwcA71jxe5osjiOzOP/OwDcJ8t/mn2d9+/V2zxejEo9+fkSY2ZR0Z</ds:DigestValue>
         
     | 
| 
      
 20 
     | 
    
         
            +
                    </ds:Reference>
         
     | 
| 
      
 21 
     | 
    
         
            +
                  </ds:SignedInfo>
         
     | 
| 
      
 22 
     | 
    
         
            +
                  <ds:SignatureValue>bq1zDllmAFzx0O3HAAoedSqQIl/n2+mK2Vx1pK0/yEpuc84ovwmau/ZfHk3MFNQjuxL+JmlO7I3c6CEmOGeAupFTpnFGkRfJGSu6ilvcL4yasPq80LNEcCYhApiEW2pJXs5t3sfOdG2MJHTuMvz4MtnrLd9Cuf/EQK2a27HDrB4=</ds:SignatureValue>
         
     | 
| 
      
 23 
     | 
    
         
            +
                  <KeyInfo xmlns="http://www.w3.org/2000/09/xmldsig#">
         
     | 
| 
      
 24 
     | 
    
         
            +
                    <ds:X509Data>
         
     | 
| 
      
 25 
     | 
    
         
            +
                      <ds:X509Certificate>LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURxekNDQXhTZ0F3SUJBZ0lCQVRBTkJna3Foa2lHOXcwQkFRc0ZBRENCaGpFTE1Ba0dBMVVFQmhNQ1FWVXgKRERBS0JnTlZCQWdUQTA1VFZ6RVBNQTBHQTFVRUJ4TUdVM2xrYm1WNU1Rd3dDZ1lEVlFRS0RBTlFTVlF4Q1RBSApCZ05WQkFzTUFERVlNQllHQTFVRUF3d1BiR0YzY21WdVkyVndhWFF1WTI5dE1TVXdJd1lKS29aSWh2Y05BUWtCCkRCWnNZWGR5Wlc1alpTNXdhWFJBWjIxaGFXd3VZMjl0TUI0WERURXlNRFF4T1RJeU5UUXhPRm9YRFRNeU1EUXgKTkRJeU5UUXhPRm93Z1lZeEN6QUpCZ05WQkFZVEFrRlZNUXd3Q2dZRFZRUUlFd05PVTFjeER6QU5CZ05WQkFjVApCbE41Wkc1bGVURU1NQW9HQTFVRUNnd0RVRWxVTVFrd0J3WURWUVFMREFBeEdEQVdCZ05WQkFNTUQyeGhkM0psCmJtTmxjR2wwTG1OdmJURWxNQ01HQ1NxR1NJYjNEUUVKQVF3V2JHRjNjbVZ1WTJVdWNHbDBRR2R0WVdsc0xtTnYKYlRDQm56QU5CZ2txaGtpRzl3MEJBUUVGQUFPQmpRQXdnWWtDZ1lFQXFqaWUzUjJvaStwRGFldndJeXMvbWJVVApubkdsa3h0ZGlrcnExMXZleHd4SmlQTmhtaHFSVzNtVXVKRXpsbElkVkw2RW14R1lUcXBxZjkzSGxoa3NhZUowCjhVZ2pQOVVtTVlyaFZKdTFqY0ZXVjdmei9yKzIxL2F3VG5EVjlzTVlRcXVJUllZeTdiRzByMU9iaXdkb3ZudGsKN2dGSTA2WjB2WmFjREU1Ym9xVUNBd0VBQWFPQ0FTVXdnZ0VoTUFrR0ExVWRFd1FDTUFBd0N3WURWUjBQQkFRRApBZ1VnTUIwR0ExVWREZ1FXQkJTUk9OOEdKOG8rOGpnRnRqa3R3WmRxeDZCUnlUQVRCZ05WSFNVRUREQUtCZ2dyCkJnRUZCUWNEQVRBZEJnbGdoa2dCaHZoQ0FRMEVFQllPVkdWemRDQllOVEE1SUdObGNuUXdnYk1HQTFVZEl3U0IKcXpDQnFJQVVrVGpmQmlmS1B2STRCYlk1TGNHWGFzZWdVY21oZ1l5a2dZa3dnWVl4Q3pBSkJnTlZCQVlUQWtGVgpNUXd3Q2dZRFZRUUlFd05PVTFjeER6QU5CZ05WQkFjVEJsTjVaRzVsZVRFTU1Bb0dBMVVFQ2d3RFVFbFVNUWt3CkJ3WURWUVFMREFBeEdEQVdCZ05WQkFNTUQyeGhkM0psYm1ObGNHbDBMbU52YlRFbE1DTUdDU3FHU0liM0RRRUoKQVF3V2JHRjNjbVZ1WTJVdWNHbDBRR2R0WVdsc0xtTnZiWUlCQVRBTkJna3Foa2lHOXcwQkFRc0ZBQU9CZ1FDRQpUQWVKVERTQVc2ejFVRlRWN1FyZWg0VUxGT1JhajkrZUN1RjNLV0RIYyswSVFDajlyZG5ERzRRL3dmNy9yYVEwCkpuUFFDU0NkclBMSmV5b1BIN1FhVHdvYUY3ZHpWdzRMQ3N5TkpURld4NGNNNTBWdzZSNWZET2dpQzhic2ZmUzgKQkptb3VscnJaRE5OVmpHOG1XNmNMeHJZdlZRT3JSVmVjQ0ZJZ3NzQ2JBPT0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=</ds:X509Certificate>
         
     | 
| 
      
 26 
     | 
    
         
            +
                    </ds:X509Data>
         
     | 
| 
      
 27 
     | 
    
         
            +
                  </KeyInfo>
         
     | 
| 
      
 28 
     | 
    
         
            +
                </ds:Signature>
         
     | 
| 
      
 29 
     | 
    
         
            +
                <Subject>
         
     | 
| 
      
 30 
     | 
    
         
            +
                  <NameID Format="urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress">hello@example.com</NameID>
         
     | 
| 
      
 31 
     | 
    
         
            +
                  <SubjectConfirmation Method="urn:oasis:names:tc:SAML:2.0:cm:bearer">
         
     | 
| 
      
 32 
     | 
    
         
            +
                    <SubjectConfirmationData InResponseTo="_fc4a34b0-7efb-012e-caae-782bcb13bb38" NotOnOrAfter="2011-06-22T12:54:30.348Z" Recipient="https://someone.example.com/endpoint"/>
         
     | 
| 
      
 33 
     | 
    
         
            +
                  </SubjectConfirmation>
         
     | 
| 
      
 34 
     | 
    
         
            +
                </Subject>
         
     | 
| 
      
 35 
     | 
    
         
            +
                <Conditions NotBefore="2011-06-22T12:49:30.332Z" NotOnOrAfter="2011-06-22T13:49:30.332Z">
         
     | 
| 
      
 36 
     | 
    
         
            +
                  <AudienceRestriction>
         
     | 
| 
      
 37 
     | 
    
         
            +
                    <Audience>example.com</Audience>
         
     | 
| 
      
 38 
     | 
    
         
            +
                  </AudienceRestriction>
         
     | 
| 
      
 39 
     | 
    
         
            +
                </Conditions>
         
     | 
| 
      
 40 
     | 
    
         
            +
                <AuthnStatement AuthnInstant="2011-06-22T12:49:30.112Z" SessionIndex="_721b4a5a-d7e1-4861-9754-a9b197b6f9ab">
         
     | 
| 
      
 41 
     | 
    
         
            +
                  <AuthnContext>
         
     | 
| 
      
 42 
     | 
    
         
            +
                    <AuthnContextClassRef>urn:oasis:names:tc:SAML:2.0:ac:classes:PasswordProtectedTransport</AuthnContextClassRef>
         
     | 
| 
      
 43 
     | 
    
         
            +
                  </AuthnContext>
         
     | 
| 
      
 44 
     | 
    
         
            +
                </AuthnStatement>
         
     | 
| 
      
 45 
     | 
    
         
            +
              </Assertion>
         
     | 
| 
      
 46 
     | 
    
         
            +
            </samlp:Response>
         
     | 
| 
         @@ -0,0 +1,46 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            <?xml version="1.0"?>
         
     | 
| 
      
 2 
     | 
    
         
            +
            <samlp:Response xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol" ID="_0263a07b-205f-479c-90fc-7495715ecbbf" Version="2.0" IssueInstant="2011-06-22T12:49:30.348Z" Destination="https://someone.example.com/endpoint" Consent="urn:oasis:names:tc:SAML:2.0:consent:unspecified" InResponseTo="_fc4a34b0-7efb-012e-caae-782bcb13bb38">
         
     | 
| 
      
 3 
     | 
    
         
            +
              <Issuer xmlns="urn:oasis:names:tc:SAML:2.0:assertion">http://login.example.com/issuer</Issuer>
         
     | 
| 
      
 4 
     | 
    
         
            +
              <samlp:Status>
         
     | 
| 
      
 5 
     | 
    
         
            +
                <samlp:StatusCode Value="urn:oasis:names:tc:SAML:2.0:status:Success"/>
         
     | 
| 
      
 6 
     | 
    
         
            +
              </samlp:Status>
         
     | 
| 
      
 7 
     | 
    
         
            +
              <Assertion xmlns="urn:oasis:names:tc:SAML:2.0:assertion" ID="_721b4a5a-d7e1-4861-9754-a9b197b6f9ab" IssueInstant="2011-06-22T12:49:30.348Z" Version="2.0">
         
     | 
| 
      
 8 
     | 
    
         
            +
                <Issuer>http://login.example.com/issuer</Issuer>
         
     | 
| 
      
 9 
     | 
    
         
            +
                <ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
         
     | 
| 
      
 10 
     | 
    
         
            +
                  <ds:SignedInfo>
         
     | 
| 
      
 11 
     | 
    
         
            +
                    <ds:CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
         
     | 
| 
      
 12 
     | 
    
         
            +
                    <ds:SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#rsa-sha512"/>
         
     | 
| 
      
 13 
     | 
    
         
            +
                    <ds:Reference URI="#_721b4a5a-d7e1-4861-9754-a9b197b6f9ab">
         
     | 
| 
      
 14 
     | 
    
         
            +
                      <ds:Transforms>
         
     | 
| 
      
 15 
     | 
    
         
            +
                        <ds:Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/>
         
     | 
| 
      
 16 
     | 
    
         
            +
                        <ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
         
     | 
| 
      
 17 
     | 
    
         
            +
                      </ds:Transforms>
         
     | 
| 
      
 18 
     | 
    
         
            +
                      <ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha512"/>
         
     | 
| 
      
 19 
     | 
    
         
            +
                      <ds:DigestValue>ZiOdC+GEvslNaP+yncB5droDFBwPeK9EjIpQ2LEI+y/3KPtIjGlp+eEQTVROxq3pqxJiNmSHJvtHzxytxzZsew==</ds:DigestValue>
         
     | 
| 
      
 20 
     | 
    
         
            +
                    </ds:Reference>
         
     | 
| 
      
 21 
     | 
    
         
            +
                  </ds:SignedInfo>
         
     | 
| 
      
 22 
     | 
    
         
            +
                  <ds:SignatureValue>JyaWS+PkmpsYZOcjb1Hws3RL1hlyfBY9VeUb7R/5UbeaESpS5Pe2dpfbYWZiOmY/3aYmkv9AEgveVwjddwp+wTQ4jZ91LG8L+ObX1Coq/j0Yj8aXeOBMxdueYmvJQGjHSEn2z0oKypGnbzM5gP/V8Aixa+e1/Kv+A/GcOX1K4SA=</ds:SignatureValue>
         
     | 
| 
      
 23 
     | 
    
         
            +
                  <KeyInfo xmlns="http://www.w3.org/2000/09/xmldsig#">
         
     | 
| 
      
 24 
     | 
    
         
            +
                    <ds:X509Data>
         
     | 
| 
      
 25 
     | 
    
         
            +
                      <ds:X509Certificate>LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURxekNDQXhTZ0F3SUJBZ0lCQVRBTkJna3Foa2lHOXcwQkFRc0ZBRENCaGpFTE1Ba0dBMVVFQmhNQ1FWVXgKRERBS0JnTlZCQWdUQTA1VFZ6RVBNQTBHQTFVRUJ4TUdVM2xrYm1WNU1Rd3dDZ1lEVlFRS0RBTlFTVlF4Q1RBSApCZ05WQkFzTUFERVlNQllHQTFVRUF3d1BiR0YzY21WdVkyVndhWFF1WTI5dE1TVXdJd1lKS29aSWh2Y05BUWtCCkRCWnNZWGR5Wlc1alpTNXdhWFJBWjIxaGFXd3VZMjl0TUI0WERURXlNRFF4T1RJeU5UUXhPRm9YRFRNeU1EUXgKTkRJeU5UUXhPRm93Z1lZeEN6QUpCZ05WQkFZVEFrRlZNUXd3Q2dZRFZRUUlFd05PVTFjeER6QU5CZ05WQkFjVApCbE41Wkc1bGVURU1NQW9HQTFVRUNnd0RVRWxVTVFrd0J3WURWUVFMREFBeEdEQVdCZ05WQkFNTUQyeGhkM0psCmJtTmxjR2wwTG1OdmJURWxNQ01HQ1NxR1NJYjNEUUVKQVF3V2JHRjNjbVZ1WTJVdWNHbDBRR2R0WVdsc0xtTnYKYlRDQm56QU5CZ2txaGtpRzl3MEJBUUVGQUFPQmpRQXdnWWtDZ1lFQXFqaWUzUjJvaStwRGFldndJeXMvbWJVVApubkdsa3h0ZGlrcnExMXZleHd4SmlQTmhtaHFSVzNtVXVKRXpsbElkVkw2RW14R1lUcXBxZjkzSGxoa3NhZUowCjhVZ2pQOVVtTVlyaFZKdTFqY0ZXVjdmei9yKzIxL2F3VG5EVjlzTVlRcXVJUllZeTdiRzByMU9iaXdkb3ZudGsKN2dGSTA2WjB2WmFjREU1Ym9xVUNBd0VBQWFPQ0FTVXdnZ0VoTUFrR0ExVWRFd1FDTUFBd0N3WURWUjBQQkFRRApBZ1VnTUIwR0ExVWREZ1FXQkJTUk9OOEdKOG8rOGpnRnRqa3R3WmRxeDZCUnlUQVRCZ05WSFNVRUREQUtCZ2dyCkJnRUZCUWNEQVRBZEJnbGdoa2dCaHZoQ0FRMEVFQllPVkdWemRDQllOVEE1SUdObGNuUXdnYk1HQTFVZEl3U0IKcXpDQnFJQVVrVGpmQmlmS1B2STRCYlk1TGNHWGFzZWdVY21oZ1l5a2dZa3dnWVl4Q3pBSkJnTlZCQVlUQWtGVgpNUXd3Q2dZRFZRUUlFd05PVTFjeER6QU5CZ05WQkFjVEJsTjVaRzVsZVRFTU1Bb0dBMVVFQ2d3RFVFbFVNUWt3CkJ3WURWUVFMREFBeEdEQVdCZ05WQkFNTUQyeGhkM0psYm1ObGNHbDBMbU52YlRFbE1DTUdDU3FHU0liM0RRRUoKQVF3V2JHRjNjbVZ1WTJVdWNHbDBRR2R0WVdsc0xtTnZiWUlCQVRBTkJna3Foa2lHOXcwQkFRc0ZBQU9CZ1FDRQpUQWVKVERTQVc2ejFVRlRWN1FyZWg0VUxGT1JhajkrZUN1RjNLV0RIYyswSVFDajlyZG5ERzRRL3dmNy9yYVEwCkpuUFFDU0NkclBMSmV5b1BIN1FhVHdvYUY3ZHpWdzRMQ3N5TkpURld4NGNNNTBWdzZSNWZET2dpQzhic2ZmUzgKQkptb3VscnJaRE5OVmpHOG1XNmNMeHJZdlZRT3JSVmVjQ0ZJZ3NzQ2JBPT0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=</ds:X509Certificate>
         
     | 
| 
      
 26 
     | 
    
         
            +
                    </ds:X509Data>
         
     | 
| 
      
 27 
     | 
    
         
            +
                  </KeyInfo>
         
     | 
| 
      
 28 
     | 
    
         
            +
                </ds:Signature>
         
     | 
| 
      
 29 
     | 
    
         
            +
                <Subject>
         
     | 
| 
      
 30 
     | 
    
         
            +
                  <NameID Format="urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress">hello@example.com</NameID>
         
     | 
| 
      
 31 
     | 
    
         
            +
                  <SubjectConfirmation Method="urn:oasis:names:tc:SAML:2.0:cm:bearer">
         
     | 
| 
      
 32 
     | 
    
         
            +
                    <SubjectConfirmationData InResponseTo="_fc4a34b0-7efb-012e-caae-782bcb13bb38" NotOnOrAfter="2011-06-22T12:54:30.348Z" Recipient="https://someone.example.com/endpoint"/>
         
     | 
| 
      
 33 
     | 
    
         
            +
                  </SubjectConfirmation>
         
     | 
| 
      
 34 
     | 
    
         
            +
                </Subject>
         
     | 
| 
      
 35 
     | 
    
         
            +
                <Conditions NotBefore="2011-06-22T12:49:30.332Z" NotOnOrAfter="2011-06-22T13:49:30.332Z">
         
     | 
| 
      
 36 
     | 
    
         
            +
                  <AudienceRestriction>
         
     | 
| 
      
 37 
     | 
    
         
            +
                    <Audience>example.com</Audience>
         
     | 
| 
      
 38 
     | 
    
         
            +
                  </AudienceRestriction>
         
     | 
| 
      
 39 
     | 
    
         
            +
                </Conditions>
         
     | 
| 
      
 40 
     | 
    
         
            +
                <AuthnStatement AuthnInstant="2011-06-22T12:49:30.112Z" SessionIndex="_721b4a5a-d7e1-4861-9754-a9b197b6f9ab">
         
     | 
| 
      
 41 
     | 
    
         
            +
                  <AuthnContext>
         
     | 
| 
      
 42 
     | 
    
         
            +
                    <AuthnContextClassRef>urn:oasis:names:tc:SAML:2.0:ac:classes:PasswordProtectedTransport</AuthnContextClassRef>
         
     | 
| 
      
 43 
     | 
    
         
            +
                  </AuthnContext>
         
     | 
| 
      
 44 
     | 
    
         
            +
                </AuthnStatement>
         
     | 
| 
      
 45 
     | 
    
         
            +
              </Assertion>
         
     | 
| 
      
 46 
     | 
    
         
            +
            </samlp:Response>
         
     | 
| 
         @@ -0,0 +1,48 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            <?xml version="1.0"?>
         
     | 
| 
      
 2 
     | 
    
         
            +
            <samlp:Response xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol" ID="_6b02a2b5-496b-4acc-a3c5-c86d0e9a3825" Version="2.0" IssueInstant="2012-04-04T07:33:10.921Z" Destination="https://example.com/endpoint">
         
     | 
| 
      
 3 
     | 
    
         
            +
              <saml:Issuer xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion">idp.example.com</saml:Issuer>
         
     | 
| 
      
 4 
     | 
    
         
            +
              <samlp:Status>
         
     | 
| 
      
 5 
     | 
    
         
            +
                <samlp:StatusCode Value="urn:oasis:names:tc:SAML:2.0:status:Success"/>
         
     | 
| 
      
 6 
     | 
    
         
            +
              </samlp:Status>
         
     | 
| 
      
 7 
     | 
    
         
            +
              <saml:Assertion xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion" Version="2.0" ID="_cc084213-c9df-45ef-87a0-263f4da4f79b" IssueInstant="2012-04-04T07:33:10.923Z">
         
     | 
| 
      
 8 
     | 
    
         
            +
                <saml:Issuer>idp.myexample.org</saml:Issuer>
         
     | 
| 
      
 9 
     | 
    
         
            +
                <Signature xmlns="http://www.w3.org/2000/09/xmldsig#">
         
     | 
| 
      
 10 
     | 
    
         
            +
                  <SignedInfo>
         
     | 
| 
      
 11 
     | 
    
         
            +
                    <CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
         
     | 
| 
      
 12 
     | 
    
         
            +
                    <SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1"/>
         
     | 
| 
      
 13 
     | 
    
         
            +
                    <Reference URI="#_cc084213-c9df-45ef-87a0-263f4da4f79b">
         
     | 
| 
      
 14 
     | 
    
         
            +
                      <Transforms>
         
     | 
| 
      
 15 
     | 
    
         
            +
                        <Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/>
         
     | 
| 
      
 16 
     | 
    
         
            +
                        <Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#">
         
     | 
| 
      
 17 
     | 
    
         
            +
                          <InclusiveNamespaces xmlns="http://www.w3.org/2001/10/xml-exc-c14n#" PrefixList="#default saml ds xs xsi"/>
         
     | 
| 
      
 18 
     | 
    
         
            +
                        </Transform>
         
     | 
| 
      
 19 
     | 
    
         
            +
                      </Transforms>
         
     | 
| 
      
 20 
     | 
    
         
            +
                      <DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>
         
     | 
| 
      
 21 
     | 
    
         
            +
                      <DigestValue>WFNjs7vC+IquRrJ7v7Q2YGGa7R0=</DigestValue>
         
     | 
| 
      
 22 
     | 
    
         
            +
                    </Reference>
         
     | 
| 
      
 23 
     | 
    
         
            +
                  </SignedInfo>
         
     | 
| 
      
 24 
     | 
    
         
            +
                  <SignatureValue>MmuXQdjutiuP7soIaB7nk9wSR8OGkmyH5n9aelMTOrV7gTVNDazgQ/GXMmYXTTrhdvGN65duLO0oYdsYGxwNIjlA1lYhoGeBgYuIB/4iKZ6oLSDgjMcQxHkSW1OJ8pIEuUa/3MPUUjaSlTg0me4WRxVdXp34A9Mtlj0DgrK9m0A=</SignatureValue>
         
     | 
| 
      
 25 
     | 
    
         
            +
                  <KeyInfo>
         
     | 
| 
      
 26 
     | 
    
         
            +
                    <X509Data>
         
     | 
| 
      
 27 
     | 
    
         
            +
                  <X509Certificate>LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUQwRENDQXptZ0F3SUJBZ0lCQVRBTkJna3Foa2lHOXcwQkFRVUZBRENCaGpFTE1Ba0dBMVVFQmhNQ1FWVXgKRERBS0JnTlZCQWdUQTA1VFZ6RVBNQTBHQTFVRUJ4TUdVM2xrYm1WNU1Rd3dDZ1lEVlFRS0RBTlFTVlF4Q1RBSApCZ05WQkFzTUFERVlNQllHQTFVRUF3d1BiR0YzY21WdVkyVndhWFF1WTI5dE1TVXdJd1lKS29aSWh2Y05BUWtCCkRCWnNZWGR5Wlc1alpTNXdhWFJBWjIxaGFXd3VZMjl0TUI0WERURXlNRFF4T0RBMU1qVTFPVm9YRFRNeU1EUXgKTXpBMU1qVTFPVm93Z1lZeEN6QUpCZ05WQkFZVEFrRlZNUXd3Q2dZRFZRUUlFd05PVTFjeER6QU5CZ05WQkFjVApCbE41Wkc1bGVURU1NQW9HQTFVRUNnd0RVRWxVTVFrd0J3WURWUVFMREFBeEdEQVdCZ05WQkFNTUQyeGhkM0psCmJtTmxjR2wwTG1OdmJURWxNQ01HQ1NxR1NJYjNEUUVKQVF3V2JHRjNjbVZ1WTJVdWNHbDBRR2R0WVdsc0xtTnYKYlRDQm56QU5CZ2txaGtpRzl3MEJBUUVGQUFPQmpRQXdnWWtDZ1lFQW9mR3p4NFZvQzZDSENYdFJPdkVLSFRzRAppNkFBWCtoVWpiSVloeERsZUxMZUNVemZDaVVXOFkwbTVrWkVKbjJXSmt5Si8wRFdPZmE5b0c1ZUg1eXNKSWpVCnpTUjVkMGJldmJZMEV1OHJDTmh3S001UzdYaXltTzBGc09mcnh6TkJxbVRBblE2VFJYT25nY1BYTitXRWd4cmQKZDVoV1V5ZXh2dkQ2d05McWdVRUNBd0VBQWFPQ0FVb3dnZ0ZHTUFrR0ExVWRFd1FDTUFBd0N3WURWUjBQQkFRRApBZ1VnTUIwR0ExVWREZ1FXQkJRMk1xTFZwRnlyVmNNaGFXMzRHanFkTVF6c3dqQVRCZ05WSFNVRUREQUtCZ2dyCkJnRUZCUWNEQVRCQ0JnbGdoa2dCaHZoQ0FRMEVOUll6VkdWemRDQllOVEE1SUdObGNuUWdZM0psWVhSbFpDQm0KYjNJZ1QyNWxURzluYVc0Z1lua2dUR0YzY21WdVkyVWdVR2wwTUlHekJnTlZIU01FZ2Fzd2dhaUFGRFl5b3RXawpYS3RWd3lGcGJmZ2FPcDB4RE96Q29ZR01wSUdKTUlHR01Rc3dDUVlEVlFRR0V3SkJWVEVNTUFvR0ExVUVDQk1EClRsTlhNUTh3RFFZRFZRUUhFd1pUZVdSdVpYa3hEREFLQmdOVkJBb01BMUJKVkRFSk1BY0dBMVVFQ3d3QU1SZ3cKRmdZRFZRUUREQTlzWVhkeVpXNWpaWEJwZEM1amIyMHhKVEFqQmdrcWhraUc5dzBCQ1FFTUZteGhkM0psYm1ObApMbkJwZEVCbmJXRnBiQzVqYjIyQ0FRRXdEUVlKS29aSWh2Y05BUUVGQlFBRGdZRUFOM2VRMUM5T0JJbVgvdWZGClNIUC9FeUxPQjJPQ1dqdlNpSytNbndQRWsralRRdDZZYXIxMkRacWVnRGhrWC92OGplTWh4VnpwaStBcHA4M0YKYWFmUE54UFJYc01FTFRCblhDQUJ1YzZEakxBaFlvNGQ4TDhCWUovVjlxLzZRMzdNYVZmc0ZKWVVKNmFBQUppWQpwd1RMUWJidFpqaytZc0s5TzZFR1U4ZjE5djg9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K</X509Certificate>
         
     | 
| 
      
 28 
     | 
    
         
            +
                    </X509Data>
         
     | 
| 
      
 29 
     | 
    
         
            +
                  </KeyInfo>
         
     | 
| 
      
 30 
     | 
    
         
            +
                </Signature>
         
     | 
| 
      
 31 
     | 
    
         
            +
                <saml:Subject>
         
     | 
| 
      
 32 
     | 
    
         
            +
                  <saml:NameID NameQualifier="idp.example.com" Format="urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress">someone@example.org</saml:NameID>
         
     | 
| 
      
 33 
     | 
    
         
            +
                  <saml:SubjectConfirmation Method="urn:oasis:names:tc:SAML:2.0:cm:bearer">
         
     | 
| 
      
 34 
     | 
    
         
            +
                    <saml:SubjectConfirmationData Recipient="https://example.com/endpoint" InResponseTo="_f7201940-6055-012f-3bc1-782bcb13c426"/>
         
     | 
| 
      
 35 
     | 
    
         
            +
                  </saml:SubjectConfirmation>
         
     | 
| 
      
 36 
     | 
    
         
            +
                </saml:Subject>
         
     | 
| 
      
 37 
     | 
    
         
            +
                <saml:Conditions NotBefore="2012-04-04T07:28:11.442Z" NotOnOrAfter="2012-04-04T07:38:11.442Z">
         
     | 
| 
      
 38 
     | 
    
         
            +
                  <saml:AudienceRestriction>
         
     | 
| 
      
 39 
     | 
    
         
            +
                    <saml:Audience>example.com</saml:Audience>
         
     | 
| 
      
 40 
     | 
    
         
            +
                  </saml:AudienceRestriction>
         
     | 
| 
      
 41 
     | 
    
         
            +
                </saml:Conditions>
         
     | 
| 
      
 42 
     | 
    
         
            +
                <saml:AuthnStatement AuthnInstant="2012-04-04T07:33:11.442Z">
         
     | 
| 
      
 43 
     | 
    
         
            +
                  <saml:AuthnContext>
         
     | 
| 
      
 44 
     | 
    
         
            +
                    <saml:AuthnContextClassRef>urn:oasis:names:tc:SAML:2.0:ac:classes:PasswordProtectedTransport</saml:AuthnContextClassRef>
         
     | 
| 
      
 45 
     | 
    
         
            +
                  </saml:AuthnContext>
         
     | 
| 
      
 46 
     | 
    
         
            +
                </saml:AuthnStatement>
         
     | 
| 
      
 47 
     | 
    
         
            +
              </saml:Assertion>
         
     | 
| 
      
 48 
     | 
    
         
            +
            </samlp:Response>
         
     | 
| 
         @@ -0,0 +1,56 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            <?xml version="1.0" encoding="UTF-8"?>
         
     | 
| 
      
 2 
     | 
    
         
            +
            <saml2p:Response xmlns:saml2p="urn:oasis:names:tc:SAML:2.0:protocol" xmlns:xs="http://www.w3.org/2001/XMLSchema" Destination="https://example.hello.com/access/saml" ID="jVFQbyEpSfUwqhZtJtarIaGoshwuAQMDwLoiMhzJXsv" InResponseTo="cfeooghajnhofcmogakmlhpkohnmikicnfhdnjlc" IssueInstant="2011-06-21T13:54:38.661Z" Version="2.0">
         
     | 
| 
      
 3 
     | 
    
         
            +
              <saml2:Issuer xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion">https://idm.orademo.com</saml2:Issuer>
         
     | 
| 
      
 4 
     | 
    
         
            +
              <ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
         
     | 
| 
      
 5 
     | 
    
         
            +
                <ds:SignedInfo>
         
     | 
| 
      
 6 
     | 
    
         
            +
                  <ds:CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
         
     | 
| 
      
 7 
     | 
    
         
            +
                  <ds:SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1"/>
         
     | 
| 
      
 8 
     | 
    
         
            +
                  <ds:Reference URI="#jVFQbyEpSfUwqhZtJtarIaGoshwuAQMDwLoiMhzJXsv">
         
     | 
| 
      
 9 
     | 
    
         
            +
                    <ds:Transforms>
         
     | 
| 
      
 10 
     | 
    
         
            +
                      <ds:Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/>
         
     | 
| 
      
 11 
     | 
    
         
            +
                      <ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#">
         
     | 
| 
      
 12 
     | 
    
         
            +
                        <ec:InclusiveNamespaces xmlns:ec="http://www.w3.org/2001/10/xml-exc-c14n#" PrefixList="xs"/>
         
     | 
| 
      
 13 
     | 
    
         
            +
                      </ds:Transform>
         
     | 
| 
      
 14 
     | 
    
         
            +
                    </ds:Transforms>
         
     | 
| 
      
 15 
     | 
    
         
            +
                    <ds:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>
         
     | 
| 
      
 16 
     | 
    
         
            +
                    <ds:DigestValue>uHuSry39P16Yh7srS32xESmj4Lw=</ds:DigestValue>
         
     | 
| 
      
 17 
     | 
    
         
            +
                  </ds:Reference>
         
     | 
| 
      
 18 
     | 
    
         
            +
                </ds:SignedInfo>
         
     | 
| 
      
 19 
     | 
    
         
            +
                <ds:SignatureValue>fdghdfggfd=</ds:SignatureValue>
         
     | 
| 
      
 20 
     | 
    
         
            +
                <ds:KeyInfo>
         
     | 
| 
      
 21 
     | 
    
         
            +
                  <ds:X509Data>
         
     | 
| 
      
 22 
     | 
    
         
            +
                    <ds:X509Certificate>dfghjkl</ds:X509Certificate>
         
     | 
| 
      
 23 
     | 
    
         
            +
                  </ds:X509Data>
         
     | 
| 
      
 24 
     | 
    
         
            +
                </ds:KeyInfo>
         
     | 
| 
      
 25 
     | 
    
         
            +
              </ds:Signature>
         
     | 
| 
      
 26 
     | 
    
         
            +
              <saml2p:Status>
         
     | 
| 
      
 27 
     | 
    
         
            +
                <saml2p:StatusCode Value="urn:oasis:names:tc:SAML:2.0:status:Success"/>
         
     | 
| 
      
 28 
     | 
    
         
            +
              </saml2p:Status>
         
     | 
| 
      
 29 
     | 
    
         
            +
              <saml2:Assertion xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion" ID="emmCjammnYdAbMWDuMAJeZvQIMBayeeYqqwvQoDclKE" IssueInstant="2011-06-21T13:54:38.676Z" Version="2.0">
         
     | 
| 
      
 30 
     | 
    
         
            +
                <saml2:Issuer>https://idm.orademo.com</saml2:Issuer>
         
     | 
| 
      
 31 
     | 
    
         
            +
                <saml2:Subject>
         
     | 
| 
      
 32 
     | 
    
         
            +
                  <saml2:NameID Format="urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress" NameQualifier="idp.example.org">someone@example.org</saml2:NameID>
         
     | 
| 
      
 33 
     | 
    
         
            +
                  <saml2:SubjectConfirmation Method="urn:oasis:names:tc:SAML:2.0:cm:bearer">
         
     | 
| 
      
 34 
     | 
    
         
            +
                    <saml2:SubjectConfirmationData InResponseTo="cfeooghajnhofcmogakmlhpkohnmikicnfhdnjlc" NotOnOrAfter="2011-06-21T14:09:38.676Z" Recipient="https://example.hello.com/access/saml"/>
         
     | 
| 
      
 35 
     | 
    
         
            +
                  </saml2:SubjectConfirmation>
         
     | 
| 
      
 36 
     | 
    
         
            +
                </saml2:Subject>
         
     | 
| 
      
 37 
     | 
    
         
            +
                <saml2:Conditions NotBefore="2011-06-21T13:54:38.683Z" NotOnOrAfter="2011-06-21T14:09:38.683Z">
         
     | 
| 
      
 38 
     | 
    
         
            +
                  <saml2:AudienceRestriction>
         
     | 
| 
      
 39 
     | 
    
         
            +
                    <saml2:Audience>hello.com</saml2:Audience>
         
     | 
| 
      
 40 
     | 
    
         
            +
                  </saml2:AudienceRestriction>
         
     | 
| 
      
 41 
     | 
    
         
            +
                </saml2:Conditions>
         
     | 
| 
      
 42 
     | 
    
         
            +
                <saml2:AuthnStatement AuthnInstant="2011-06-21T13:54:38.685Z" SessionIndex="perdkjfskdjfksdiertusfsdfsddeurtherukjdfgkdffg">
         
     | 
| 
      
 43 
     | 
    
         
            +
                  <saml2:AuthnContext>
         
     | 
| 
      
 44 
     | 
    
         
            +
                    <saml2:AuthnContextClassRef>urn:oasis:names:tc:SAML:2.0:ac:classes:PasswordProtectedTransport</saml2:AuthnContextClassRef>
         
     | 
| 
      
 45 
     | 
    
         
            +
                  </saml2:AuthnContext>
         
     | 
| 
      
 46 
     | 
    
         
            +
                </saml2:AuthnStatement>
         
     | 
| 
      
 47 
     | 
    
         
            +
                <saml2:AttributeStatement>
         
     | 
| 
      
 48 
     | 
    
         
            +
                  <saml2:Attribute Name="FirstName">
         
     | 
| 
      
 49 
     | 
    
         
            +
                    <saml2:AttributeValue xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="xs:string">Someone</saml2:AttributeValue>
         
     | 
| 
      
 50 
     | 
    
         
            +
                  </saml2:Attribute>
         
     | 
| 
      
 51 
     | 
    
         
            +
                  <saml2:Attribute Name="LastName">
         
     | 
| 
      
 52 
     | 
    
         
            +
                    <saml2:AttributeValue xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="xs:string">Special</saml2:AttributeValue>
         
     | 
| 
      
 53 
     | 
    
         
            +
                  </saml2:Attribute>
         
     | 
| 
      
 54 
     | 
    
         
            +
                </saml2:AttributeStatement>
         
     | 
| 
      
 55 
     | 
    
         
            +
              </saml2:Assertion>
         
     | 
| 
      
 56 
     | 
    
         
            +
            </saml2p:Response>
         
     |