diff --git a/CHANGELOG.md b/CHANGELOG.md index 567f0646..7e8af1eb 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,8 @@ Unreleased Changes ------------------ +* Issue - Use `request.ip` in `sent_from_docker_host?`. + 3.6.3 (2022-09-06) ------------------ diff --git a/lib/aws/rails/middleware/ebs_sqs_active_job_middleware.rb b/lib/aws/rails/middleware/ebs_sqs_active_job_middleware.rb index 8eb4092d..84306978 100644 --- a/lib/aws/rails/middleware/ebs_sqs_active_job_middleware.rb +++ b/lib/aws/rails/middleware/ebs_sqs_active_job_middleware.rb @@ -24,7 +24,7 @@ def call(env) # Only accept requests from this user agent if it is from localhost or a docker host in case of forgery. unless request.local? || sent_from_docker_host?(request) - @logger.warn("SQSD request detected from untrusted address #{request.remote_ip}; returning 403 forbidden.") + @logger.warn("SQSD request detected from untrusted address #{request.ip}; returning 403 forbidden.") return FORBIDDEN_RESPONSE end @@ -81,7 +81,7 @@ def periodic_task?(request) end def sent_from_docker_host?(request) - app_runs_in_docker_container? && request.remote_ip == '172.17.0.1' + app_runs_in_docker_container? && request.ip == '172.17.0.1' end def app_runs_in_docker_container?