-
Notifications
You must be signed in to change notification settings - Fork 12
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
[Epic] Self-serve Minio object storage #9
Comments
So good news is that we got this roughly solved in a pretty awesome manner. https://github.com/statcan/minio Basically using Kustomize we can easily via P.R. add a new tenant or type of workload against the minio operator which will ensure that each instance defined (which can comprise for 4 servers for quorum and erasure code support) gets created. Then using OPA integrated with Azure AD / OpenID Connect we can then restrict who / where can create buckets using OPA against JWT tokens. This works really well so in practice on each deployed instance: a) You can create your own bucket as long as matches your user.name (only you can see this) The currently policy can be found here: https://github.com/StatCan/minio/blob/master/opa/minio.rego Every deployed instance will get this bare minimum and for different tiers we can add in group organization and different levels of minio instances: a) Those backed via managed premium disks for higher IOPS Referenceshttps://www.openpolicyagent.org/docs/latest/ |
@sylus Any issues with name conflicts across email domains (e.g. |
@brendangadd according to current logic that would indeed break :P So will have to be looked at. If we had org or an other field to also check would fix. |
could use email address (or derivative of email if @ is a problem) for the name, but then making a shared space publishes your email address. |
This sounds really useful btw. facilitates better collaboration and personalization at the same time |
Now that the tenants are integrated via PR and infra is up. @zachomedia is going to use vault injector so whenever a kubeflow pipeline or jupyter notebook is brought up that they recieve the correct credentials based on user AD. Bit of work here to do but we have a plan :D |
For Vault integration, we're going to look at: https://github.com/kula/vault-plugin-secrets-minio |
We can build some access policies with identity templates. |
This is long-since done, right? |
I'd say yes! |
Yeah i think can close this even though still needs improvement. ^_^ |
This issue is kept open because the current implementation allows for naming collisions which could be abused to gain access to other people's storage.
|
Making this an Epic. Will make associated smaller issues. |
@brendangadd Do we still need this epic? |
Get every kubeflow namespace a small self-serve bucket.
The text was updated successfully, but these errors were encountered: