Sha256: 903b7aaaf8fbfb4066be4180a35f804b639bfd855481af975d63720f18c428c9

Contents?: true

Size: 1.39 KB

Versions: 16

Compression:

Stored size: 1.39 KB

Contents

# frozen_string_literal: true

module Saml
  module Kit
    module Builders
      # {include:file:lib/saml/kit/builders/templates/authentication_request.builder}
      # {include:file:spec/saml/kit/builders/authentication_request_spec.rb}
      class AuthenticationRequest
        include XmlTemplatable
        attr_accessor :id, :now, :issuer, :assertion_consumer_service_url
        attr_accessor :name_id_format, :destination
        attr_accessor :version
        attr_reader :configuration

        def initialize(configuration: Saml::Kit.configuration)
          @configuration = configuration
          @id = ::Xml::Kit::Id.generate
          @issuer = configuration.entity_id
          @name_id_format = Namespaces::PERSISTENT
          @now = Time.now.utc
          @version = '2.0'
        end

        def build
          Saml::Kit::AuthenticationRequest.new(to_xml)
        end

        private

        def request_options
          options = {
            'xmlns:samlp' => Namespaces::PROTOCOL,
            'xmlns:saml' => Namespaces::ASSERTION,
            ID: id,
            Version: version,
            IssueInstant: now.utc.iso8601,
            Destination: destination,
          }
          if assertion_consumer_service_url.present?
            options[:AssertionConsumerServiceURL] =
              assertion_consumer_service_url
          end
          options
        end
      end
    end
  end
end

Version data entries

16 entries across 16 versions & 1 rubygems

Version Path
saml-kit-1.0.31 lib/saml/kit/builders/authentication_request.rb
saml-kit-1.0.30 lib/saml/kit/builders/authentication_request.rb
saml-kit-1.0.29 lib/saml/kit/builders/authentication_request.rb
saml-kit-1.0.28 lib/saml/kit/builders/authentication_request.rb
saml-kit-1.0.27 lib/saml/kit/builders/authentication_request.rb
saml-kit-1.0.26 lib/saml/kit/builders/authentication_request.rb
saml-kit-1.0.25 lib/saml/kit/builders/authentication_request.rb
saml-kit-1.0.24 lib/saml/kit/builders/authentication_request.rb
saml-kit-1.0.23 lib/saml/kit/builders/authentication_request.rb
saml-kit-1.0.22 lib/saml/kit/builders/authentication_request.rb
saml-kit-1.0.21 lib/saml/kit/builders/authentication_request.rb
saml-kit-1.0.20 lib/saml/kit/builders/authentication_request.rb
saml-kit-1.0.19 lib/saml/kit/builders/authentication_request.rb
saml-kit-1.0.18 lib/saml/kit/builders/authentication_request.rb
saml-kit-1.0.17 lib/saml/kit/builders/authentication_request.rb
saml-kit-1.0.16 lib/saml/kit/builders/authentication_request.rb