[Improvement] Support client_secret_basic for OAuth 2.0 token requests
- Dominant language
- Java
- Stars
- 3.2k
- Forks
- 935
- Avg merge
- 1d 16h
- Merged PRs (30d)
- 298
Description
### What would you like to be improved?
The gravitino client implementations currently support only the `client_secret_post` authentication method when requesting an access token.
There is no option to use `client_secret_basic`, where the client credentials are sent through the HTTP Authorization header.
References:
- https://www.rfc-editor.org/rfc/rfc6749.html#section-2.3.1
- https://openid.net/specs/openid-connect-core-1_0-18.html#ClientAuthentication
### How should we improve?
Support configurable OAuth 2.0 token endpoint client authentication methods in both Java and Python clients or fetch the oidc configuration JSON before fetching access token.
Contributor guide
Research direction
No files, tests, or entry points are named. Locate the Java and Python client implementations that request OAuth 2.0 access tokens, then inspect how client_secret_post is configured and how token endpoint authentication is selected. Done means both clients support client_secret_basic or obtain the method from OIDC configuration, with behavior covered by the relevant client tests.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java, python
- Domain
- api, authentication
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 52/100