Sha256: 66ec79666efc70ff059364ae391ce72abeb37b04f043456e45ae29417458e3f1

Contents?: true

Size: 781 Bytes

Versions: 38

Compression:

Stored size: 781 Bytes

Contents

module OpenIDConnect
  module Discovery
    module Provider
      module Issuer
        REL_VALUE = 'http://openid.net/specs/connect/1.0/issuer'

        def issuer
          self.link_for(REL_VALUE)[:href]
        end
      end

      def self.discover!(identifier)
        resource = case identifier
        when /^acct:/, /https?:\/\//
          identifier
        when /@/
          "acct:#{identifier}"
        else
          "https://#{identifier}"
        end
        response = WebFinger.discover!(
          resource,
          rel: Issuer::REL_VALUE
        )
        response.extend Issuer
        response
      rescue WebFinger::Exception => e
        raise DiscoveryFailed.new(e.message)
      end
    end
  end
end

require 'openid_connect/discovery/provider/config'

Version data entries

38 entries across 38 versions & 1 rubygems

Version Path
openid_connect-2.3.1 lib/openid_connect/discovery/provider.rb
openid_connect-2.3.0 lib/openid_connect/discovery/provider.rb
openid_connect-2.2.1 lib/openid_connect/discovery/provider.rb
openid_connect-2.2.0 lib/openid_connect/discovery/provider.rb
openid_connect-2.1.0 lib/openid_connect/discovery/provider.rb
openid_connect-2.0.0 lib/openid_connect/discovery/provider.rb
openid_connect-2.0.0.rc1 lib/openid_connect/discovery/provider.rb
openid_connect-1.4.2 lib/openid_connect/discovery/provider.rb
openid_connect-1.4.1 lib/openid_connect/discovery/provider.rb
openid_connect-1.4.0 lib/openid_connect/discovery/provider.rb
openid_connect-1.3.1 lib/openid_connect/discovery/provider.rb
openid_connect-1.3.0 lib/openid_connect/discovery/provider.rb
openid_connect-1.2.0 lib/openid_connect/discovery/provider.rb
openid_connect-1.1.8 lib/openid_connect/discovery/provider.rb
openid_connect-1.1.7 lib/openid_connect/discovery/provider.rb
openid_connect-1.1.6 lib/openid_connect/discovery/provider.rb
openid_connect-1.1.5 lib/openid_connect/discovery/provider.rb
openid_connect-1.1.4 lib/openid_connect/discovery/provider.rb
openid_connect-1.1.3 lib/openid_connect/discovery/provider.rb
openid_connect-1.1.2 lib/openid_connect/discovery/provider.rb