class Saml::Settings

Overview

SAML2 Toolkit Settings

Defined in:

saml/settings.cr

Constant Summary

DEFAULTS = {:assertion_consumer_service_binding => Utils::BINDINGS[:post], :single_logout_service_binding => Utils::BINDINGS[:redirect], :idp_cert_fingerprint_algorithm => XMLSecurity::Document::SHA1, :compress_request => true, :compress_response => true, :message_max_bytesize => 250000, :soft => true, :double_quote_xml_attribute_values => false, :security => {:authn_requests_signed => false, :logout_requests_signed => false, :logout_responses_signed => false, :want_assertions_signed => false, :want_assertions_encrypted => false, :want_name_id => false, :metadata_signed => false, :embed_sign => false, :digest_method => XMLSecurity::Document::SHA1, :signature_method => XMLSecurity::Document::RSA_SHA1, :check_idp_cert_expiration => false, :check_sp_cert_expiration => false, :strict_audience_validation => false, :lowercase_url_encoding => false}}

Constructors

Instance Method Summary

Constructor Detail

def self.new(overrides = {} of Symbol => Value | Hash(Symbol, Value), keep_security_attributes = false) #

[View source]

Instance Method Detail

def assertion_consumer_logout_service_binding #

[View source]
def assertion_consumer_logout_service_binding=(value) #

@deprecated Setter for legacy Single Logout Service Binding parameter.

(Currently we only support "urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect") @param value [String, Symbol]


[View source]
def assertion_consumer_logout_service_url #

Deprecated


[View source]
def assertion_consumer_logout_service_url=(assertion_consumer_logout_service_url) #

Deprecated


[View source]
def assertion_consumer_service_binding : String | Nil #

[View source]
def assertion_consumer_service_binding=(value) #

Setter for SP Assertion Consumer Service Binding @param value [String, Symbol].


[View source]
def assertion_consumer_service_url : String | Nil #

[View source]
def assertion_consumer_service_url=(assertion_consumer_service_url : String | Nil) #

[View source]
def attribute_consuming_service : AttributeService | Nil #

[View source]
def attributes_index : Int32 | Nil #

[View source]
def attributes_index=(attributes_index : Int32 | Nil) #

[View source]
def authn_context : String | Array(String) | Nil #

[View source]
def authn_context=(authn_context : String | Array(String) | Nil) #

[View source]
def authn_context_comparison : String | Nil #

[View source]
def authn_context_comparison=(authn_context_comparison : String | Nil) #

[View source]
def authn_context_decl_ref : String | Nil #

[View source]
def authn_context_decl_ref=(authn_context_decl_ref : String | Nil) #

[View source]
def certificate : String | Nil #

[View source]
def certificate=(certificate : String | Nil) #

[View source]
def certificate_new : String | Nil #

[View source]
def certificate_new=(certificate_new : String | Nil) #

[View source]
def compress_request : Bool #

[View source]
def compress_request=(compress_request : Bool) #

[View source]
def compress_response : Bool #

[View source]
def compress_response=(compress_response : Bool) #

[View source]
def double_quote_xml_attribute_values : Bool #

[View source]
def double_quote_xml_attribute_values=(double_quote_xml_attribute_values : Bool) #

[View source]
def force_authn : Bool | Nil #

[View source]
def force_authn=(force_authn : Bool | Nil) #

[View source]
def get_binding(value) : String | Nil #

[View source]
def get_fingerprint #

Calculates the fingerprint of the IdP x509 certificate. @return [String] The fingerprint


[View source]
def get_idp_cert #

@return [OpenSSL::X509::Certificate|nil] Build the IdP certificate from the settings (previously format it)


[View source]
def get_idp_cert_multi #

@return [Hash with 2 arrays of OpenSSL::X509::Certificate] Build multiple IdP certificates from the settings.


[View source]
def get_sp_cert #

@return [OpenSSL::X509::Certificate|nil] Build the SP certificate from the settings (previously format it)


[View source]
def get_sp_cert_new #

@return [OpenSSL::X509::Certificate|nil] Build the New SP certificate from the settings (previously format it)


[View source]
def get_sp_key #

@return [OpenSSL::PKey::RSA] Build the SP private from the settings (previously format it)


[View source]
def get_sp_key_text #

[View source]
def idp_attribute_names : Array(String) | Nil #

[View source]
def idp_attribute_names=(idp_attribute_names : Array(String) | Nil) #

[View source]
def idp_binding_from_embed_sign #

