Class: Ciam::Saml::Settings
- Inherits:
-
Object
- Object
- Ciam::Saml::Settings
- Defined in:
- lib/ciam/ruby-saml/settings.rb
Instance Attribute Summary collapse
-
#assertion_consumer_service_binding ⇒ Object
Returns the value of attribute assertion_consumer_service_binding.
-
#assertion_consumer_service_index ⇒ Object
Returns the value of attribute assertion_consumer_service_index.
-
#assertion_consumer_service_url ⇒ Object
Returns the value of attribute assertion_consumer_service_url.
-
#attribute_consuming_service_index ⇒ Object
Returns the value of attribute attribute_consuming_service_index.
-
#authn_context ⇒ Object
Returns the value of attribute authn_context.
-
#destination_service_url ⇒ Object
Returns the value of attribute destination_service_url.
-
#hash_assertion_consumer ⇒ Object
Returns the value of attribute hash_assertion_consumer.
-
#idp_cert ⇒ Object
Returns the value of attribute idp_cert.
-
#idp_cert_fingerprint ⇒ Object
Returns the value of attribute idp_cert_fingerprint.
-
#idp_entity_id ⇒ Object
Returns the value of attribute idp_entity_id.
-
#idp_metadata ⇒ Object
Returns the value of attribute idp_metadata.
-
#idp_metadata_ttl ⇒ Object
Returns the value of attribute idp_metadata_ttl.
-
#idp_name_qualifier ⇒ Object
Returns the value of attribute idp_name_qualifier.
-
#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
Returns the value of attribute issuer.
-
#metadata_signed ⇒ Object
Returns the value of attribute metadata_signed.
-
#name_identifier_format ⇒ Object
Returns the value of attribute name_identifier_format.
-
#name_identifier_value ⇒ Object
Returns the value of attribute name_identifier_value.
-
#organization ⇒ Object
Returns the value of attribute organization.
-
#requested_attribute ⇒ Object
Returns the value of attribute requested_attribute.
-
#requested_attribute_eidas_full ⇒ Object
Returns the value of attribute requested_attribute_eidas_full.
-
#requested_attribute_eidas_min ⇒ Object
Returns the value of attribute requested_attribute_eidas_min.
-
#requester_identificator ⇒ Object
Returns the value of attribute requester_identificator.
-
#sessionindex ⇒ Object
Returns the value of attribute sessionindex.
-
#single_logout_destination ⇒ Object
Returns the value of attribute single_logout_destination.
-
#single_logout_service_binding ⇒ Object
Returns the value of attribute single_logout_service_binding.
-
#single_logout_service_url ⇒ Object
Returns the value of attribute single_logout_service_url.
-
#skip_validation ⇒ Object
Returns the value of attribute skip_validation.
-
#sp_cert ⇒ Object
Returns the value of attribute sp_cert.
-
#sp_external_consumer_cert ⇒ Object
Returns the value of attribute sp_external_consumer_cert.
-
#sp_name_identifier ⇒ Object
Returns the value of attribute sp_name_identifier.
-
#sp_name_qualifier ⇒ Object
Returns the value of attribute sp_name_qualifier.
-
#sp_private_key ⇒ Object
Returns the value of attribute sp_private_key.
Instance Method Summary collapse
-
#get_cert(cert) ⇒ OpenSSL::X509::Certificate|nil
Questo metodo e’ stato generalizzato sotto def get_sp_cert return nil if sp_cert.nil? || sp_cert.empty? #decoded_content = Base64.decode64(File.read(sp_cert)) formatted_cert = Ciam::Saml::Utils.format_cert(sp_cert) OpenSSL::X509::Certificate.new(File.read(sp_cert)) end.
- #get_fingerprint ⇒ Object
-
#get_idp_cert ⇒ OpenSSL::X509::Certificate|nil
Build the IdP certificate from the settings (previously format it).
-
#get_sp_key ⇒ OpenSSL::PKey::RSA
Build the SP private from the settings (previously format it).
-
#initialize(config = {}) ⇒ Settings
constructor
A new instance of Settings.
Constructor Details
#initialize(config = {}) ⇒ Settings
Returns a new instance of Settings.
15 16 17 18 19 20 21 22 23 24 25 26 |
# File 'lib/ciam/ruby-saml/settings.rb', line 15 def initialize(config = {}) config.each do |k,v| acc = "#{k.to_s}=".to_sym self.send(acc, v) if self.respond_to? acc end # Set some sane default values on a few options self.assertion_consumer_service_binding = "urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" self.single_logout_service_binding = "urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" # Default cache TTL for metadata is 1 day self. = 86400 end |
Instance Attribute Details
#assertion_consumer_service_binding ⇒ Object
Returns the value of attribute assertion_consumer_service_binding.
9 10 11 |
# File 'lib/ciam/ruby-saml/settings.rb', line 9 def assertion_consumer_service_binding @assertion_consumer_service_binding end |
#assertion_consumer_service_index ⇒ Object
Returns the value of attribute assertion_consumer_service_index.
9 10 11 |
# File 'lib/ciam/ruby-saml/settings.rb', line 9 def assertion_consumer_service_index @assertion_consumer_service_index end |
#assertion_consumer_service_url ⇒ Object
Returns the value of attribute assertion_consumer_service_url.
9 10 11 |
# File 'lib/ciam/ruby-saml/settings.rb', line 9 def assertion_consumer_service_url @assertion_consumer_service_url end |
#attribute_consuming_service_index ⇒ Object
Returns the value of attribute attribute_consuming_service_index.
9 10 11 |
# File 'lib/ciam/ruby-saml/settings.rb', line 9 def attribute_consuming_service_index @attribute_consuming_service_index end |
#authn_context ⇒ Object
Returns the value of attribute authn_context.
11 12 13 |
# File 'lib/ciam/ruby-saml/settings.rb', line 11 def authn_context @authn_context end |
#destination_service_url ⇒ Object
Returns the value of attribute destination_service_url.
11 12 13 |
# File 'lib/ciam/ruby-saml/settings.rb', line 11 def destination_service_url @destination_service_url end |
#hash_assertion_consumer ⇒ Object
Returns the value of attribute hash_assertion_consumer.
9 10 11 |
# File 'lib/ciam/ruby-saml/settings.rb', line 9 def hash_assertion_consumer @hash_assertion_consumer end |
#idp_cert ⇒ Object
Returns the value of attribute idp_cert.
8 9 10 |
# File 'lib/ciam/ruby-saml/settings.rb', line 8 def idp_cert @idp_cert end |
#idp_cert_fingerprint ⇒ Object
Returns the value of attribute idp_cert_fingerprint.
8 9 10 |
# File 'lib/ciam/ruby-saml/settings.rb', line 8 def idp_cert_fingerprint @idp_cert_fingerprint end |
#idp_entity_id ⇒ Object
Returns the value of attribute idp_entity_id.
8 9 10 |
# File 'lib/ciam/ruby-saml/settings.rb', line 8 def idp_entity_id @idp_entity_id end |
#idp_metadata ⇒ Object
Returns the value of attribute idp_metadata.
8 9 10 |
# File 'lib/ciam/ruby-saml/settings.rb', line 8 def @idp_metadata end |
#idp_metadata_ttl ⇒ Object
Returns the value of attribute idp_metadata_ttl.
8 9 10 |
# File 'lib/ciam/ruby-saml/settings.rb', line 8 def @idp_metadata_ttl end |
#idp_name_qualifier ⇒ Object
Returns the value of attribute idp_name_qualifier.
8 9 10 |
# File 'lib/ciam/ruby-saml/settings.rb', line 8 def idp_name_qualifier @idp_name_qualifier end |
#idp_slo_target_url ⇒ Object
Returns the value of attribute idp_slo_target_url.
8 9 10 |
# File 'lib/ciam/ruby-saml/settings.rb', line 8 def idp_slo_target_url @idp_slo_target_url end |
#idp_sso_target_url ⇒ Object
Returns the value of attribute idp_sso_target_url.
8 9 10 |
# File 'lib/ciam/ruby-saml/settings.rb', line 8 def idp_sso_target_url @idp_sso_target_url end |
#issuer ⇒ Object
Returns the value of attribute issuer.
11 12 13 |
# File 'lib/ciam/ruby-saml/settings.rb', line 11 def issuer @issuer end |
#metadata_signed ⇒ Object
Returns the value of attribute metadata_signed.
7 8 9 |
# File 'lib/ciam/ruby-saml/settings.rb', line 7 def @metadata_signed end |
#name_identifier_format ⇒ Object
Returns the value of attribute name_identifier_format.
10 11 12 |
# File 'lib/ciam/ruby-saml/settings.rb', line 10 def name_identifier_format @name_identifier_format end |
#name_identifier_value ⇒ Object
Returns the value of attribute name_identifier_value.
10 11 12 |
# File 'lib/ciam/ruby-saml/settings.rb', line 10 def name_identifier_value @name_identifier_value end |
#organization ⇒ Object
Returns the value of attribute organization.
7 8 9 |
# File 'lib/ciam/ruby-saml/settings.rb', line 7 def organization @organization end |
#requested_attribute ⇒ Object
Returns the value of attribute requested_attribute.
7 8 9 |
# File 'lib/ciam/ruby-saml/settings.rb', line 7 def requested_attribute @requested_attribute end |
#requested_attribute_eidas_full ⇒ Object
Returns the value of attribute requested_attribute_eidas_full.
7 8 9 |
# File 'lib/ciam/ruby-saml/settings.rb', line 7 def requested_attribute_eidas_full @requested_attribute_eidas_full end |
#requested_attribute_eidas_min ⇒ Object
Returns the value of attribute requested_attribute_eidas_min.
7 8 9 |
# File 'lib/ciam/ruby-saml/settings.rb', line 7 def requested_attribute_eidas_min @requested_attribute_eidas_min end |
#requester_identificator ⇒ Object
Returns the value of attribute requester_identificator.
11 12 13 |
# File 'lib/ciam/ruby-saml/settings.rb', line 11 def requester_identificator @requester_identificator end |
#sessionindex ⇒ Object
Returns the value of attribute sessionindex.
11 12 13 |
# File 'lib/ciam/ruby-saml/settings.rb', line 11 def sessionindex @sessionindex end |
#single_logout_destination ⇒ Object
Returns the value of attribute single_logout_destination.
12 13 14 |
# File 'lib/ciam/ruby-saml/settings.rb', line 12 def single_logout_destination @single_logout_destination end |
#single_logout_service_binding ⇒ Object
Returns the value of attribute single_logout_service_binding.
12 13 14 |
# File 'lib/ciam/ruby-saml/settings.rb', line 12 def single_logout_service_binding @single_logout_service_binding end |
#single_logout_service_url ⇒ Object
Returns the value of attribute single_logout_service_url.
12 13 14 |
# File 'lib/ciam/ruby-saml/settings.rb', line 12 def single_logout_service_url @single_logout_service_url end |
#skip_validation ⇒ Object
Returns the value of attribute skip_validation.
13 14 15 |
# File 'lib/ciam/ruby-saml/settings.rb', line 13 def skip_validation @skip_validation end |
#sp_cert ⇒ Object
Returns the value of attribute sp_cert.
7 8 9 |
# File 'lib/ciam/ruby-saml/settings.rb', line 7 def sp_cert @sp_cert end |
#sp_external_consumer_cert ⇒ Object
Returns the value of attribute sp_external_consumer_cert.
7 8 9 |
# File 'lib/ciam/ruby-saml/settings.rb', line 7 def sp_external_consumer_cert @sp_external_consumer_cert end |
#sp_name_identifier ⇒ Object
Returns the value of attribute sp_name_identifier.
7 8 9 |
# File 'lib/ciam/ruby-saml/settings.rb', line 7 def sp_name_identifier @sp_name_identifier end |
#sp_name_qualifier ⇒ Object
Returns the value of attribute sp_name_qualifier.
7 8 9 |
# File 'lib/ciam/ruby-saml/settings.rb', line 7 def sp_name_qualifier @sp_name_qualifier end |
#sp_private_key ⇒ Object
Returns the value of attribute sp_private_key.
7 8 9 |
# File 'lib/ciam/ruby-saml/settings.rb', line 7 def sp_private_key @sp_private_key end |
Instance Method Details
#get_cert(cert) ⇒ OpenSSL::X509::Certificate|nil
Questo metodo e’ stato generalizzato sotto def get_sp_cert
return nil if sp_cert.nil? || sp_cert.empty?
#decoded_content = Base64.decode64(File.read(sp_cert))
formatted_cert = Ciam::Saml::Utils.format_cert(sp_cert)
OpenSSL::X509::Certificate.new(File.read(sp_cert))
end
65 66 67 68 69 70 |
# File 'lib/ciam/ruby-saml/settings.rb', line 65 def get_cert(cert) return nil if cert.nil? || cert.empty? #decoded_content = Base64.decode64(File.read(cert)) formatted_cert = Ciam::Saml::Utils.format_cert(cert) OpenSSL::X509::Certificate.new(File.read(cert)) end |
#get_fingerprint ⇒ Object
29 30 31 32 33 34 35 36 37 |
# File 'lib/ciam/ruby-saml/settings.rb', line 29 def get_fingerprint idp_cert_fingerprint || begin idp_cert = get_idp_cert if idp_cert fingerprint_alg = Ciam::XMLSecurity::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).
41 42 43 44 45 46 |
# File 'lib/ciam/ruby-saml/settings.rb', line 41 def get_idp_cert return nil if idp_cert.nil? || idp_cert.empty? #decoded_content = Base64.decode64(File.read(idp_cert)) #formatted_cert = Ciam::Saml::Utils.format_cert(idp_cert) OpenSSL::X509::Certificate.new(File.read(idp_cert)) end |
#get_sp_key ⇒ OpenSSL::PKey::RSA
Returns Build the SP private from the settings (previously format it).
76 77 78 79 80 81 |
# File 'lib/ciam/ruby-saml/settings.rb', line 76 def get_sp_key return nil if sp_private_key.nil? || sp_private_key.empty? #formatted_private_key = Ciam::Saml::Utils.format_private_key(sp_private_key) OpenSSL::PKey::RSA.new(File.read(sp_private_key)) end |