我在使用 python-openstackclient 库时遇到问题。当我运行此代码以使用 keystone 进行授权时:
from keystoneclient import session
from keystoneclient.v3 import client
from keystoneclient.auth.identity import v3
password = v3.PasswordMethod(username='idm',password='idm',user_domain_name='idm')
auth = v3.Auth(auth_url='http://127.0.0.1:5000/v3',auth_methods=[password],project_id='idm')
sess = session.Session(auth=auth)
keystone = client.Client(session=sess)
keystone.users.list()
我收到此错误:keystoneclient.openstack.common.apiclient.exceptions.Unauthorized:您发出的请求需要身份验证。(HTTP 401)
但是当我尝试openstack客户端程序时:
openstack user list
它给了我很好的输出。我的 .bashrc 中有下一个全局变量:
export OS_SERVICE_ENDPOINT=http://127.0.0.1:35357/v3
export OS_AUTH_URL=http://127.0.0.1:5000/v3
export OS_TENANT_NAME=idm
export OS_USERNAME=idm
export OS_PASSWORD=idm
export OS_IDENTITY_API_VERSION=3
export OS_URL=http://127.0.0.1:35357/v3
该python代码可能有什么问题?谢谢!