Module: OAuth2

Defined in:
lib/oauth2.rb,
lib/oauth2/error.rb,
lib/oauth2/client.rb,
lib/oauth2/version.rb,
lib/oauth2/response.rb,
lib/oauth2/access_token.rb,
lib/oauth2/authenticator.rb,
lib/oauth2/strategy/base.rb,
lib/oauth2/strategy/implicit.rb,
lib/oauth2/strategy/password.rb,
lib/oauth2/strategy/assertion.rb,
lib/oauth2/strategy/auth_code.rb,
lib/oauth2/filtered_attributes.rb,
lib/oauth2/strategy/client_credentials.rb

Overview

:nocov:

Defined Under Namespace

Modules: Strategy, Version Classes: AccessToken, Authenticator, Client, Error, Response

Constant Summary collapse

OAUTH_DEBUG =

When true, enables verbose HTTP logging via Faraday’s logger middleware. Controlled by the OAUTH_DEBUG environment variable. Any case-insensitive value equal to “true” will enable debugging.

Returns:

  • (Boolean)
ENV.fetch("OAUTH_DEBUG", "false").casecmp("true").zero?
DEFAULT_CONFIG =

Default configuration values for the oauth2 library.

Existing objects and logger wrappers snapshot filtering configuration during initialization. Changing these config values later affects only newly initialized objects and debug loggers.

Examples:

Toggle warnings

OAuth2.configure do |config|
  config[:silence_extra_tokens_warning] = false
  config[:silence_no_tokens_warning] = false
end

Customize filtered output markers and debug-log value filtering by key name

OAuth2.configure do |config|
  config[:filtered_label] = "[REDACTED]"
  config[:filtered_debug_keys] += ["client_assertion"]
end

Returns:

  • (SnakyHash::SymbolKeyed)

    A mutable Hash-like config with symbol keys

SnakyHash::SymbolKeyed.new(
  silence_extra_tokens_warning: true,
  silence_no_tokens_warning: true,
  filtered_label: "[FILTERED]",
  filtered_debug_keys: %w[
    access_token
    refresh_token
    id_token
    client_secret
    assertion
    code_verifier
    token
  ],
)
CONFIG =

The current runtime configuration for the library.

Returns:

  • (SnakyHash::SymbolKeyed)
DEFAULT_CONFIG.dup
ConnectionError =
Class.new(Faraday::ConnectionFailed)
TimeoutError =
Class.new(Faraday::TimeoutError)
FilteredAttributes =

Permanent alias for Auth::Sanitizer::FilteredAttributes.

This constant is intentionally kept in the ‘OAuth2` namespace because it was part of the public API before the implementation was extracted into the `auth-sanitizer` gem. It will not be deprecated or removed.

New code that does not need the ‘OAuth2::` namespace can use Auth::Sanitizer::FilteredAttributes directly.

Auth::Sanitizer::FilteredAttributes

Class Method Summary collapse

Class Method Details

.configObject



79
80
81
# File 'lib/oauth2.rb', line 79

def config
  CONFIG
end

.configure {|config| ... } ⇒ void

This method returns an undefined value.

Configure global library behavior.

Yields the mutable configuration object so callers can update settings.

Yield Parameters:

  • config (SnakyHash::SymbolKeyed)

    the configuration object



89
90
91
# File 'lib/oauth2.rb', line 89

def configure
  yield config
end