lasdf1234 opened a new pull request, #11901:
URL: https://github.com/apache/gravitino/pull/11901

   ### What changes were proposed in this pull request?
   
   This PR adds Kerberos authentication support for the Iceberg REST Catalog 
(IRC) when using a **JDBC** catalog backend with an HDFS warehouse.
   
   - Add `ClosableJdbcCatalog` wrapping Iceberg `JdbcCatalog`, implementing 
`SupportsKerberos` and `Closeable` (aligned with `ClosableHiveCatalog`).
   - Update `IcebergCatalogUtil.loadJdbcCatalog` to use `ClosableJdbcCatalog`, 
configure HDFS security settings, and initialize Kerberos login.
   - Make `JdbcCatalogWithMetadataLocationSupport` extend `ClosableJdbcCatalog`.
   
   Fix: #11900
   
   ### Why are the changes needed?
   
   The Hive catalog backend already supports HDFS Kerberos via 
`ClosableHiveCatalog`. JDBC-backed IRC deployments on Kerberized HDFS clusters 
currently lack equivalent support, causing warehouse access failures.
   
   ### Does this PR introduce _any_ user-facing change?
   
   Yes. IRC with JDBC backend now supports Kerberos authentication for HDFS 
access when configured:
   
   ```
   gravitino.iceberg-rest.authentication.type=kerberos
   gravitino.iceberg-rest.authentication.kerberos.principal=xxx@REALM
   
gravitino.iceberg-rest.authentication.kerberos.keytab-uri=hdfs:///path/to/xxx.keytab
   ```
   
   ### How was this patch tested?
   
   - `./gradlew :iceberg:iceberg-common:spotlessApply`
   - `./gradlew :iceberg:iceberg-common:test --tests 
"org.apache.gravitino.iceberg.common.utils.TestIcebergCatalogUtil" -PskipITs`
   
   
   Made with [Cursor](https://cursor.com)


-- 
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]

Reply via email to