Class: Verikloak::Rails::Configuration
- Inherits:
-
Object
- Object
- Verikloak::Rails::Configuration
- Defined in:
- lib/verikloak/rails/configuration.rb
Overview
Configuration for verikloak-rails.
Controls how the Rack middleware is initialized (discovery, audience, issuer, leeway, skip paths) and Rails-specific behavior such as controller inclusion, logging tags, and error rendering.
Instance Attribute Summary collapse
-
#audience ⇒ String, ...
Expected audience (‘aud`) claim.
-
#auto_include_controller ⇒ Boolean
Auto-include the controller concern into ActionController::Base.
-
#auto_insert_bff_header_guard ⇒ Boolean
Auto-insert ‘Verikloak::Bff::HeaderGuard` when available.
-
#bff_header_guard_insert_after ⇒ Object, ...
Rack middleware to insert the header guard after.
-
#bff_header_guard_insert_before ⇒ Object, ...
Rack middleware to insert the header guard before.
-
#discovery_url ⇒ String?
OIDC discovery document URL.
-
#error_renderer ⇒ Object
Custom error renderer object responding to ‘render(controller, error)`.
-
#issuer ⇒ String?
Expected issuer (‘iss`) claim.
-
#leeway ⇒ Integer
Clock skew allowance in seconds.
-
#logger_tags ⇒ Array<Symbol>
Log tags to include (supports :request_id, :sub).
-
#middleware_insert_after ⇒ Object, ...
Rack middleware to insert ‘Verikloak::Middleware` after.
-
#middleware_insert_before ⇒ Object, ...
Rack middleware to insert ‘Verikloak::Middleware` before.
-
#render_500_json ⇒ Boolean
Rescue StandardError and render a JSON 500 response.
-
#rescue_pundit ⇒ Boolean
Rescue ‘Pundit::NotAuthorizedError` and render JSON 403 responses.
-
#skip_paths ⇒ Array<String>
Paths to skip verification.
Instance Method Summary collapse
-
#initialize ⇒ void
constructor
Initialize configuration with sensible defaults for Rails apps.
-
#middleware_options ⇒ Hash
Options forwarded to the base Verikloak Rack middleware.
Constructor Details
#initialize ⇒ void
Initialize configuration with sensible defaults for Rails apps.
66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 |
# File 'lib/verikloak/rails/configuration.rb', line 66 def initialize @discovery_url = nil @audience = 'rails-api' @issuer = nil @leeway = 60 @skip_paths = ['/up', '/health', '/rails/health'] @logger_tags = %i[request_id sub] @error_renderer = Verikloak::Rails::ErrorRenderer.new @auto_include_controller = true @render_500_json = false @rescue_pundit = true @middleware_insert_before = nil @middleware_insert_after = nil @auto_insert_bff_header_guard = true @bff_header_guard_insert_before = nil @bff_header_guard_insert_after = nil end |
Instance Attribute Details
#audience ⇒ String, ...
Expected audience (‘aud`) claim. Accepts String or Array.
56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 |
# File 'lib/verikloak/rails/configuration.rb', line 56 class Configuration attr_accessor :discovery_url, :audience, :issuer, :leeway, :skip_paths, :logger_tags, :error_renderer, :auto_include_controller, :render_500_json, :rescue_pundit, :middleware_insert_before, :middleware_insert_after, :auto_insert_bff_header_guard, :bff_header_guard_insert_before, :bff_header_guard_insert_after # Initialize configuration with sensible defaults for Rails apps. # @return [void] def initialize @discovery_url = nil @audience = 'rails-api' @issuer = nil @leeway = 60 @skip_paths = ['/up', '/health', '/rails/health'] @logger_tags = %i[request_id sub] @error_renderer = Verikloak::Rails::ErrorRenderer.new @auto_include_controller = true @render_500_json = false @rescue_pundit = true @middleware_insert_before = nil @middleware_insert_after = nil @auto_insert_bff_header_guard = true @bff_header_guard_insert_before = nil @bff_header_guard_insert_after = nil end # Options forwarded to the base Verikloak Rack middleware. # @return [Hash] # @example # Verikloak::Rails.config.middleware_options # #=> { discovery_url: 'https://example/.well-known/openid-configuration', leeway: 60, ... } def { discovery_url: discovery_url, audience: audience, issuer: issuer, leeway: leeway, skip_paths: skip_paths }.compact end end |
#auto_include_controller ⇒ Boolean
Auto-include the controller concern into ActionController::Base.
56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 |
# File 'lib/verikloak/rails/configuration.rb', line 56 class Configuration attr_accessor :discovery_url, :audience, :issuer, :leeway, :skip_paths, :logger_tags, :error_renderer, :auto_include_controller, :render_500_json, :rescue_pundit, :middleware_insert_before, :middleware_insert_after, :auto_insert_bff_header_guard, :bff_header_guard_insert_before, :bff_header_guard_insert_after # Initialize configuration with sensible defaults for Rails apps. # @return [void] def initialize @discovery_url = nil @audience = 'rails-api' @issuer = nil @leeway = 60 @skip_paths = ['/up', '/health', '/rails/health'] @logger_tags = %i[request_id sub] @error_renderer = Verikloak::Rails::ErrorRenderer.new @auto_include_controller = true @render_500_json = false @rescue_pundit = true @middleware_insert_before = nil @middleware_insert_after = nil @auto_insert_bff_header_guard = true @bff_header_guard_insert_before = nil @bff_header_guard_insert_after = nil end # Options forwarded to the base Verikloak Rack middleware. # @return [Hash] # @example # Verikloak::Rails.config.middleware_options # #=> { discovery_url: 'https://example/.well-known/openid-configuration', leeway: 60, ... } def { discovery_url: discovery_url, audience: audience, issuer: issuer, leeway: leeway, skip_paths: skip_paths }.compact end end |
#auto_insert_bff_header_guard ⇒ Boolean
Auto-insert ‘Verikloak::Bff::HeaderGuard` when available.
56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 |
# File 'lib/verikloak/rails/configuration.rb', line 56 class Configuration attr_accessor :discovery_url, :audience, :issuer, :leeway, :skip_paths, :logger_tags, :error_renderer, :auto_include_controller, :render_500_json, :rescue_pundit, :middleware_insert_before, :middleware_insert_after, :auto_insert_bff_header_guard, :bff_header_guard_insert_before, :bff_header_guard_insert_after # Initialize configuration with sensible defaults for Rails apps. # @return [void] def initialize @discovery_url = nil @audience = 'rails-api' @issuer = nil @leeway = 60 @skip_paths = ['/up', '/health', '/rails/health'] @logger_tags = %i[request_id sub] @error_renderer = Verikloak::Rails::ErrorRenderer.new @auto_include_controller = true @render_500_json = false @rescue_pundit = true @middleware_insert_before = nil @middleware_insert_after = nil @auto_insert_bff_header_guard = true @bff_header_guard_insert_before = nil @bff_header_guard_insert_after = nil end # Options forwarded to the base Verikloak Rack middleware. # @return [Hash] # @example # Verikloak::Rails.config.middleware_options # #=> { discovery_url: 'https://example/.well-known/openid-configuration', leeway: 60, ... } def { discovery_url: discovery_url, audience: audience, issuer: issuer, leeway: leeway, skip_paths: skip_paths }.compact end end |
#bff_header_guard_insert_after ⇒ Object, ...
Rack middleware to insert the header guard after.
56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 |
# File 'lib/verikloak/rails/configuration.rb', line 56 class Configuration attr_accessor :discovery_url, :audience, :issuer, :leeway, :skip_paths, :logger_tags, :error_renderer, :auto_include_controller, :render_500_json, :rescue_pundit, :middleware_insert_before, :middleware_insert_after, :auto_insert_bff_header_guard, :bff_header_guard_insert_before, :bff_header_guard_insert_after # Initialize configuration with sensible defaults for Rails apps. # @return [void] def initialize @discovery_url = nil @audience = 'rails-api' @issuer = nil @leeway = 60 @skip_paths = ['/up', '/health', '/rails/health'] @logger_tags = %i[request_id sub] @error_renderer = Verikloak::Rails::ErrorRenderer.new @auto_include_controller = true @render_500_json = false @rescue_pundit = true @middleware_insert_before = nil @middleware_insert_after = nil @auto_insert_bff_header_guard = true @bff_header_guard_insert_before = nil @bff_header_guard_insert_after = nil end # Options forwarded to the base Verikloak Rack middleware. # @return [Hash] # @example # Verikloak::Rails.config.middleware_options # #=> { discovery_url: 'https://example/.well-known/openid-configuration', leeway: 60, ... } def { discovery_url: discovery_url, audience: audience, issuer: issuer, leeway: leeway, skip_paths: skip_paths }.compact end end |
#bff_header_guard_insert_before ⇒ Object, ...
Rack middleware to insert the header guard before.
56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 |
# File 'lib/verikloak/rails/configuration.rb', line 56 class Configuration attr_accessor :discovery_url, :audience, :issuer, :leeway, :skip_paths, :logger_tags, :error_renderer, :auto_include_controller, :render_500_json, :rescue_pundit, :middleware_insert_before, :middleware_insert_after, :auto_insert_bff_header_guard, :bff_header_guard_insert_before, :bff_header_guard_insert_after # Initialize configuration with sensible defaults for Rails apps. # @return [void] def initialize @discovery_url = nil @audience = 'rails-api' @issuer = nil @leeway = 60 @skip_paths = ['/up', '/health', '/rails/health'] @logger_tags = %i[request_id sub] @error_renderer = Verikloak::Rails::ErrorRenderer.new @auto_include_controller = true @render_500_json = false @rescue_pundit = true @middleware_insert_before = nil @middleware_insert_after = nil @auto_insert_bff_header_guard = true @bff_header_guard_insert_before = nil @bff_header_guard_insert_after = nil end # Options forwarded to the base Verikloak Rack middleware. # @return [Hash] # @example # Verikloak::Rails.config.middleware_options # #=> { discovery_url: 'https://example/.well-known/openid-configuration', leeway: 60, ... } def { discovery_url: discovery_url, audience: audience, issuer: issuer, leeway: leeway, skip_paths: skip_paths }.compact end end |
#discovery_url ⇒ String?
OIDC discovery document URL.
56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 |
# File 'lib/verikloak/rails/configuration.rb', line 56 class Configuration attr_accessor :discovery_url, :audience, :issuer, :leeway, :skip_paths, :logger_tags, :error_renderer, :auto_include_controller, :render_500_json, :rescue_pundit, :middleware_insert_before, :middleware_insert_after, :auto_insert_bff_header_guard, :bff_header_guard_insert_before, :bff_header_guard_insert_after # Initialize configuration with sensible defaults for Rails apps. # @return [void] def initialize @discovery_url = nil @audience = 'rails-api' @issuer = nil @leeway = 60 @skip_paths = ['/up', '/health', '/rails/health'] @logger_tags = %i[request_id sub] @error_renderer = Verikloak::Rails::ErrorRenderer.new @auto_include_controller = true @render_500_json = false @rescue_pundit = true @middleware_insert_before = nil @middleware_insert_after = nil @auto_insert_bff_header_guard = true @bff_header_guard_insert_before = nil @bff_header_guard_insert_after = nil end # Options forwarded to the base Verikloak Rack middleware. # @return [Hash] # @example # Verikloak::Rails.config.middleware_options # #=> { discovery_url: 'https://example/.well-known/openid-configuration', leeway: 60, ... } def { discovery_url: discovery_url, audience: audience, issuer: issuer, leeway: leeway, skip_paths: skip_paths }.compact end end |
#error_renderer ⇒ Object
Custom error renderer object responding to ‘render(controller, error)`.
56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 |
# File 'lib/verikloak/rails/configuration.rb', line 56 class Configuration attr_accessor :discovery_url, :audience, :issuer, :leeway, :skip_paths, :logger_tags, :error_renderer, :auto_include_controller, :render_500_json, :rescue_pundit, :middleware_insert_before, :middleware_insert_after, :auto_insert_bff_header_guard, :bff_header_guard_insert_before, :bff_header_guard_insert_after # Initialize configuration with sensible defaults for Rails apps. # @return [void] def initialize @discovery_url = nil @audience = 'rails-api' @issuer = nil @leeway = 60 @skip_paths = ['/up', '/health', '/rails/health'] @logger_tags = %i[request_id sub] @error_renderer = Verikloak::Rails::ErrorRenderer.new @auto_include_controller = true @render_500_json = false @rescue_pundit = true @middleware_insert_before = nil @middleware_insert_after = nil @auto_insert_bff_header_guard = true @bff_header_guard_insert_before = nil @bff_header_guard_insert_after = nil end # Options forwarded to the base Verikloak Rack middleware. # @return [Hash] # @example # Verikloak::Rails.config.middleware_options # #=> { discovery_url: 'https://example/.well-known/openid-configuration', leeway: 60, ... } def { discovery_url: discovery_url, audience: audience, issuer: issuer, leeway: leeway, skip_paths: skip_paths }.compact end end |
#issuer ⇒ String?
Expected issuer (‘iss`) claim.
56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 |
# File 'lib/verikloak/rails/configuration.rb', line 56 class Configuration attr_accessor :discovery_url, :audience, :issuer, :leeway, :skip_paths, :logger_tags, :error_renderer, :auto_include_controller, :render_500_json, :rescue_pundit, :middleware_insert_before, :middleware_insert_after, :auto_insert_bff_header_guard, :bff_header_guard_insert_before, :bff_header_guard_insert_after # Initialize configuration with sensible defaults for Rails apps. # @return [void] def initialize @discovery_url = nil @audience = 'rails-api' @issuer = nil @leeway = 60 @skip_paths = ['/up', '/health', '/rails/health'] @logger_tags = %i[request_id sub] @error_renderer = Verikloak::Rails::ErrorRenderer.new @auto_include_controller = true @render_500_json = false @rescue_pundit = true @middleware_insert_before = nil @middleware_insert_after = nil @auto_insert_bff_header_guard = true @bff_header_guard_insert_before = nil @bff_header_guard_insert_after = nil end # Options forwarded to the base Verikloak Rack middleware. # @return [Hash] # @example # Verikloak::Rails.config.middleware_options # #=> { discovery_url: 'https://example/.well-known/openid-configuration', leeway: 60, ... } def { discovery_url: discovery_url, audience: audience, issuer: issuer, leeway: leeway, skip_paths: skip_paths }.compact end end |
#leeway ⇒ Integer
Clock skew allowance in seconds.
56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 |
# File 'lib/verikloak/rails/configuration.rb', line 56 class Configuration attr_accessor :discovery_url, :audience, :issuer, :leeway, :skip_paths, :logger_tags, :error_renderer, :auto_include_controller, :render_500_json, :rescue_pundit, :middleware_insert_before, :middleware_insert_after, :auto_insert_bff_header_guard, :bff_header_guard_insert_before, :bff_header_guard_insert_after # Initialize configuration with sensible defaults for Rails apps. # @return [void] def initialize @discovery_url = nil @audience = 'rails-api' @issuer = nil @leeway = 60 @skip_paths = ['/up', '/health', '/rails/health'] @logger_tags = %i[request_id sub] @error_renderer = Verikloak::Rails::ErrorRenderer.new @auto_include_controller = true @render_500_json = false @rescue_pundit = true @middleware_insert_before = nil @middleware_insert_after = nil @auto_insert_bff_header_guard = true @bff_header_guard_insert_before = nil @bff_header_guard_insert_after = nil end # Options forwarded to the base Verikloak Rack middleware. # @return [Hash] # @example # Verikloak::Rails.config.middleware_options # #=> { discovery_url: 'https://example/.well-known/openid-configuration', leeway: 60, ... } def { discovery_url: discovery_url, audience: audience, issuer: issuer, leeway: leeway, skip_paths: skip_paths }.compact end end |
#logger_tags ⇒ Array<Symbol>
Log tags to include (supports :request_id, :sub).
56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 |
# File 'lib/verikloak/rails/configuration.rb', line 56 class Configuration attr_accessor :discovery_url, :audience, :issuer, :leeway, :skip_paths, :logger_tags, :error_renderer, :auto_include_controller, :render_500_json, :rescue_pundit, :middleware_insert_before, :middleware_insert_after, :auto_insert_bff_header_guard, :bff_header_guard_insert_before, :bff_header_guard_insert_after # Initialize configuration with sensible defaults for Rails apps. # @return [void] def initialize @discovery_url = nil @audience = 'rails-api' @issuer = nil @leeway = 60 @skip_paths = ['/up', '/health', '/rails/health'] @logger_tags = %i[request_id sub] @error_renderer = Verikloak::Rails::ErrorRenderer.new @auto_include_controller = true @render_500_json = false @rescue_pundit = true @middleware_insert_before = nil @middleware_insert_after = nil @auto_insert_bff_header_guard = true @bff_header_guard_insert_before = nil @bff_header_guard_insert_after = nil end # Options forwarded to the base Verikloak Rack middleware. # @return [Hash] # @example # Verikloak::Rails.config.middleware_options # #=> { discovery_url: 'https://example/.well-known/openid-configuration', leeway: 60, ... } def { discovery_url: discovery_url, audience: audience, issuer: issuer, leeway: leeway, skip_paths: skip_paths }.compact end end |
#middleware_insert_after ⇒ Object, ...
Rack middleware to insert ‘Verikloak::Middleware` after.
56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 |
# File 'lib/verikloak/rails/configuration.rb', line 56 class Configuration attr_accessor :discovery_url, :audience, :issuer, :leeway, :skip_paths, :logger_tags, :error_renderer, :auto_include_controller, :render_500_json, :rescue_pundit, :middleware_insert_before, :middleware_insert_after, :auto_insert_bff_header_guard, :bff_header_guard_insert_before, :bff_header_guard_insert_after # Initialize configuration with sensible defaults for Rails apps. # @return [void] def initialize @discovery_url = nil @audience = 'rails-api' @issuer = nil @leeway = 60 @skip_paths = ['/up', '/health', '/rails/health'] @logger_tags = %i[request_id sub] @error_renderer = Verikloak::Rails::ErrorRenderer.new @auto_include_controller = true @render_500_json = false @rescue_pundit = true @middleware_insert_before = nil @middleware_insert_after = nil @auto_insert_bff_header_guard = true @bff_header_guard_insert_before = nil @bff_header_guard_insert_after = nil end # Options forwarded to the base Verikloak Rack middleware. # @return [Hash] # @example # Verikloak::Rails.config.middleware_options # #=> { discovery_url: 'https://example/.well-known/openid-configuration', leeway: 60, ... } def { discovery_url: discovery_url, audience: audience, issuer: issuer, leeway: leeway, skip_paths: skip_paths }.compact end end |
#middleware_insert_before ⇒ Object, ...
Rack middleware to insert ‘Verikloak::Middleware` before.
56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 |
# File 'lib/verikloak/rails/configuration.rb', line 56 class Configuration attr_accessor :discovery_url, :audience, :issuer, :leeway, :skip_paths, :logger_tags, :error_renderer, :auto_include_controller, :render_500_json, :rescue_pundit, :middleware_insert_before, :middleware_insert_after, :auto_insert_bff_header_guard, :bff_header_guard_insert_before, :bff_header_guard_insert_after # Initialize configuration with sensible defaults for Rails apps. # @return [void] def initialize @discovery_url = nil @audience = 'rails-api' @issuer = nil @leeway = 60 @skip_paths = ['/up', '/health', '/rails/health'] @logger_tags = %i[request_id sub] @error_renderer = Verikloak::Rails::ErrorRenderer.new @auto_include_controller = true @render_500_json = false @rescue_pundit = true @middleware_insert_before = nil @middleware_insert_after = nil @auto_insert_bff_header_guard = true @bff_header_guard_insert_before = nil @bff_header_guard_insert_after = nil end # Options forwarded to the base Verikloak Rack middleware. # @return [Hash] # @example # Verikloak::Rails.config.middleware_options # #=> { discovery_url: 'https://example/.well-known/openid-configuration', leeway: 60, ... } def { discovery_url: discovery_url, audience: audience, issuer: issuer, leeway: leeway, skip_paths: skip_paths }.compact end end |
#render_500_json ⇒ Boolean
Rescue StandardError and render a JSON 500 response.
56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 |
# File 'lib/verikloak/rails/configuration.rb', line 56 class Configuration attr_accessor :discovery_url, :audience, :issuer, :leeway, :skip_paths, :logger_tags, :error_renderer, :auto_include_controller, :render_500_json, :rescue_pundit, :middleware_insert_before, :middleware_insert_after, :auto_insert_bff_header_guard, :bff_header_guard_insert_before, :bff_header_guard_insert_after # Initialize configuration with sensible defaults for Rails apps. # @return [void] def initialize @discovery_url = nil @audience = 'rails-api' @issuer = nil @leeway = 60 @skip_paths = ['/up', '/health', '/rails/health'] @logger_tags = %i[request_id sub] @error_renderer = Verikloak::Rails::ErrorRenderer.new @auto_include_controller = true @render_500_json = false @rescue_pundit = true @middleware_insert_before = nil @middleware_insert_after = nil @auto_insert_bff_header_guard = true @bff_header_guard_insert_before = nil @bff_header_guard_insert_after = nil end # Options forwarded to the base Verikloak Rack middleware. # @return [Hash] # @example # Verikloak::Rails.config.middleware_options # #=> { discovery_url: 'https://example/.well-known/openid-configuration', leeway: 60, ... } def { discovery_url: discovery_url, audience: audience, issuer: issuer, leeway: leeway, skip_paths: skip_paths }.compact end end |
#rescue_pundit ⇒ Boolean
Rescue ‘Pundit::NotAuthorizedError` and render JSON 403 responses.
56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 |
# File 'lib/verikloak/rails/configuration.rb', line 56 class Configuration attr_accessor :discovery_url, :audience, :issuer, :leeway, :skip_paths, :logger_tags, :error_renderer, :auto_include_controller, :render_500_json, :rescue_pundit, :middleware_insert_before, :middleware_insert_after, :auto_insert_bff_header_guard, :bff_header_guard_insert_before, :bff_header_guard_insert_after # Initialize configuration with sensible defaults for Rails apps. # @return [void] def initialize @discovery_url = nil @audience = 'rails-api' @issuer = nil @leeway = 60 @skip_paths = ['/up', '/health', '/rails/health'] @logger_tags = %i[request_id sub] @error_renderer = Verikloak::Rails::ErrorRenderer.new @auto_include_controller = true @render_500_json = false @rescue_pundit = true @middleware_insert_before = nil @middleware_insert_after = nil @auto_insert_bff_header_guard = true @bff_header_guard_insert_before = nil @bff_header_guard_insert_after = nil end # Options forwarded to the base Verikloak Rack middleware. # @return [Hash] # @example # Verikloak::Rails.config.middleware_options # #=> { discovery_url: 'https://example/.well-known/openid-configuration', leeway: 60, ... } def { discovery_url: discovery_url, audience: audience, issuer: issuer, leeway: leeway, skip_paths: skip_paths }.compact end end |
#skip_paths ⇒ Array<String>
Paths to skip verification.
56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 |
# File 'lib/verikloak/rails/configuration.rb', line 56 class Configuration attr_accessor :discovery_url, :audience, :issuer, :leeway, :skip_paths, :logger_tags, :error_renderer, :auto_include_controller, :render_500_json, :rescue_pundit, :middleware_insert_before, :middleware_insert_after, :auto_insert_bff_header_guard, :bff_header_guard_insert_before, :bff_header_guard_insert_after # Initialize configuration with sensible defaults for Rails apps. # @return [void] def initialize @discovery_url = nil @audience = 'rails-api' @issuer = nil @leeway = 60 @skip_paths = ['/up', '/health', '/rails/health'] @logger_tags = %i[request_id sub] @error_renderer = Verikloak::Rails::ErrorRenderer.new @auto_include_controller = true @render_500_json = false @rescue_pundit = true @middleware_insert_before = nil @middleware_insert_after = nil @auto_insert_bff_header_guard = true @bff_header_guard_insert_before = nil @bff_header_guard_insert_after = nil end # Options forwarded to the base Verikloak Rack middleware. # @return [Hash] # @example # Verikloak::Rails.config.middleware_options # #=> { discovery_url: 'https://example/.well-known/openid-configuration', leeway: 60, ... } def { discovery_url: discovery_url, audience: audience, issuer: issuer, leeway: leeway, skip_paths: skip_paths }.compact end end |
Instance Method Details
#middleware_options ⇒ Hash
Options forwarded to the base Verikloak Rack middleware.
89 90 91 92 93 94 95 96 97 |
# File 'lib/verikloak/rails/configuration.rb', line 89 def { discovery_url: discovery_url, audience: audience, issuer: issuer, leeway: leeway, skip_paths: skip_paths }.compact end |