Class: DecisionAgent::Web::Middleware::AuthMiddleware
- Inherits:
-
Object
- Object
- DecisionAgent::Web::Middleware::AuthMiddleware
- Defined in:
- lib/decision_agent/web/middleware/auth_middleware.rb
Instance Method Summary collapse
- #call(env) ⇒ Object
-
#initialize(app, authenticator:, access_audit_logger: nil) ⇒ AuthMiddleware
constructor
A new instance of AuthMiddleware.
Constructor Details
#initialize(app, authenticator:, access_audit_logger: nil) ⇒ AuthMiddleware
9 10 11 12 13 |
# File 'lib/decision_agent/web/middleware/auth_middleware.rb', line 9 def initialize(app, authenticator:, access_audit_logger: nil) @app = app @authenticator = authenticator @access_audit_logger = access_audit_logger end |
Instance Method Details
#call(env) ⇒ Object
15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
# File 'lib/decision_agent/web/middleware/auth_middleware.rb', line 15 def call(env) request = Rack::Request.new(env) token = extract_token(request) if token auth_result = @authenticator.authenticate(token) if auth_result env["decision_agent.user"] = auth_result[:user] env["decision_agent.session"] = auth_result[:session] end end @app.call(env) end |