-
Notifications
You must be signed in to change notification settings - Fork 81
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
Keystone authenticator? #183
Comments
We could. There is an unmaintained one https://github.com/dims/k8s-keystone-auth . If you are interested in contributing, you are most welcome. |
@attardi , check out https://github.com/kubernetes/cloud-provider-openstack/blob/master/docs/using-client-keystone-auth.md . This seems to be the official answer. Let me know if this works or not. |
@tamalsaha that code is not unmaintained, it was migrated in the cloud-provider-openstack https://github.com/kubernetes/cloud-provider-openstack/tree/master/pkg/identity/keystone I guess you can easily include that code to Guard. At the moment I know for sure that k8s-keystone-auth works using keystone username and password but the support for keystone Application Credentials is untested. |
I tested it, but unfortunately it only works with password/domain authentication, which is not what we need, since we don't use password authentication on our deployment of OpenStack. |
Thanks. We can add support for this. The main issue is how do I get a openstack setup to test this during development? We usually test against OVH for openstack api. But it is not clear to me if they support application credential. https://docs.ovh.com/gb/en/storage/pca/dev/#authentication To support this, we need to implement one method https://github.com/appscode/guard/blob/master/auth/types.go#L47 . We also add e2e tests to test the implementation. |
Take a look at the setion on Authentication in our architecture document. Application Credentials should be easy to obtain. We can give you access to our OpenStack deployment |
Thanks @attardi . I have submitted a request for account using my gmail account tamal AT appscode.com . |
Hi @tamalsaha, i've just accepted your request. If you need to use the OpenStack CLI just send an email to cloud-support AT garr.it |
Thank @RdL87 . I can access now :). Next question is how do I create a application_credential from the UI? |
You're welcome @tamalsaha . You can't from the UI (https://docs.openstack.org/keystone/queens/user/application_credentials.html). |
@RdL87 , I am getting 404 from |
Application credentials can be obtained using python-keystoneclient (version > 3.15, from https://github.com/openstack/python-keystoneclient.git):
|
@attardi , I tried with the account I have got from garr.it . You can see the code here: https://github.com/tamalsaha/keystone-demo/blob/master/appcred.py But it stays stuck. So, not sure what's wrong. Does this script work for you? |
Application Credentials can be obtained from the dashboard through this completed Blueprint, upcoming in Rocky, https://blueprints.launchpad.net/horizon/+spec/application-credentials |
@RdL87, did you find anything? |
Hi @tamalsaha , sorry i was sure you was included in a thread on our ticketing system. I will report here some msg sent from @attardi related to this topic. I omitted some id replacing those with ****************************** I figured out how to create applicatins credentials. ** You nede to use python-keystoneclient(version > 3.15, from
name='kubernetes').to_dict()
{u'description': None, u'expires_at': None, u'id': u'******************************', u'links': {u'self': u'name': u'k8s', u'project_id': u'******************************', u'roles': [{u'domain_id': None,
u'secret': u'unrestricted': False}
Also I'm going to forward to you a msg containing details for your account on our staging clutser that you can use for testing purpose. I will send it by email since it contains credentials. |
Thanks. I tried using this sample python code. I was still getting 404 . https://github.com/tamalsaha/keystone-demo/blob/master/appcred.py |
Did you use the account on our staging cluster? (the one i sent to you by email) |
@RdL87 , I was able to get it to work using the test credential you emailed. |
The openstack command:
also works, as long as your openstack client version is > 3.15 and OpenStack Keystone is at version Queens. |
Application credentials can be used by selecting the v3applicationcredential auth_type and providing the following parameters:
|
Any progress on this? |
@tamalsaha I am looking into this. At the moment kubernetes users are not able to use application credentials to authenticate because the client misses the functionality, and also the go library the client is based on misses this functionality. However you can implement the backend part if it is python only. I will keep this issue updated with my latest findings. Thank you |
Would I be possible to add OpenStack Keystone as authenticator, using Application Credentials (https://docs.openstack.org/keystone/queens/user/application_credentials.html) as tokens?
The text was updated successfully, but these errors were encountered: