支持的客户端¶
有两个支持的客户端,python-keystoneclient 项目提供 Python 绑定,而 python-openstackclient 提供命令行界面。
通过 CLI 使用密码进行身份验证¶
要使用密码和 python-openstackclient 对 keystone 进行身份验证,请设置以下标志,请注意,下面引用的用户应被授予 admin 角色。
--os-username OS_USERNAME:您的用户名--os-user-domain-name OS_USER_DOMAIN_NAME:用户的域名称--os-password OS_PASSWORD:您的用户密码--os-project-name OS_PROJECT_NAME:您的项目名称--os-project-domain-name OS_PROJECT_DOMAIN_NAME:项目的域名称--os-auth-url OS_AUTH_URL:keystone 身份验证服务器的 URL--os-identity-api-version OS_IDENTITY_API_VERSION:这应始终设置为 3
您也可以在您的环境中设置这些变量,这样就不需要在每次调用时作为参数传递它们了
$ export OS_USERNAME=my_username
$ export OS_USER_DOMAIN_NAME=my_user_domain
$ export OS_PASSWORD=my_password
$ export OS_PROJECT_NAME=my_project
$ export OS_PROJECT_DOMAIN_NAME=my_project_domain
$ export OS_AUTH_URL=https://:5000/v3
$ export OS_IDENTITY_API_VERSION=3
例如,以下命令 user list、token issue 和 project create 可以如下调用
# Using password authentication, with environment variables
$ export OS_USERNAME=admin
$ export OS_USER_DOMAIN_NAME=Default
$ export OS_PASSWORD=secret
$ export OS_PROJECT_NAME=admin
$ export OS_PROJECT_DOMAIN_NAME=Default
$ export OS_AUTH_URL=https://:5000/v3
$ export OS_IDENTITY_API_VERSION=3
$ openstack user list
$ openstack project create demo
$ openstack token issue
# Using password authentication, with flags
$ openstack --os-username=admin --os-user-domain-name=Default \
--os-password=secret \
--os-project-name=admin --os-project-domain-name=Default \
--os-auth-url=https://:5000/v3 --os-identity-api-version=3 \
user list
$ openstack --os-username=admin --os-user-domain-name=Default \
--os-password=secret \
--os-project-name=admin --os-project-domain-name=Default \
--os-auth-url=https://:5000/v3 --os-identity-api-version=3 \
project create demo