connector-plugin-sdk icon indicating copy to clipboard operation
connector-plugin-sdk copied to clipboard

[FEATURE] allow external OAuth config files without having to embed one

Open xsgao-github opened this issue 1 year ago • 7 comments

Is your feature request related to a problem? Please describe.

Quote from https://tableau.github.io/connector-plugin-sdk/docs/oauth:

However in both cases, at least one embedded config is still required.

For Starburst Enterprise and Galaxy, users define which IDP to use for OAuth. So we can't embed a generic OAuth config in our connector, and have to put a dummy one labeled as ..._template. This is not user-friendly.

image

Describe the solution you'd like Remove the restriction at least one embedded config is still required so we can build a generic connector without embed OAuth config.

Describe alternatives you've considered None.

About You Name: Song Gao Company: Starburst Data

xsgao-github avatar Apr 05 '23 21:04 xsgao-github

At Denodo, we are also interested on this.

About You: Name: Carlos Santos Canelles Company: Denodo Technologies

carlossc avatar Apr 12 '23 16:04 carlossc

@xsgao-github , we are going to include a default OAuth configuration for Azure AD so at least there is something there that can be useful.

carlossc avatar Apr 13 '23 10:04 carlossc

Thanks for your feedback. We are tracking this in our backlog as a potential improvement for a future release. This issue will be left open and notified if there are any changes.

rosswbrown avatar May 26 '23 18:05 rosswbrown

Hi, does anyone have any update on this feature? Any target release date? Thanks. @carlossc @rosswbrown

Luke-Shao avatar Jul 05 '24 07:07 Luke-Shao

@Luke-Shao I work for Denodo; not Tableau. I am not aware that Tableau implemented this.

carlossc avatar Jul 05 '24 07:07 carlossc

This feature was added in the 2024.1 release, but due to an oversight on my part it has not been documented yet. Wrote up a story to document this feature, but in the meantime you can create an OAuth-enabled connector without an embedded config by setting the oauth-config element in the manifest to null_config. Until we get a sample up you can use this packager unit test file as a guide:

https://github.com/tableau/connector-plugin-sdk/blob/ae18eb0d7151e345f0d3e77e67e83ca27f169a8a/connector-packager/tests/test_resources/null_oauth_config/manifest.xml#L19

If the customer has not set up BYOIDP, and they try and choose OAuth, they'll be told that OAuth is not set up and the sign in button will be disabled.

Will keep this issue open until the official documentation is merged.

pvanderknyff avatar Jul 08 '24 22:07 pvanderknyff

This feature was added in the 2024.1 release

I tested it with 2023.1 and 2024.1. Though it works in 2024.1, setting file='null_config' caused Tableau Desktop unable to load taco file in 2023.1. Please confirm. And do you have plan to back-port this support to older versions?

xsgao-github avatar Jul 10 '24 15:07 xsgao-github

The packager looks incorrect, this should work in 2023.3 and newer. However, we have no plans to backport further.

pvanderknyff avatar Jul 22 '24 22:07 pvanderknyff

Documentation added: https://tableau.github.io/connector-plugin-sdk/docs/oauth-dev

pvanderknyff avatar Jul 23 '24 22:07 pvanderknyff