Module: OAuth2 — Documentation by YARD 0.9.45

# 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/auth_sanitizer.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

simplecov:enable

## 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)

VERSION =

Traditional Constant Location

      Version::VERSION

AUTH_SANITIZER =

      begin
        auth_sanitizer_requirement = Gem::Requirement.new("~> 0.2", ">= 0.2.2")
        auth_sanitizer_loader_namespace = AnonymousLoader.load_path(
          gem_name: "auth-sanitizer",
          require_path: "auth_sanitizer/loader.rb",
          version_requirement: auth_sanitizer_requirement,
          version_file: "auth/sanitizer/version.rb"
        )

        auth_sanitizer_loader_namespace.
          const_get(:AuthSanitizer).
          const_get(:Loader).
          load_isolated
      end

FilteredAttributes =

Permanent alias for {OAuth2::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.

      OAuth2::AUTH_SANITIZER::FilteredAttributes

## Class Method Summary collapse

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

  Configure global library behavior.

## Class Method Details

### .config ⇒ `Object`

    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