Class: Saml::Kit::ServiceProviderMetadata

Inherits:
Metadata
  • Object
show all
Defined in:
lib/saml/kit/service_provider_metadata.rb

Constant Summary collapse

Builder =
ActiveSupport::Deprecation::DeprecatedConstantProxy.new('Saml::Kit::ServiceProviderMetadata::Builder', 'Saml::Kit::Builders::ServiceProviderMetadata')

Constants inherited from Metadata

Metadata::METADATA_XSD

Instance Attribute Summary

Attributes inherited from Metadata

#hash_algorithm, #name, #xml

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Metadata

#certificates, #contact_person_company, #encryption_certificates, #entity_id, from, #logout_request_for, #matches?, #name_id_formats, #organization_name, #organization_url, #service_for, #services, #signing_certificates, #single_logout_service_for, #single_logout_services, #to_h, #to_s, #to_xml, #verify

Constructor Details

#initialize(xml) ⇒ ServiceProviderMetadata

Returns a new instance of ServiceProviderMetadata.



4
5
6
# File 'lib/saml/kit/service_provider_metadata.rb', line 4

def initialize(xml)
  super("SPSSODescriptor", xml)
end

Class Method Details

.builder_class ⇒ Object



22
23
24
# File 'lib/saml/kit/service_provider_metadata.rb', line 22

def self.builder_class
  Saml::Kit::Builders::ServiceProviderMetadata
end

Instance Method Details

#assertion_consumer_service_for(binding:) ⇒ Object



12
13
14
# File 'lib/saml/kit/service_provider_metadata.rb', line 12

def assertion_consumer_service_for(binding:)
  service_for(binding: binding, type: 'AssertionConsumerService')
end

#assertion_consumer_services ⇒ Object



8
9
10
# File 'lib/saml/kit/service_provider_metadata.rb', line 8

def assertion_consumer_services
  services('AssertionConsumerService')
end

#want_assertions_signed ⇒ Object



16
17
18
19
20
# File 'lib/saml/kit/service_provider_metadata.rb', line 16

def want_assertions_signed
  attribute = document.find_by("/md:EntityDescriptor/md:#{name}").attribute("WantAssertionsSigned")
  return true if attribute.nil?
  attribute.text.downcase == "true"
end