[View source]
def idp_cert : String | Nil #

[View source]
def idp_cert=(idp_cert : String | Nil) #

[View source]
def idp_cert_fingerprint : String | Nil #

[View source]
def idp_cert_fingerprint=(idp_cert_fingerprint : String | Nil) #

[View source]
def idp_cert_fingerprint_algorithm : String | Nil #

[View source]
def idp_cert_fingerprint_algorithm=(idp_cert_fingerprint_algorithm : String | Nil) #

[View source]
def idp_cert_multi : Hash(Symbol, Array(String)) #

[View source]
def idp_cert_multi=(idp_cert_multi : Hash(Symbol, Array(String))) #

[View source]
def idp_entity_id : String | Nil #

IdP Data


[View source]
def idp_entity_id=(idp_entity_id : String | Nil) #

IdP Data


[View source]
def idp_name_qualifier : String | Nil #

[View source]
def idp_name_qualifier=(idp_name_qualifier : String | Nil) #

[View source]
def idp_slo_response_service_url : String | Nil #

[View source]
def idp_slo_response_service_url=(idp_slo_response_service_url : String | Nil) #

[View source]
def idp_slo_service_binding #

@return [String] IdP Single Logout Service Binding


[View source]
def idp_slo_service_binding=(value) #

Setter for IdP Single Logout Service Binding @param value [String, Symbol].


[View source]
def idp_slo_service_url #

@return [String] IdP Single Logout Service URL


[View source]
def idp_slo_service_url=(idp_slo_service_url : String | Nil) #

[View source]
def idp_slo_target_url : String | Nil #

[View source]
def idp_slo_target_url=(idp_slo_target_url : String | Nil) #

[View source]
def idp_sso_service_binding #

@return [String] IdP Single Sign On Service Binding


[View source]
def idp_sso_service_binding=(value) #

Setter for IdP Single Sign On Service Binding @param value [String, Symbol].


[View source]
def idp_sso_service_url #

@return [String] IdP Single Sign On Service URL


[View source]
def idp_sso_service_url=(idp_sso_service_url : String | Nil) #

[View source]
def idp_sso_target_url : String | Nil #

[View source]
def idp_sso_target_url=(idp_sso_target_url : String | Nil) #

[View source]
def issuer : String | Nil #

[View source]
def issuer=(issuer : String | Nil) #

[View source]
def message_max_bytesize : Int32 #

[View source]
def message_max_bytesize=(message_max_bytesize : Int32) #

[View source]
def name_identifier_format : String | Nil #

[View source]
def name_identifier_format=(name_identifier_format : String | Nil) #

[View source]
def name_identifier_value : String | Nil #

[View source]
def name_identifier_value=(name_identifier_value : String | Nil) #

[View source]
def name_identifier_value_requested : String | Nil #

[View source]
def name_identifier_value_requested=(name_identifier_value_requested : String | Nil) #

[View source]
def passive : Bool | Nil #

[View source]
def passive=(passive : Bool | Nil) #

[View source]
def private_key : String | Nil #

[View source]
def private_key=(private_key : String | Nil) #

[View source]
def protocol_binding : String | Nil #

[View source]
def protocol_binding=(value) #

Setter for SP Protocol Binding @param value [String, Symbol].


[View source]
def security : Hash(Symbol, Bool | Int32 | String) #

Work-flow


[View source]
def security=(security : Hash(Symbol, Bool | Int32 | String)) #

Work-flow


[View source]
def sessionindex : String | Nil #

[View source]
def sessionindex=(sessionindex : String | Nil) #

[View source]
def single_logout_service_binding #

@return [String] Single Logout Service Binding.


[View source]
def single_logout_service_binding=(value) #

Setter for Single Logout Service Binding.

(Currently we only support "urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect") @param value [String, Symbol]


[View source]
def single_logout_service_url #

@return [String] Single Logout Service URL.


[View source]
def single_logout_service_url=(single_logout_service_url : String | Nil) #

[View source]
def soft : Bool #

[View source]
def soft=(soft : Bool) #

[View source]
def sp_entity_id #

@return [String] SP Entity ID


[View source]
def sp_entity_id=(sp_entity_id : String | Nil) #

SP Data


[View source]
def sp_name_qualifier : String | Nil #

[View source]
def sp_name_qualifier=(sp_name_qualifier : String | Nil) #

[View source]
def valid_until : Time | Nil #

[View source]
def valid_until=(valid_until : Time | Nil) #

[View source]