Apache Iceberg version
1.7.1 (latest release)
Query engine
None
Feature Request / Improvement
For the REST Catalog service (after deprecating the oauth endpoint), the refresh token flow (https://datatracker.ietf.org/doc/html/rfc6749#section-6) is not supported yet. The current supported flow is "token-exchange" and used as a way to refresh tokens: https://github.com/apache/iceberg/blob/main/core/src/main/java/org/apache/iceberg/rest/auth/OAuth2Util.java#L163.
The refresh token flow should be taking in:
- Basic auth header: "Authorization: Basic ${base64_encoded_colon_separated_client_id_and_secret}" (depending on the authorization server implementation, sometimes Bearer token also works).
- Form data: "grant_type=refresh_token&refresh_token=..." (optionally plaintext client id and secret if not provided through auth header).
A proposal to support this flow is to allow providing:
- refresh_token
- client id and secret (or a base64 encoded string of both)
through properties similar to credential or token to work together with the oauth2-server-uri property.
Willingness to contribute
Apache Iceberg version
1.7.1 (latest release)
Query engine
None
Feature Request / Improvement
For the REST Catalog service (after deprecating the oauth endpoint), the refresh token flow (https://datatracker.ietf.org/doc/html/rfc6749#section-6) is not supported yet. The current supported flow is "token-exchange" and used as a way to refresh tokens: https://github.com/apache/iceberg/blob/main/core/src/main/java/org/apache/iceberg/rest/auth/OAuth2Util.java#L163.
The refresh token flow should be taking in:
A proposal to support this flow is to allow providing:
through properties similar to credential or token to work together with the oauth2-server-uri property.
Willingness to contribute