Skip to content

feat(pii): Wire core request interface to data_collection #3003

Description

@sl0thentr0py

Stack position: 4/10. Blocked by #3001**,** #3002**.**

Replace the send_default_pii gate in the core request/event path with data_collection, using the modes/denylist helper (#3001).

Gate sites

  • sentry-ruby/lib/sentry/interfaces/request.rb
    • :50-54 IP headers (IP_HEADERS wipe) → gated by IP/user_info handling (coordinate with RUBY-192)
    • :59-63 request body, cookies, query string → http_bodies (:incoming_request), cookies, query_params
    • :96 HTTP_AUTHORIZATION and other request headers → http_headers.request modes/denylist
  • sentry-ruby/lib/sentry/event.rb:106 IP address (calculate_real_ip_from_rack) — coordinate the IP gate with user_info (RUBY-192); keep here whichever category owns request IP.

Files

  • interfaces/request.rb, event.rb
  • spec/sentry/interfaces/request_interface_spec.rb, spec/sentry/event_spec.rb, spec/sentry/rack/capture_exceptions_spec.rb

Tests

  • Cookies/query/body/headers under each mode; denylist scrubbing on headers (e.g. Authorization); body only when :incoming_request present.

Security-sensitive: primary inbound-request PII path.

Metadata

Metadata

Assignees

Labels

Fields

No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions