Module: Oidc

Defined in:
lib/oidc.rb,
lib/oidc/client.rb,
lib/oidc/version.rb,
lib/oidc/discovery.rb,
lib/oidc/exception.rb,
lib/oidc/jwtnizable.rb,
lib/oidc/access_token.rb,
lib/oidc/connect_object.rb,
lib/oidc/request_object.rb,
lib/oidc/response_object.rb,
lib/oidc/client/registrar.rb,
lib/oidc/access_token/mtls.rb,
lib/oidc/discovery/provider.rb,
lib/oidc/request_object/id_token.rb,
lib/oidc/request_object/claimable.rb,
lib/oidc/request_object/user_info.rb,
lib/oidc/response_object/id_token.rb,
lib/oidc/discovery/provider/config.rb,
lib/oidc/response_object/user_info.rb,
lib/oidc/response_object/user_info/address.rb,
lib/oidc/discovery/provider/config/resource.rb,
lib/oidc/discovery/provider/config/response.rb

Defined Under Namespace

Modules: Discovery, JWTnizable Classes: AccessToken, BadRequest, Client, ConnectObject, Exception, Forbidden, HttpError, RequestObject, ResponseObject, Unauthorized, ValidationFailed

Constant Summary collapse

VERSION =
"0.0.1"

Class Method Summary collapse

Class Method Details

.debug(&block) ⇒ Object



50
51
52
53
54
55
56
57
58
59
60
61
62
# File 'lib/oidc.rb', line 50

def self.debug(&block)
  sub_protocol_originals = @sub_protocols.inject({}) do |sub_protocol_originals, klass|
    sub_protocol_originals.merge!(klass => klass.debugging?)
  end
  original = self.debugging?
  debug!
  yield
ensure
  @sub_protocols.each do |klass|
    klass.debugging = sub_protocol_originals[klass]
  end
  self.debugging = original
end

.debug!Object



44
45
46
47
48
49
# File 'lib/oidc.rb', line 44

def self.debug!
  @sub_protocols.each do |klass|
    klass.debug!
  end
  self.debugging = true
end

.debugging=(boolean) ⇒ Object



38
39
40
41
42
43
# File 'lib/oidc.rb', line 38

def self.debugging=(boolean)
  @sub_protocols.each do |klass|
    klass.debugging = boolean
  end
  @@debugging = boolean
end

.debugging?Boolean

Returns:

  • (Boolean)


35
36
37
# File 'lib/oidc.rb', line 35

def self.debugging?
  @@debugging
end

.http_clientObject



65
66
67
68
69
70
71
72
73
74
# File 'lib/oidc.rb', line 65

def self.http_client
  Faraday.new(headers: {user_agent: "Oidc (#{VERSION})"}) do |faraday|
    faraday.request :url_encoded
    faraday.request :json
    faraday.response :json
    faraday.adapter Faraday.default_adapter
    http_config&.call(faraday)
    faraday.response :logger, Oidc.logger, {bodies: true} if debugging?
  end
end

.http_config(&block) ⇒ Object



75
76
77
78
79
80
# File 'lib/oidc.rb', line 75

def self.http_config(&block)
  @sub_protocols.each do |klass|
    klass.http_config(&block) unless klass.http_config
  end
  @@http_config ||= block
end

.loggerObject



21
22
23
# File 'lib/oidc.rb', line 21

def self.logger
  @@logger
end

.logger=(logger) ⇒ Object



24
25
26
# File 'lib/oidc.rb', line 24

def self.logger=(logger)
  @@logger = logger
end

.validate_discovery_issuerObject



86
87
88
# File 'lib/oidc.rb', line 86

def self.validate_discovery_issuer
  @@validate_discovery_issuer
end

.validate_discovery_issuer=(boolean) ⇒ Object



82
83
84
# File 'lib/oidc.rb', line 82

def self.validate_discovery_issuer=(boolean)
  @@validate_discovery_issuer = boolean
end