From 8a825f360d3dc7cb937623b666d6e2f67669bf65 Mon Sep 17 00:00:00 2001 From: Nikos Dimitrakopoulos Date: Tue, 26 Mar 2013 10:09:42 +0200 Subject: [PATCH] Support for "passive" SAML 2.0 AuthnRequest. --- lib/onelogin/ruby-saml/authrequest.rb | 1 + lib/onelogin/ruby-saml/settings.rb | 1 + test/request_test.rb | 17 +++++++++++++++++ test/settings_test.rb | 4 +++- 4 files changed, 22 insertions(+), 1 deletion(-) diff --git a/lib/onelogin/ruby-saml/authrequest.rb b/lib/onelogin/ruby-saml/authrequest.rb index b31d001b6..eb7546a3f 100644 --- a/lib/onelogin/ruby-saml/authrequest.rb +++ b/lib/onelogin/ruby-saml/authrequest.rb @@ -44,6 +44,7 @@ def create_authentication_xml_doc(settings) root.attributes['IssueInstant'] = time root.attributes['Version'] = "2.0" root.attributes['Destination'] = settings.idp_sso_target_url unless settings.idp_sso_target_url.nil? + root.attributes['IsPassive'] = settings.passive unless settings.passive.nil? # Conditionally defined elements based on settings if settings.assertion_consumer_service_url != nil diff --git a/lib/onelogin/ruby-saml/settings.rb b/lib/onelogin/ruby-saml/settings.rb index b39d5c577..56f42230d 100644 --- a/lib/onelogin/ruby-saml/settings.rb +++ b/lib/onelogin/ruby-saml/settings.rb @@ -17,6 +17,7 @@ def initialize(overrides = {}) attr_accessor :assertion_consumer_logout_service_url attr_accessor :compress_request attr_accessor :double_quote_xml_attribute_values + attr_accessor :passive private diff --git a/test/request_test.rb b/test/request_test.rb index aa3c7129b..a962c6189 100644 --- a/test/request_test.rb +++ b/test/request_test.rb @@ -46,6 +46,23 @@ class RequestTest < Test::Unit::TestCase assert_match /^ "http://sso.muda.no/slo", :idp_cert_fingerprint => "00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00", :name_identifier_format => "urn:oasis:names:tc:SAML:2.0:nameid-format:transient", + :passive => true, } @settings = Onelogin::Saml::Settings.new(config)