Commit db0e70f

mo <mo@mokhan.ca>
2017-12-14 18:47:39
decouple from deprecated method.
1 parent 16e9cac
Changed files (3)
lib
spec
saml
lib/saml/kit/bindings/url_builder.rb
@@ -21,7 +21,7 @@ module Saml
         private
 
         def signature_for(payload)
-          private_key = configuration.signing_private_key
+          private_key = configuration.private_keys(use: :signing).sample
           encode(private_key.sign(OpenSSL::Digest::SHA256.new, payload))
         end
 
lib/saml/kit/signatures.rb
@@ -14,7 +14,7 @@ module Saml
 
       def complete(raw_xml)
         return raw_xml unless configuration.sign?
-        private_key = configuration.signing_private_key
+        private_key = configuration.private_keys(use: :signing).sample
         Xmldsig::SignedDocument.new(raw_xml).sign(private_key)
       end
     end
spec/saml/bindings/url_builder_spec.rb
@@ -61,7 +61,8 @@ RSpec.describe Saml::Kit::Bindings::UrlBuilder do
           payload = "#{query_string_parameter}=#{query_params[query_string_parameter]}"
           payload << "&RelayState=#{query_params['RelayState']}"
           payload << "&SigAlg=#{query_params['SigAlg']}"
-          expected_signature = Base64.strict_encode64(configuration.signing_private_key.sign(OpenSSL::Digest::SHA256.new, payload))
+          private_key = configuration.private_keys(use: :signing).sample
+          expected_signature = Base64.strict_encode64(private_key.sign(OpenSSL::Digest::SHA256.new, payload))
           expect(query_params['Signature']).to eql(expected_signature)
         end
 
@@ -72,7 +73,8 @@ RSpec.describe Saml::Kit::Bindings::UrlBuilder do
 
           payload = "#{query_string_parameter}=#{query_params[query_string_parameter]}"
           payload << "&SigAlg=#{query_params['SigAlg']}"
-          expected_signature = Base64.strict_encode64(configuration.signing_private_key.sign(OpenSSL::Digest::SHA256.new, payload))
+          private_key = configuration.private_keys(use: :signing).sample
+          expected_signature = Base64.strict_encode64(private_key.sign(OpenSSL::Digest::SHA256.new, payload))
           expect(query_params['Signature']).to eql(expected_signature)
         end
       end