Class: OneLogin::KlRubySaml::Settings
- Inherits:
-
Object
- Object
- OneLogin::KlRubySaml::Settings
- Defined in:
- lib/onelogin/kl-ruby-saml/settings.rb
Overview
SAML2 Toolkit Settings
Instance Attribute Summary collapse
-
#assertion_consumer_logout_service_binding ⇒ Object
Returns the value of attribute assertion_consumer_logout_service_binding.
-
#assertion_consumer_logout_service_url ⇒ Object
Compability.
-
#assertion_consumer_service_binding ⇒ Object
Returns the value of attribute assertion_consumer_service_binding.
-
#assertion_consumer_service_url ⇒ Object
Returns the value of attribute assertion_consumer_service_url.
-
#attribute_consuming_service ⇒ Object
readonly
Returns the value of attribute attribute_consuming_service.
-
#attributes_index ⇒ Object
Returns the value of attribute attributes_index.
-
#authn_context ⇒ Object
Returns the value of attribute authn_context.
-
#authn_context_comparison ⇒ Object
Returns the value of attribute authn_context_comparison.
-
#authn_context_decl_ref ⇒ Object
Returns the value of attribute authn_context_decl_ref.
-
#certificate ⇒ Object
Returns the value of attribute certificate.
-
#compress_request ⇒ Object
Returns the value of attribute compress_request.
-
#compress_response ⇒ Object
Returns the value of attribute compress_response.
-
#double_quote_xml_attribute_values ⇒ Object
Returns the value of attribute double_quote_xml_attribute_values.
-
#force_authn ⇒ Object
Returns the value of attribute force_authn.
-
#idp_cert ⇒ Object
Returns the value of attribute idp_cert.
-
#idp_cert_fingerprint ⇒ Object
Returns the value of attribute idp_cert_fingerprint.
-
#idp_cert_fingerprint_algorithm ⇒ Object
Returns the value of attribute idp_cert_fingerprint_algorithm.
-
#idp_entity_id ⇒ Object
IdP Data.
-
#idp_slo_target_url ⇒ Object
Returns the value of attribute idp_slo_target_url.
-
#idp_sso_target_url ⇒ Object
Returns the value of attribute idp_sso_target_url.
-
#issuer ⇒ Object
SP Data.
-
#name_identifier_format ⇒ Object
Returns the value of attribute name_identifier_format.
-
#name_identifier_value ⇒ Object
Returns the value of attribute name_identifier_value.
-
#passive ⇒ Object
Returns the value of attribute passive.
-
#private_key ⇒ Object
Returns the value of attribute private_key.
-
#protocol_binding ⇒ Object
Returns the value of attribute protocol_binding.
-
#security ⇒ Object
Work-flow.
-
#sessionindex ⇒ Object
Returns the value of attribute sessionindex.
-
#soft ⇒ Object
Returns the value of attribute soft.
-
#sp_name_qualifier ⇒ Object
Returns the value of attribute sp_name_qualifier.
Instance Method Summary collapse
-
#get_fingerprint ⇒ String
Calculates the fingerprint of the IdP x509 certificate.
-
#get_idp_cert ⇒ OpenSSL::X509::Certificate|nil
Build the IdP certificate from the settings (previously format it).
-
#get_sp_cert ⇒ OpenSSL::X509::Certificate|nil
Build the SP certificate from the settings (previously format it).
-
#get_sp_key ⇒ OpenSSL::PKey::RSA
Build the SP private from the settings (previously format it).
-
#initialize(overrides = {}) ⇒ Settings
constructor
A new instance of Settings.
-
#single_logout_service_binding ⇒ String
Single Logout Service Binding.
-
#single_logout_service_binding=(url) ⇒ Object
Setter for Single Logout Service Binding.
-
#single_logout_service_url ⇒ String
Single Logout Service URL.
-
#single_logout_service_url=(url) ⇒ Object
Setter for the Single Logout Service URL.
Constructor Details
#initialize(overrides = {}) ⇒ Settings
Returns a new instance of Settings.
12 13 14 15 16 17 18 19 20 21 22 |
# File 'lib/onelogin/kl-ruby-saml/settings.rb', line 12 def initialize(overrides = {}) config = DEFAULTS.merge(overrides) config.each do |k,v| acc = "#{k.to_s}=".to_sym if respond_to? acc value = v.is_a?(Hash) ? v.dup : v send(acc, value) end end @attribute_consuming_service = AttributeService.new end |
Instance Attribute Details
#assertion_consumer_logout_service_binding ⇒ Object
Returns the value of attribute assertion_consumer_logout_service_binding.
57 58 59 |
# File 'lib/onelogin/kl-ruby-saml/settings.rb', line 57 def assertion_consumer_logout_service_binding @assertion_consumer_logout_service_binding end |
#assertion_consumer_logout_service_url ⇒ Object
Compability
56 57 58 |
# File 'lib/onelogin/kl-ruby-saml/settings.rb', line 56 def assertion_consumer_logout_service_url @assertion_consumer_logout_service_url end |
#assertion_consumer_service_binding ⇒ Object
Returns the value of attribute assertion_consumer_service_binding.
34 35 36 |
# File 'lib/onelogin/kl-ruby-saml/settings.rb', line 34 def assertion_consumer_service_binding @assertion_consumer_service_binding end |
#assertion_consumer_service_url ⇒ Object
Returns the value of attribute assertion_consumer_service_url.
33 34 35 |
# File 'lib/onelogin/kl-ruby-saml/settings.rb', line 33 def assertion_consumer_service_url @assertion_consumer_service_url end |
#attribute_consuming_service ⇒ Object (readonly)
Returns the value of attribute attribute_consuming_service.
51 52 53 |
# File 'lib/onelogin/kl-ruby-saml/settings.rb', line 51 def attribute_consuming_service @attribute_consuming_service end |
#attributes_index ⇒ Object
Returns the value of attribute attributes_index.
44 45 46 |
# File 'lib/onelogin/kl-ruby-saml/settings.rb', line 44 def attributes_index @attributes_index end |
#authn_context ⇒ Object
Returns the value of attribute authn_context.
48 49 50 |
# File 'lib/onelogin/kl-ruby-saml/settings.rb', line 48 def authn_context @authn_context end |
#authn_context_comparison ⇒ Object
Returns the value of attribute authn_context_comparison.
49 50 51 |
# File 'lib/onelogin/kl-ruby-saml/settings.rb', line 49 def authn_context_comparison @authn_context_comparison end |
#authn_context_decl_ref ⇒ Object
Returns the value of attribute authn_context_decl_ref.
50 51 52 |
# File 'lib/onelogin/kl-ruby-saml/settings.rb', line 50 def authn_context_decl_ref @authn_context_decl_ref end |
#certificate ⇒ Object
Returns the value of attribute certificate.
46 47 48 |
# File 'lib/onelogin/kl-ruby-saml/settings.rb', line 46 def certificate @certificate end |
#compress_request ⇒ Object
Returns the value of attribute compress_request.
39 40 41 |
# File 'lib/onelogin/kl-ruby-saml/settings.rb', line 39 def compress_request @compress_request end |
#compress_response ⇒ Object
Returns the value of attribute compress_response.
40 41 42 |
# File 'lib/onelogin/kl-ruby-saml/settings.rb', line 40 def compress_response @compress_response end |
#double_quote_xml_attribute_values ⇒ Object
Returns the value of attribute double_quote_xml_attribute_values.
41 42 43 |
# File 'lib/onelogin/kl-ruby-saml/settings.rb', line 41 def double_quote_xml_attribute_values @double_quote_xml_attribute_values end |
#force_authn ⇒ Object
Returns the value of attribute force_authn.
45 46 47 |
# File 'lib/onelogin/kl-ruby-saml/settings.rb', line 45 def force_authn @force_authn end |
#idp_cert ⇒ Object
Returns the value of attribute idp_cert.
28 29 30 |
# File 'lib/onelogin/kl-ruby-saml/settings.rb', line 28 def idp_cert @idp_cert end |
#idp_cert_fingerprint ⇒ Object
Returns the value of attribute idp_cert_fingerprint.
29 30 31 |
# File 'lib/onelogin/kl-ruby-saml/settings.rb', line 29 def idp_cert_fingerprint @idp_cert_fingerprint end |
#idp_cert_fingerprint_algorithm ⇒ Object
Returns the value of attribute idp_cert_fingerprint_algorithm.
30 31 32 |
# File 'lib/onelogin/kl-ruby-saml/settings.rb', line 30 def idp_cert_fingerprint_algorithm @idp_cert_fingerprint_algorithm end |
#idp_entity_id ⇒ Object
IdP Data
25 26 27 |
# File 'lib/onelogin/kl-ruby-saml/settings.rb', line 25 def idp_entity_id @idp_entity_id end |
#idp_slo_target_url ⇒ Object
Returns the value of attribute idp_slo_target_url.
27 28 29 |
# File 'lib/onelogin/kl-ruby-saml/settings.rb', line 27 def idp_slo_target_url @idp_slo_target_url end |
#idp_sso_target_url ⇒ Object
Returns the value of attribute idp_sso_target_url.
26 27 28 |
# File 'lib/onelogin/kl-ruby-saml/settings.rb', line 26 def idp_sso_target_url @idp_sso_target_url end |
#issuer ⇒ Object
SP Data
32 33 34 |
# File 'lib/onelogin/kl-ruby-saml/settings.rb', line 32 def issuer @issuer end |
#name_identifier_format ⇒ Object
Returns the value of attribute name_identifier_format.
36 37 38 |
# File 'lib/onelogin/kl-ruby-saml/settings.rb', line 36 def name_identifier_format @name_identifier_format end |
#name_identifier_value ⇒ Object
Returns the value of attribute name_identifier_value.
37 38 39 |
# File 'lib/onelogin/kl-ruby-saml/settings.rb', line 37 def name_identifier_value @name_identifier_value end |
#passive ⇒ Object
Returns the value of attribute passive.
42 43 44 |
# File 'lib/onelogin/kl-ruby-saml/settings.rb', line 42 def passive @passive end |
#private_key ⇒ Object
Returns the value of attribute private_key.
47 48 49 |
# File 'lib/onelogin/kl-ruby-saml/settings.rb', line 47 def private_key @private_key end |
#protocol_binding ⇒ Object
Returns the value of attribute protocol_binding.
43 44 45 |
# File 'lib/onelogin/kl-ruby-saml/settings.rb', line 43 def protocol_binding @protocol_binding end |
#security ⇒ Object
Work-flow
53 54 55 |
# File 'lib/onelogin/kl-ruby-saml/settings.rb', line 53 def security @security end |
#sessionindex ⇒ Object
Returns the value of attribute sessionindex.
38 39 40 |
# File 'lib/onelogin/kl-ruby-saml/settings.rb', line 38 def sessionindex @sessionindex end |
#soft ⇒ Object
Returns the value of attribute soft.
54 55 56 |
# File 'lib/onelogin/kl-ruby-saml/settings.rb', line 54 def soft @soft end |
#sp_name_qualifier ⇒ Object
Returns the value of attribute sp_name_qualifier.
35 36 37 |
# File 'lib/onelogin/kl-ruby-saml/settings.rb', line 35 def sp_name_qualifier @sp_name_qualifier end |
Instance Method Details
#get_fingerprint ⇒ String
Calculates the fingerprint of the IdP x509 certificate.
106 107 108 109 110 111 112 113 114 |
# File 'lib/onelogin/kl-ruby-saml/settings.rb', line 106 def get_fingerprint idp_cert_fingerprint || begin idp_cert = get_idp_cert if idp_cert fingerprint_alg = KlXMLSecurity::BaseDocument.new.algorithm(idp_cert_fingerprint_algorithm).new fingerprint_alg.hexdigest(idp_cert.to_der).upcase.scan(/../).join(":") end end end |
#get_idp_cert ⇒ OpenSSL::X509::Certificate|nil
Returns Build the IdP certificate from the settings (previously format it).
118 119 120 121 122 123 |
# File 'lib/onelogin/kl-ruby-saml/settings.rb', line 118 def get_idp_cert return nil if idp_cert.nil? || idp_cert.empty? formated_cert = OneLogin::KlRubySaml::Utils.format_cert(idp_cert) OpenSSL::X509::Certificate.new(formated_cert) end |
#get_sp_cert ⇒ OpenSSL::X509::Certificate|nil
Returns Build the SP certificate from the settings (previously format it).
127 128 129 130 131 132 |
# File 'lib/onelogin/kl-ruby-saml/settings.rb', line 127 def get_sp_cert return nil if certificate.nil? || certificate.empty? formated_cert = OneLogin::KlRubySaml::Utils.format_cert(certificate) OpenSSL::X509::Certificate.new(formated_cert) end |
#get_sp_key ⇒ OpenSSL::PKey::RSA
Returns Build the SP private from the settings (previously format it).
136 137 138 139 140 141 |
# File 'lib/onelogin/kl-ruby-saml/settings.rb', line 136 def get_sp_key return nil if private_key.nil? || private_key.empty? formated_private_key = OneLogin::KlRubySaml::Utils.format_private_key(private_key) OpenSSL::PKey::RSA.new(formated_private_key) end |
#single_logout_service_binding ⇒ String
Returns Single Logout Service Binding.
82 83 84 85 86 87 88 89 90 91 92 |
# File 'lib/onelogin/kl-ruby-saml/settings.rb', line 82 def single_logout_service_binding val = nil if @single_logout_service_binding.nil? if @assertion_consumer_logout_service_binding val = @assertion_consumer_logout_service_binding end else val = @single_logout_service_binding end val end |
#single_logout_service_binding=(url) ⇒ Object
Setter for Single Logout Service Binding.
(Currently we only support “urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect”)
99 100 101 |
# File 'lib/onelogin/kl-ruby-saml/settings.rb', line 99 def single_logout_service_binding=(url) @single_logout_service_binding = url end |
#single_logout_service_url ⇒ String
Returns Single Logout Service URL.
61 62 63 64 65 66 67 68 69 70 71 |
# File 'lib/onelogin/kl-ruby-saml/settings.rb', line 61 def single_logout_service_url val = nil if @single_logout_service_url.nil? if @assertion_consumer_logout_service_url val = @assertion_consumer_logout_service_url end else val = @single_logout_service_url end val end |
#single_logout_service_url=(url) ⇒ Object
Setter for the Single Logout Service URL.
76 77 78 |
# File 'lib/onelogin/kl-ruby-saml/settings.rb', line 76 def single_logout_service_url=(url) @single_logout_service_url = url end |