Commit 066cd93
Changed files (3)
lib
saml
lib/saml/kit/builders/identity_provider_metadata.rb
@@ -3,10 +3,13 @@ module Saml
module Builders
class IdentityProviderMetadata
include Saml::Kit::Templatable
- attr_accessor :id, :organization_name, :organization_url, :contact_email, :entity_id, :attributes, :name_id_formats
+ extend Forwardable
+ attr_accessor :attributes, :name_id_formats
attr_accessor :want_authn_requests_signed
attr_reader :logout_urls, :single_sign_on_urls
attr_reader :configuration
+ attr_reader :metadata
+ def_delegators :metadata, :id, :id=, :entity_id, :entity_id=, :organization_name, :organization_name=, :organization_url, :organization_url=, :contact_email, :contact_email=, :to_xml
def initialize(configuration: Saml::Kit.configuration)
@attributes = []
@@ -17,6 +20,8 @@ module Saml
@name_id_formats = [Namespaces::PERSISTENT]
@single_sign_on_urls = []
@want_authn_requests_signed = true
+ @metadata = Saml::Kit::Builders::Metadata.new(configuration: configuration)
+ @metadata.identity_provider = self
end
def add_single_sign_on_service(url, binding: :http_post)
lib/saml/kit/builders/metadata.rb
@@ -6,10 +6,10 @@ module Saml
attr_accessor :entity_id
attr_accessor :id
+ attr_accessor :identity_provider
attr_accessor :organization_name, :organization_url, :contact_email
+ attr_accessor :service_provider
attr_reader :configuration
- attr_reader :identity_provider
- attr_reader :service_provider
def initialize(configuration: Saml::Kit.configuration)
@id = Id.generate
lib/saml/kit/builders/service_provider_metadata.rb
@@ -3,19 +3,21 @@ module Saml
module Builders
class ServiceProviderMetadata
include Saml::Kit::Templatable
- attr_accessor :id, :entity_id, :acs_urls, :logout_urls, :name_id_formats
- attr_accessor :organization_name, :organization_url, :contact_email
+ extend Forwardable
+ attr_accessor :acs_urls, :logout_urls, :name_id_formats
attr_accessor :want_assertions_signed
attr_reader :configuration
+ attr_reader :metadata
+ def_delegators :metadata, :id, :id=, :entity_id, :entity_id=, :organization_name, :organization_name=, :organization_url, :organization_url=, :contact_email, :contact_email=, :to_xml
def initialize(configuration: Saml::Kit.configuration)
@acs_urls = []
@configuration = configuration
- @entity_id = configuration.issuer
- @id = Id.generate
@logout_urls = []
@name_id_formats = [Namespaces::PERSISTENT]
@want_assertions_signed = true
+ @metadata = Saml::Kit::Builders::Metadata.new(configuration: configuration)
+ @metadata.service_provider = self
end
def add_assertion_consumer_service(url, binding: :http_post)