Class ImportExportConfigurationSchema

java.lang.Object
org.gridgain.internal.sql.copy.configuration.ImportExportConfigurationSchema

@Config public class ImportExportConfigurationSchema extends Object
Node-local configuration for server-side SQL COPY of file / object-store locations.

Secure-by-default: fileAccessEnabled is false and every allow-list is empty, so out of the box server-side file COPY is rejected. An operator must both enable it and populate the allow-lists (and grant the COPY_FROM_FILE / COPY_TO_FILE privileges).

Allow-list matching semantics: importRoots are directory prefixes (a COPY location must canonicalize inside one — point them at dedicated directories, never the node work directory, since COPY_TO_FILE overwrites files inside a root). allowedS3Endpoints / allowedCatalogUris match by host (case-insensitive) or full string, so an allow-listed host is reachable on any port. allowedS3Buckets entries are either a bucket name or a bucket/key-prefix.

  • Field Details

    • fileAccessEnabled

      @Value(hasDefault=true) public boolean fileAccessEnabled
      Master switch. When false (default), the file/object-store side of COPY is disabled entirely.
    • importRoots

      @Value(hasDefault=true) public String[] importRoots
      Absolute directories COPY may read from / write to. Empty means no local file access.
    • allowedS3Buckets

      @Value(hasDefault=true) public String[] allowedS3Buckets
      Allow-listed S3 buckets (bucket, or bucket/key-prefix) COPY may read from / write to. Empty forbids S3 COPY.
    • allowedS3Endpoints

      @Value(hasDefault=true) public String[] allowedS3Endpoints
      Allow-listed S3 endpoint overrides (host or full URI). Empty means endpoint override is forbidden.
    • allowedIcebergClasses

      @Value(hasDefault=true) public String[] allowedIcebergClasses
      Allow-listed Iceberg reflectively-loaded class names, covering all three roles: catalog-impl, io-impl (FileIO), and client.factory. Empty means Iceberg COPY is forbidden.
    • allowedCatalogUris

      @Value(hasDefault=true) public String[] allowedCatalogUris
      Allow-listed Iceberg catalog URIs (host or full URI) for REST/JDBC/Nessie catalogs. Empty forbids hosted catalog URIs.
    • maxGlobDepth

      @Value(hasDefault=true) @Range(min=1L) public int maxGlobDepth
      Maximum directory depth the parquet glob walk may descend.
    • maxGlobFiles

      @Value(hasDefault=true) @Range(min=1L) public int maxGlobFiles
      Maximum number of files the parquet glob walk may match.
  • Constructor Details

    • ImportExportConfigurationSchema

      public ImportExportConfigurationSchema()