HDFS content-server signer + YAML config; select signer for HDFS/WebHDFS #785
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Title: HDFS content-server signer + YAML config; select signer for HDFS/WebHDFS
Why
Summary of changes (delta-sharing submodule)
server/src/main/scala/io/delta/sharing/server/common/HdfsFileSigner.scala: Signs Ed25519 JWT tokens and returns/get?token=...URLs pointing at a Content Server.standalone/internal/DeltaSharedTable.scala: chooseHdfsFileSignerwhen table data path is onorg.apache.hadoop.hdfs.DistributedFileSystem,org.apache.hadoop.hdfs.web.WebHdfsFileSystem, ororg.apache.hadoop.hdfs.web.SWebHdfsFileSystem.kernel/internal/DeltaSharedTableKernel.scala: matches the same logic for Kernel path.server/src/main/scala/io/delta/sharing/server/config/ServerConfig.scala: addhdfsSignerwith fields:contentServerBase: base URL for the Content Server (e.g.,https://content.example.com).signingPrivateKeyFile: PEM Ed25519 private key path.audience(optional): JWT aud to embed/enforce.kid(optional): key id for rotation.server/src/main/scala/io/delta/sharing/server/DeltaSharingService.scala: configureHdfsFileSignerfrom YAML if provided; falls back to env/-D.config/delta-sharing-server.yaml.sample: showshdfsSigner:block with comments.build.sbt: addorg.bitbucket.b_c:jose4jfor Ed25519 JWT signing.Behavior & compatibility
Content Server (reference implementation in companion repo)
/get?token=...endpoint with:Range: bytes=...handling; returns 206 +Content-Range.config/content-server.yaml.sample.Security
audandkidsupport; rotation by adding new public key to Content Server.Testing
hdfsSignerconfigured (YAML or env).queryand fetch file URLs; verify they are/get?token=....curl -H 'Range: bytes=0-1023'the returned URL; expect206 Partial Content.Docs
hdfsSignerblock; comments explain fields and operational guidance.Notes