本文档介绍icehouse发行版keystone命令
keystone Command-Line Interface (CLI)提供用于和keystone服务器交互的方便工具,但是该命令行工具逐渐受到社区的抛弃:
“Pending deprecation: Command-line interface to the OpenStack Identity API. This CLI is pending deprecation in favor of python-openstackclient. For a Python library, continue using python-keystoneclient.”
用法
$ keystone [--version] [--timeout <seconds>] [--os-username <auth-user-name>] [--os-password <auth-password>] [--os-tenant-name <auth-tenant-name>] [--os-tenant-id <tenant-id>] [--os-auth-url <auth-url>] [--os-region-name <region-name>] [--os-identity-api-version <identity-api-version>] [--os-token <service-token>] [--os-endpoint <service-endpoint>] [--os-cacert <ca-certificate>] [--insecure] [--os-cert <certificate>] [--os-key <key>] [--os-cache] [--force-new-token] [--stale-duration <seconds>]
<subcommand> ...
可用子命令
subcommands
bash-completion //输出所有可选的命令及选项
help [subcommand] //显示本程序或子命令的使用帮助
discover //发现keystone服务器的地址,支持的API和扩展
bootstrap //简单初始化,在创建用户、角色和租户后,将用户赋予租户的该角色
catalog //显示可用的openstack服务目录, possibly filtered by service.
ec2-credentials-create //Create EC2-compatible credentials for user per tenant.
ec2-credentials-delete //Delete EC2-compatible credentials.
ec2-credentials-get //Display EC2-compatible credentials.
ec2-credentials-list //List EC2-compatible credentials for a user.
endpoint-create //创建新endpoint
endpoint-delete //删除一个service endpoint.
endpoint-get //通过制定条件查看一个endpoint
endpoint-list //查看所有已配置的endpoints
role-create //创建角色
role-delete //删除角色
role-get //显示角色详情
role-list //显示所有角色
service-create //添加服务
service-delete //删除服务
service-get //查看某一服务细节
service-list //显示所有服务
tenant-create //创建项目
tenant-delete //删除项目
tenant-get //显示某一项目细节
tenant-list //列出所有项目
tenant-update //更新项目的名称,描述和启用状态
user-create //创建用户
user-delete //删除用户
user-get //显示用户细节
user-list //显示所有用户
user-role-add //为用户添加角色
user-role-list //显示用户拥有的所有角色
user-role-remove //删除用户角色
user-update //更新用户姓名,邮箱,和启用状态
user-password-update //更新任一指定用户的密码
password-update //更新当前用户的密码
token-get //显示当前用户token
环境变量可以使用export设置到每一次会话中,也可以写脚本这样每一次运行时不用重复输入大量重复的内容
如:
export OS_SERVICE_TOKEN=ADMIN
可用选项
--version
显示当前client的版本,退出
--timeout <seconds>
设置请求超时(秒)
--os-identity-api-version <identity-api-version>
指明要用的Identity API版本默认为环境变量 OS_IDENTITY_API_VERSION 或2.0版
--os-region-name <region-name>
指明使用的region,默认为环境变量 OS_REGION_NAME
使用用户名+密码登录时使用的选项
--os-username <auth-user-name>
用于登录OpenStack Identity服务的用户名,默认为环境变量 OS_USERNAME
--os-password <auth-password>
登录用户密码,默认为环境变量 OS_PASSWORD
--os-tenant-name <auth-tenant-name>
登录用户所属的项目名称,默认为环境变量 OS_TENANT_NAME
--os-tenant-id <tenant-id>
登录用户所属的项目ID,默认为环境变量 OS_TENANT_ID
--os-auth-url <auth-url>
身份认证的目标keystone节点,默认为环境变量 OS_AUTH_URL
使用token登录的选项
--os-token <service-token>
已有token,并选择使用该token进行身份认证,不需要再次获取token.默认为环境变量 OS_SERVICE_TOKEN
--os-endpoint <service-endpoint>
指定认证的对象节点. 默认为环境变量 OS_SERVICE_ENDPOINT
CA自己的数字证书+CA颁发的数字证书+自己的私钥
--os-cacert <ca-certificate>
指定一个CA文件用来验证 TLS (https) 服务器证书. 默认为环境变量 OS_CACERT
--os-cert <certificate>
默认为环境变量 OS_CERT
--os-key <key>
默认为环境变量 OS_KEY
--insecure
明确允许keystoneclient进行"不安全的" TLS (https)请求. 该选项下,keystoneclient不会验证服务器的证书,应谨慎使用。
--os-cache
使用 auth token cache. 默认为环境变量OS_CACHE.
--force-new-token
如果keyring可用且当前正在使用,到token失效前每一次都会在keyring中存取token。该命令可以可以请求一个新的token并替代当前keyring中现存的。
--stale-duration <seconds>
从keyring中获取token时用来判断token是否失效的失效间隔(Stale duration) (单位:秒), 该命令有助于缓解网络延迟,默认为30秒。