-
Notifications
You must be signed in to change notification settings - Fork 50
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
Enable universal default for public-url
#608
Comments
When combined with canonical/istio-operators#277, this also means we no longer need to change |
@kimwnasptd Are we bringing it into 1.8? |
To add some slight more clarification to the above. First of all the name The name The
My proposal, to make this more clear, would be to rename In the context of the Dex charm the Then, in the context of the AuthService charm the |
Then the last piece we need to discuss, which is AuthService specific, is the This is a value that AuthService will use to redirect users to go and login/authenticate to. AuthService is having a logic here in which if the
So by setting this env var to a relative path, like upstream sets it to This means that the above setting allows the OIDC Client and Provider to use "private" NOTE though that the above is strictly a feature of AuthService. For other projects like |
So, to summarise all the above with some examples: 1. Different public-url in AuthService/Dex and no
|
Would it also be possible to extract URL information as a charm action from the kubeflow dashboard charm? juju run-action kubeflow-dashboard/0 get-urls |
Based on the feedback we have received in the past few months, I believe this issue should be resolved for both 1.8 and the latest version of the bundle. By changing the way we configure the The path to resolve this issue should be as follows:
|
Thank you for reporting us your feedback! The internal ticket has been created: https://warthogs.atlassian.net/browse/KF-5375.
|
These variables are required by the OIDC Authservice to correctly redirect users along the authentication flow. * OIDC_AUTH_URL: is used as the URL tht Authservice will hit for initiating the auth flow * AFTER_LOGIN_URL: is used for redirecting after login These variables are required because the default behaviour of OIDC Authservice is to redirect to URLs that can be undesired, by setting them up, we have a deterministic way of setting where users should be redirected. Part of canonical/bundle-kubeflow#608
These variables are required by the OIDC Authservice to correctly redirect users along the authentication flow. * OIDC_AUTH_URL: is used as the URL tht Authservice will hit for initiating the auth flow * AFTER_LOGIN_URL: is used for redirecting after login These variables are required because the default behaviour of OIDC Authservice is to redirect to URLs that can be undesired, by setting them up, we have a deterministic way of setting where users should be redirected. Part of canonical/bundle-kubeflow#608
These variables are required by the OIDC Authservice to correctly redirect users along the authentication flow. * OIDC_AUTH_URL: is used as the URL tht Authservice will hit for initiating the auth flow * AFTER_LOGIN_URL: is used for redirecting after login These variables are required because the default behaviour of OIDC Authservice is to redirect to URLs that can be undesired, by setting them up, we have a deterministic way of setting where users should be redirected. Part of canonical/bundle-kubeflow#608
* feat: add OIDC_AUTH_URL and AFTER_LOGIN_URL env variables These variables are required by the OIDC Authservice to correctly redirect users along the authentication flow. * OIDC_AUTH_URL: is used as the URL tht Authservice will hit for initiating the auth flow * AFTER_LOGIN_URL: is used for redirecting after login * AFTER_LOGOUT_URL: is used for redirecting after logout. These variables are required because the default behaviour of OIDC Authservice is to redirect to URLs that can be undesired, by setting them up, we have a deterministic way of setting where users should be redirected. Part of canonical/bundle-kubeflow#608
* feat: add OIDC_AUTH_URL and AFTER_LOGIN_URL env variables These variables are required by the OIDC Authservice to correctly redirect users along the authentication flow. * OIDC_AUTH_URL: is used as the URL tht Authservice will hit for initiating the auth flow * AFTER_LOGIN_URL: is used for redirecting after login * AFTER_LOGOUT_URL: is used for redirecting after logout. These variables are required because the default behaviour of OIDC Authservice is to redirect to URLs that can be undesired, by setting them up, we have a deterministic way of setting where users should be redirected. Part of canonical/bundle-kubeflow#608
Thanks everyone for contributing with suggestions and providing information. The team has designed the solution for this proposal and will work on it soon.
I will close this issue because it is not needed anymore, but please refer to the following for status:
|
In Charmed Kubeflow <=1.7, oidc-gatekeeper and dex-auth must be configured with a
public-url
, like described here. This setting tells:Unfortunately, the public-url is often not known until after deploy time (although with our suggested setup in microk8s, it is typically http://10.64.140.43.nip.io/). This yields an awkward user experience where users have to inspect their install mid-setup.
The
public-url
gets put into:issuer
OIDC_PROVIDER
OIDC_AUTH_URL
is unset, defines where oidc should redirect users to when they need to find dexFor oidc, we have been setting
OIDC_PROVIDER
but notOIDC_AUTH_URL
, soOIDC_PROVIDER
must be a publicly resolvable URL.Based on this upstream manifest, we see upstream sets
OIDC_PROVIDER
to a kubernetes-internal url not a public one. This is because they also setOIDC_AUTH_URL
which defines the redirect behaviour for users. This results in:issuer
/OIDC_PROVIDER
arguments (which we used to set viapublic-url
) do not changed based on deployment. They are always the same, and no longer need to be modified by usersTo achieve this new setup, it is proposed that we reconfigure our charms to use:
This should work for all configurations of charmed kubeflow without any modifications to
public-url
. This also means that when users add SSL to istio-pilot, they do not need to modify thepublic-url
at the same time (fromhttp://
tohttps://
)Implementation plan
To implement, we need to complete all of the following:
The text was updated successfully, but these errors were encountered: