Skip to content
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

Create a valid user if no one exist when deploying on OpenShift #18152

Closed
l0rd opened this issue Oct 21, 2020 · 7 comments
Closed

Create a valid user if no one exist when deploying on OpenShift #18152

l0rd opened this issue Oct 21, 2020 · 7 comments
Assignees
Labels
area/che-operator Issues and PRs related to Eclipse Che Kubernetes Operator kind/enhancement A feature request - must adhere to the feature request template. severity/P1 Has a major impact to usage or development of the system.
Milestone

Comments

@l0rd
Copy link
Contributor

l0rd commented Oct 21, 2020

Is your enhancement related to a problem? Please describe.

If, at the moment of installation on OpenShift, kubeadmin is the only user the operator doesn't enable OpenShift OAuth.

Describe the solution you'd like

Create a new OpenShift user through htpasswd (automatically generate password) and enable OpenShift OAuth.

@l0rd l0rd added kind/enhancement A feature request - must adhere to the feature request template. area/che-operator Issues and PRs related to Eclipse Che Kubernetes Operator severity/P2 Has a minor but important impact to the usage or development of the system. labels Oct 21, 2020
@tolusha
Copy link
Contributor

tolusha commented Oct 21, 2020

I assume we should do it while using chectl.
If installation is done via OperatorHub there is no way to deliver this information to end user,

@sleshchenko
Copy link
Member

For me, it's not clear why we should configure authentication/create users on the OpenShift cluster.
AFAIU it should not prevent che or crw to be installed on the cluster.
I believe that setting up identity provider on the cluster should be admin duties, and we can help them with a separate documentation article on how to enable OpenShift OAuth, where we just reference to OpenShift documentation https://docs.openshift.com/container-platform/4.5/authentication/understanding-identity-provider.html
I think just documentation is better because:

  • I believe in most production cases, admin eventually should remove the generated identity provider and configure their own;
  • not every installation mode supports exposing generated credentials to the user. As Anatoliy already mentioned, if we install with OperatorHub - it's tricky to provide that info to a user. It might be a created secret which user (if they know about it) should decode from base64... But setting up identity provide from the scratch can be even easier.

@l0rd
Copy link
Contributor Author

l0rd commented Oct 21, 2020

@tolusha ideally that should be done by the operator, not chectl.

@sleshchenko this is one of the 2 main problems that users report when deploying Che for the first time (the other one being TLS) and that's the reason I have opened this issue. You are right about the fact that a prod installation of Che would assume a proper configuration of the users/cluster. But we need to provide a good first impression to a developer/admin/architect/pm that knows nothing about Che and just want to try it out.

@l0rd
Copy link
Contributor Author

l0rd commented Oct 21, 2020

The flow is I see again and again is: the user setup an OpenShift cluster (with default values) and deploy Che on it through OLM. Installation works pretty well now but as soon as they start a workspace they get the untrusted TLS error and they figure out that the Che user is not an OpenShift user.

For the letting know the password to the user: how does it work today? I mean when OpenShift OAuth is disabled how do we inform the user about Che username/password?

@sleshchenko
Copy link
Member

For the letting know the password to the user: how does it work today? I mean when OpenShift OAuth is disabled how do we inform the user about Che username/password?

I think self-registration is allowed by default and users just register a new user with keycloak. @tolusha Could you confirm or provide the right flow here?

@l0rd l0rd added severity/P1 Has a major impact to usage or development of the system. and removed severity/P2 Has a minor but important impact to the usage or development of the system. labels Dec 2, 2020
@l0rd
Copy link
Contributor Author

l0rd commented Dec 2, 2020

Raising this issue priority as I keep hearing about users confused by this.

@tolusha tolusha added this to the 7.24 milestone Dec 3, 2020
@tolusha tolusha mentioned this issue Dec 7, 2020
56 tasks
@tolusha
Copy link
Contributor

tolusha commented Dec 14, 2020

depends on eclipse-che/che-operator#551

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/che-operator Issues and PRs related to Eclipse Che Kubernetes Operator kind/enhancement A feature request - must adhere to the feature request template. severity/P1 Has a major impact to usage or development of the system.
Projects
None yet
Development

No branches or pull requests

5 participants