HyukjinKwon opened a new pull request, #58614:
URL: https://github.com/apache/spark/pull/58614

   ### What changes were proposed in this pull request?
   
   Add an opt-in `spark.sql.avro.schemaUrlAllowedSchemes` (internal, default 
empty = no
   restriction). When non-empty, an `avroSchemaUrl` whose resolved URI scheme 
is not in the
   allowlist is rejected before the schema is opened. A scheme-less path is 
resolved against the
   default file system before its scheme is checked, so it can be permitted by 
allowing that file
   system's scheme.
   
   ### Why are the changes needed?
   
   Gives operators an optional control over which URI schemes are accepted for 
the `avroSchemaUrl`
   option. Empty by default, so there is no behavior change unless configured.
   
   ### Does this PR introduce _any_ user-facing change?
   
   No by default. When `spark.sql.avro.schemaUrlAllowedSchemes` is set, an 
`avroSchemaUrl` whose
   scheme is not listed is rejected.
   
   ### How was this patch tested?
   
   New `AvroSuite` tests: an allowed scheme is permitted (including a 
scheme-less local path that
   resolves to `file`), a scheme not in the allowlist is rejected, and the 
empty default imposes no
   restriction.
   
   ### Was this patch authored or co-authored using generative AI tooling?
   
   Generated-by: Claude Opus 4.8
   
   This pull request and its description were written by Isaac.
   
   Co-authored-by: Isaac <[email protected]>
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to