-
Notifications
You must be signed in to change notification settings - Fork 455
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
Operator Console OpenID configuration #1949
Operator Console OpenID configuration #1949
Conversation
examples/kustomization/operator-external-idp-oid/console-tls-secret.yaml
Outdated
Show resolved
Hide resolved
I was unable to make a PR from Pedro's branch. I did a quick edit of the readme to better match the style of the main web docs. This makes it possible to include it into the docs if we decide to do that. Changes attached as a md file, let me know if it is accurate and how I can best apply this to the PR. (There's a lot of small changes throughout the file.) |
@pjuarezd I see that the env variables start with |
suggestions applied, thank you @feorlen |
That is an excellent point @cesnietor, and I agree. We talked about normalize our env variabe names in Operator in the past, you can see how there is more non-matching env names in the env-variables md doc, that is a pending task to do, probably in another PR? I don't think it will be approved on this one. |
Oops some typos in the new readme text 🙃, added suggestions to fix |
@pjuarezd , question - what permission are we expecting here? Or can any user on the OIDC server gain full access via this method? |
This question unfolds in some others: Who can login with IDP?I would not say that "any user on the OIDC", but instead any user exisitng in the OIDC What can a user do once loged in?Full access, the way it is implemented right now does not have granular access control like minio does with the "policies" attached to an OIDC user. How can be even further limited which users in the OIDP realm can log-in?Well, there are a few more settings available in the Operator Console to set using environment variables, but is not that clear to me how those work right now, the scope of this task was to enlight the minimal requred to configure OIDP so maybe a deeper look on those settings could answer that?, Maybe @bexsoft is familiar with the IDP settings and can explain a bit more CONSOLE_IDP_HMAC_PASSPHRASE ( passphrase to decrypt "access_token") |
OK - I think this is a minimum requirement for us to migrate this to our webdocs. Otherwise it feels to me a security risk. I suppose the other route is to direct users to create a standalone realm just for Operator, not sure how much or little of a lift that is. |
I do see as a viable solution the ask to create a dedicated realm to authenticate in Operator Console in the short term, but yeah I see as a potential security risk: "allow anybody in the realm with valid credentials to login full access" if that is not possible. A fine grain authorization could be implemented in Minio Console like this: Adding "claims" evaluation, by adding a specific attribute to the user on the OIDP service, then we specify (to Operator Console) which claim evaluate the user must have on login, just like the MINIO_IDENTITY_OPENID_CLAIM_NAME env variable does in MinIO. This is my 2 cents on how further authorization could be implemented, but rather I would ask to those who implemented this feature (OIDP) in Operator Console, maybe there is already a solution for this. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
couple of tiny ones
examples/kustomization/operator-external-idp-oid/console-deployment.yaml
Outdated
Show resolved
Hide resolved
7656315
to
1a644f1
Compare
Add example configuration by environment variables to enable OpenID in Operator Console. Added also a README.md document explaining the different options. Signed-off-by: pjuarezd <pjuarezd@users.noreply.github.com>
Signed-off-by: pjuarezd <pjuarezd@users.noreply.github.com>
Signed-off-by: pjuarezd <pjuarezd@users.noreply.github.com>
Co-authored-by: Andrea Longo <feorlen@users.noreply.github.com>
Co-authored-by: Andrea Longo <feorlen@users.noreply.github.com>
Co-authored-by: Andrea Longo <feorlen@users.noreply.github.com>
Co-authored-by: Ravind Kumar <ravindk89@gmail.com>
Signed-off-by: pjuarezd <pjuarezd@users.noreply.github.com>
1a644f1
to
608541a
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Add example configuration by environment variables to enable OpenID in Operator Console.
Added also a README.md document explaining the different options.