class Cie::Saml::Settings
Attributes
assertion_consumer_service_binding[RW]
assertion_consumer_service_index[RW]
assertion_consumer_service_url[RW]
attribute_consuming_service_index[RW]
authn_context[RW]
destination_service_url[RW]
hash_assertion_consumer[RW]
hash_ente[RW]
hash_fornitore_servizi[RW]
idp_cert[RW]
idp_cert_fingerprint[RW]
idp_entity_id[RW]
idp_metadata[RW]
idp_metadata_ttl[RW]
idp_name_qualifier[RW]
idp_slo_target_url[RW]
idp_sso_target_url[RW]
issuer[RW]
metadata_signed[RW]
name_identifier_format[RW]
name_identifier_value[RW]
organization[RW]
requested_attribute[RW]
requested_attribute_eidas_full[RW]
requested_attribute_eidas_min[RW]
requester_identificator[RW]
sessionindex[RW]
single_logout_destination[RW]
single_logout_service_binding[RW]
single_logout_service_url[RW]
skip_validation[RW]
sp_cert[RW]
sp_external_consumer_cert[RW]
sp_name_identifier[RW]
sp_name_qualifier[RW]
sp_private_key[RW]
Public Class Methods
new(config = {})
click to toggle source
# File lib/cie/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.idp_metadata_ttl = 86400 end
Public Instance Methods
get_cert(cert)
click to toggle source
@return [OpenSSL::X509::Certificate|nil] Build the SP certificate from the settings (previously format it)
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 = Cie::Saml::Utils.format_cert(sp_cert) OpenSSL::X509::Certificate.new(File.read(sp_cert)) end
# File lib/cie/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 = Cie::Saml::Utils.format_cert(cert) OpenSSL::X509::Certificate.new(File.read(cert)) end
get_fingerprint()
click to toggle source
# File lib/cie/ruby-saml/settings.rb, line 29 def get_fingerprint idp_cert_fingerprint || begin idp_cert = get_idp_cert if idp_cert fingerprint_alg = Cie::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()
click to toggle source
@return [OpenSSL::X509::Certificate|nil] Build the IdP certificate from the settings (previously format it)
# File lib/cie/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 = Cie::Saml::Utils.format_cert(idp_cert) OpenSSL::X509::Certificate.new(File.read(idp_cert)) end
get_sp_key()
click to toggle source
@return [OpenSSL::PKey::RSA] Build the SP private from the settings (previously format it)
# File lib/cie/ruby-saml/settings.rb, line 76 def get_sp_key return nil if sp_private_key.nil? || sp_private_key.empty? #formatted_private_key = Cie::Saml::Utils.format_private_key(sp_private_key) OpenSSL::PKey::RSA.new(File.read(sp_private_key)) end