-
Notifications
You must be signed in to change notification settings - Fork 172
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
OAuth 2.0 Credential Format for Delta Sharing Client #269
Comments
This format is designed to be future-proof and extensible for more authentication schemes in the future. The Bearer token auth
HTTP Basic Auth
|
This proposal is a result of discussion with @davidgreenfield , @chakankardb and @wchau. |
… Client Signed-off-by: dialberg <[email protected]>
… Client Signed-off-by: dialberg <[email protected]>
… Client Signed-off-by: dialberg <[email protected]>
… Client Signed-off-by: dialberg <[email protected]>
… Client Signed-off-by: dialberg <[email protected]>
… Client Signed-off-by: dialberg <[email protected]>
… Client Signed-off-by: dialberg <[email protected]>
… Client Signed-off-by: dialberg <[email protected]>
… Client Signed-off-by: dialberg <[email protected]>
Hi, Could you please review and approve the discussed issue code fix located at : https://github.com/dialberg/delta-sharing The current fix does not change the current system’s behavior and functionality and adds bearer token auth and basic authentication schemes. All ../python/tests passed successfully. We would be very grateful to get the approval to perform the pull request and see implemented changes in the client. Thanks, |
Hi @dialberg , is there a single PR or commit that has all the changes you need a review for? I went through the commit history of yours and figured most changes should be in dialberg@e57cc89. Can you confirm that? Feel free to start a pull request against this repo. It'll make the review easier and merge process faster. |
…Delta Sharing Python Client Signed-off-by: dialberg <[email protected]>
Hi @zhuansunxt, Pull request branch with one commit was created. Thanks, |
Hi @dialberg, That commit you linked does not look quite right. It is a change about pre-signed URL caching. Can you double check and link to the right commit that you are looking for a review? |
… Python Client Pull Request Signed-off-by: dialberg <[email protected]>
… Python Client Pull Request Signed-off-by: dialberg <[email protected]>
Hi @zhuansunxt, Sorry. Updated. Thanks, |
Hi @zhuansunxt, Could I open PR against 'main' base branch ? Thanks, |
… Python Client Pull Request Signed-off-by: Dima Alberg <[email protected]>
… Python Client Pull Request Signed-off-by: Dima Alberg <[email protected]>
… Python Client Pull Request Signed-off-by: Dima Alberg <[email protected]>
… Python Client Pull Request Signed-off-by: Dima Alberg <[email protected]>
… Python Client Pull Request Signed-off-by: Dima Alberg <[email protected]>
… Python Client Pull Request Signed-off-by: Dima Alberg <[email protected]>
#309) * Issue ref #269: OAuth 2.0 Credential Format for Delta Sharing Python Client Pull Request Signed-off-by: Dima Alberg <[email protected]> * Issue ref #269: OAuth 2.0 Credential Format for Delta Sharing Python Client Pull Request Signed-off-by: Dima Alberg <[email protected]> * Issue ref #269: OAuth 2.0 Credential Format for Delta Sharing Python Client Pull Request Signed-off-by: Dima Alberg <[email protected]> * Issue ref #269: OAuth 2.0 Credential Format for Delta Sharing Python Client Pull Request Signed-off-by: Dima Alberg <[email protected]> * Issue ref #269: OAuth 2.0 Credential Format for Delta Sharing Python Client Pull Request Signed-off-by: Dima Alberg <[email protected]> * Issue ref #269: OAuth 2.0 Credential Format for Delta Sharing Python Client Pull Request Signed-off-by: Dima Alberg <[email protected]> --------- Signed-off-by: Dima Alberg <[email protected]>
… Spark Client Pull Request Signed-off-by: Dima Alberg <[email protected]>
… Spark Client Pull Request Signed-off-by: Dima Alberg <[email protected]>
we are changing |
This is a proposal to add OAuth2.0 support in Delta Sharing.
2-legged OAuth for Delta Sharing
We will focus on supporting 2-legged OAuth flow for Delta Sharing which is suitable for programmatic applications like Apache Spark and Pandas. In a 2-legged OAuth flow, the client application will interact with an Authorization Server (AS) to obtain its OAuth credentials and use that credential to authenticate to the Resource Server (RS) to access data. In the Delta Sharing case, AS can be any 3rd party service hosted by identity provider and RS is the Delta Sharing Server hosting the data. Compared to 3-legged OAuth, no end user's intervention is needed and no end user credential is involved.
Token Endpoint on Authorization Server (AS)
RFC 8693 fully specifies the standard and best practice of an OAuth token exchange endpoint. When configured to use OAuth, A Delta Sharing connector as client application is going to assume an available token exchange endpoint that implements the Client Credentials Grant flow of the OAuth 2.0 specification. Specifically:
Authorization
HTTP header is accepted to pass client application credentials.Accept
HTTP header is accepted withapplicaton/json
value.Content-Type
HTTP header is accepted withapplication/x-www-form-urlencoded
value.grant_type
in post body is accepted withclient_credentials
value.The simplest way to request access token is by making below CURL request:
The format for Client Application Credentials File
We propose the below format of a credential file for Delta Sharing connector to accept for OAuth configuration.
File format: json
2
for OAuth.oauth_client_credentials
(persistent_oauth
deprecated) for 2-legged, programmatic OAuth.Example:
The client that is configured with credential file should use the token endpoint to get access token and use it to authenticate to the sharing server.
The text was updated successfully, but these errors were encountered: