Skip to content

[ADBC] Support OAuth2 authentication in Flight SQL Java driver #4277

@lxyzxx

Description

@lxyzxx

What feature or improvement would you like to see?

Background

The Java Flight SQL driver currently supports basic authentication and custom authorization headers.

Problem

OAuth2 is commonly used for authentication in many deployments (e.g., via providers such as Keycloak or cloud IAM systems). However, the Java Flight SQL driver does not currently provide a standardized mechanism to configure OAuth2-based authentication (e.g., client credentials flow).

Proposal

Introduce initial support for OAuth2 authentication in the Java Flight SQL driver:

  • Add connection options for configuring OAuth2 parameters (e.g., token endpoint, client credentials, grant type)
  • Introduce a token provider abstraction responsible for acquiring and refreshing access tokens
  • Automatically attach the Authorization: Bearer <token> header to Flight requests

Scope

This proposal focuses on the Java Flight SQL driver as an initial implementation. It does not introduce changes to other ADBC drivers at this stage.

Open Questions

  • Should OAuth2 support be standardized across ADBC drivers?
  • If so, should a common abstraction be introduced at the ADBC layer?

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions