keystoneclient.v3 包¶
子包¶
- keystoneclient.v3.contrib 包
- 子包
- keystoneclient.v3.contrib.federation 包
- 子模块
- keystoneclient.v3.contrib.federation.base 模块
- keystoneclient.v3.contrib.federation.core 模块
- keystoneclient.v3.contrib.federation.domains 模块
- keystoneclient.v3.contrib.federation.identity_providers 模块
- keystoneclient.v3.contrib.federation.mappings 模块
- keystoneclient.v3.contrib.federation.projects 模块
- keystoneclient.v3.contrib.federation.protocols 模块
- keystoneclient.v3.contrib.federation.saml 模块
- keystoneclient.v3.contrib.federation.service_providers 模块
- 模块内容
- keystoneclient.v3.contrib.oauth1 包
- keystoneclient.v3.contrib.federation 包
- 子模块
- keystoneclient.v3.contrib.endpoint_filter 模块
EndpointFilterManagerEndpointFilterManager.OS_EP_FILTER_EXTEndpointFilterManager.add_endpoint_group_to_project()EndpointFilterManager.add_endpoint_to_project()EndpointFilterManager.check_endpoint_group_in_project()EndpointFilterManager.check_endpoint_in_project()EndpointFilterManager.delete_endpoint_from_project()EndpointFilterManager.delete_endpoint_group_from_project()EndpointFilterManager.list_endpoint_groups_for_project()EndpointFilterManager.list_endpoints_for_project()EndpointFilterManager.list_projects_for_endpoint()EndpointFilterManager.list_projects_for_endpoint_group()
- keystoneclient.v3.contrib.endpoint_policy 模块
EndpointPolicyManagerEndpointPolicyManager.OS_EP_POLICY_EXTEndpointPolicyManager.check_policy_association_for_endpoint()EndpointPolicyManager.check_policy_association_for_region_and_service()EndpointPolicyManager.check_policy_association_for_service()EndpointPolicyManager.create_policy_association_for_endpoint()EndpointPolicyManager.create_policy_association_for_region_and_service()EndpointPolicyManager.create_policy_association_for_service()EndpointPolicyManager.delete_policy_association_for_endpoint()EndpointPolicyManager.delete_policy_association_for_region_and_service()EndpointPolicyManager.delete_policy_association_for_service()EndpointPolicyManager.get_policy_for_endpoint()EndpointPolicyManager.list_endpoints_for_policy()
- keystoneclient.v3.contrib.simple_cert 模块
- keystoneclient.v3.contrib.trusts 模块
- 模块内容
- 子包
子模块¶
keystoneclient.v3.access_rules 模块¶
- class keystoneclient.v3.access_rules.AccessRule(manager, info, loaded=False)¶
基类:
Resource表示应用程序凭证的身份访问规则。
- 属性
id: 用于标识访问规则的 uuid
- method: 应用程序凭证允许使用的请求方法
对于给定的 API 端点
- path: 应用程序凭证允许访问的 API 路径
access
- service: 应用程序凭证允许访问的服务的服务类型标识符
application credential is permitted to access
- class keystoneclient.v3.access_rules.AccessRuleManager(client)¶
基类:
CrudManager用于操作身份访问规则的管理类。
- collection_key = 'access_rules'¶
- create()¶
- delete(access_rule, user=None)¶
删除访问规则。
- 参数:
access_rule (str or
keystoneclient.v3.access_rules.AccessRule) – 要删除的访问规则user (string) – 用户 ID
- 返回值:
带有 204 状态码的响应对象
- 返回类型:
requests.models.Response
- find(user=None, **kwargs)¶
查找具有匹配
**kwargs属性的访问规则。- 参数:
user (string) – 用户 ID
- 返回值:
匹配的访问规则列表
- 返回类型:
- get(access_rule, user=None)¶
检索访问规则。
- 参数:
access_rule (str or
keystoneclient.v3.access_rules.AccessRule) – 要从服务器检索的访问规则user (string) – 用户 ID
- 返回值:
指定的访问规则
- 返回类型:
- key = 'access_rule'¶
- list(user=None, **kwargs)¶
列出访问规则。
- 参数:
user (string) – 用户 ID
- 返回值:
访问规则列表
- 返回类型:
- resource_class¶
别名
AccessRule
- update()¶
keystoneclient.v3.application_credentials 模块¶
- class keystoneclient.v3.application_credentials.ApplicationCredential(manager, info, loaded=False)¶
基类:
Resource表示身份应用程序凭证。
- 属性
id: 用于标识应用程序凭证的 uuid
user: 应用程序凭证的所有者
name: 应用程序凭证名称
secret: 应用程序凭证密钥
description: 应用程序凭证描述
expires_at: 到期时间
roles: 在项目上的角色分配
- unrestricted: 应用程序凭证是否有限制
applied
- access_rules: 一组访问规则,定义了应用程序凭证可用于哪些 API 请求
the application credential may be used for
- class keystoneclient.v3.application_credentials.ApplicationCredentialManager(client)¶
基类:
CrudManager用于操作身份应用程序凭证的管理类。
- collection_key = 'application_credentials'¶
- create(name, user=None, secret=None, description=None, expires_at=None, roles=None, unrestricted=False, access_rules=None, **kwargs)¶
创建凭证。
- 参数:
name (string) – 应用程序凭证名称
user (string) – 用户 ID
secret – 应用程序凭证密钥
description – 应用程序凭证描述
expires_at (datetime.datetime) – 到期时间
roles (List) – 项目上的角色列表。可以是 ID 列表或指定角色名称和域的字典列表
unrestricted (bool) – 应用程序凭证是否已应用限制
access_rules (List) – 一组字典,表示访问规则
- 返回值:
创建的应用程序凭证
- 返回类型:
keystoneclient.v3.application_credentials.ApplicationCredential
- delete(application_credential, user=None)¶
删除应用程序凭据。
- 参数:
application_credential – 要删除的应用程序凭证
- 返回值:
带有 204 状态码的响应对象
- 返回类型:
requests.models.Response
- find(user=None, **kwargs)¶
查找具有匹配
**kwargs属性的应用程序凭证。 # noqa- 参数:
user (string) – 用户 ID
- 返回值:
匹配的应用程序凭证列表
- 返回类型:
list of
keystoneclient.v3.application_credentials.ApplicationCredential
- get(application_credential, user=None)¶
检索应用程序凭证。
- 参数:
application_credential – 要从服务器检索的凭证
- 返回值:
指定的应用程序凭证
- 返回类型:
keystoneclient.v3.application_credentials.ApplicationCredential
- key = 'application_credential'¶
- list(user=None, **kwargs)¶
列出应用程序凭证。
- 参数:
user (string) – 用户 ID
- 返回值:
应用程序凭证列表
- 返回类型:
list of
keystoneclient.v3.application_credentials.ApplicationCredential
- resource_class¶
- update()¶
keystoneclient.v3.auth 模块¶
- class keystoneclient.v3.auth.AuthManager(client)¶
基类:
Manager检索与身份验证上下文相关的信息。
身份验证路由返回的信息完全取决于用户提供的身份验证信息。
- domains()¶
列出指定令牌可以重新作用域的域。
- 返回值:
域列表。
- 返回类型:
list of
keystoneclient.v3.domains.Domain.
- projects()¶
列出指定令牌可以重新作用域的项目。
- 返回值:
项目列表。
- 返回类型:
- systems()¶
列出指定令牌可以重新作用域的系统。
目前,此列表要么为空,要么为“all”。
- 返回值:
系统列表。
- 返回类型:
list of
keystoneclient.v3.systems.System.
keystoneclient.v3.client 模块¶
- class keystoneclient.v3.client.Client(**kwargs)¶
继承自:
HTTPClientOpenStack Identity API v3 的客户端。
- 参数:
session (keystoneauth1.session.Session) – 请求的会话。 (可选)
user_id (string) – 身份验证的用户 ID。 (可选)
username (字符串) – 用于身份验证的用户名。(可选)
user_domain_id (string) – 身份验证的用户域 ID。 (可选)
user_domain_name (string) – 身份验证的用户域名称。 (可选)
password (字符串) – 用于身份验证的密码。(可选)
token (字符串) – 用于身份验证的令牌。(可选)
domain_id (string) – 域作用域的域 ID。 (可选)
domain_name (string) – 域作用域的域名称。 (可选)
project_id (string) – 项目作用域的项目 ID。 (可选)
project_name (string) – 项目作用域的项目名称。 (可选)
project_domain_id (string) – 项目作用域的项目域 ID。 (可选)
project_domain_name (string) – 项目作用域的项目域名称。 (可选)
tenant_name (string) – 租户名称。 (可选) tenant_name 关键字参数自 1.7.0 版本起已弃用,建议使用 project_name,并可能在 2.0.0 版本中移除。
tenant_id (string) – 租户 ID。 (可选) tenant_id 关键字参数自 1.7.0 版本起已弃用,建议使用 project_id,并可能在 2.0.0 版本中移除。
auth_url (string) – 授权的身份服务端点。
region_name (字符串) – 从服务目录中选择端点时要选择的区域名称。
endpoint (string) – 用户提供的身份服务终端 URL。如果实例化时设置了 endpoint,则 API 服务调用可能支持延迟身份验证。 (可选)
timeout (整数) – 允许自定义客户端 http 请求的超时时间。(可选)
警告
不带会话构建此类实例自 1.7.0 版本起已弃用,并将在 2.0.0 版本中移除。
示例
>>> from keystoneauth1.identity import v3 >>> from keystoneauth1 import session >>> from keystoneclient.v3 import client >>> auth = v3.Password(user_domain_name=DOMAIN_NAME, ... username=USER, ... password=PASS, ... project_domain_name=PROJECT_DOMAIN_NAME, ... project_name=PROJECT_NAME, ... auth_url=KEYSTONE_URL) >>> sess = session.Session(auth=auth) >>> keystone = client.Client(session=sess) >>> keystone.projects.list() ... >>> user = keystone.users.get(USER_ID) >>> user.delete()
此类实例具有以下管理器
- credentials¶
- domain_configs¶
- endpoint_filter¶
keystoneclient.v3.contrib.endpoint_filter.EndpointFilterManager
- endpoint_groups¶
- endpoint_policy¶
keystoneclient.v3.contrib.endpoint_policy.EndpointPolicyManager
- registered_limits¶
- role_assignments¶
- get_raw_token_from_identity_service(auth_url, user_id=None, username=None, user_domain_id=None, user_domain_name=None, password=None, domain_id=None, domain_name=None, project_id=None, project_name=None, project_domain_id=None, project_domain_name=None, token=None, trust_id=None, **kwargs)¶
向 v3 Identity API 进行身份验证。
如果同时提供了密码和令牌方法,则请求中将同时使用这两种方法。
- 返回值:
access.AccessInfo 如果身份验证成功。
- 返回类型:
- 引发:
keystoneclient.exceptions.AuthorizationFailure – 如果无法验证现有授权令牌。
keystoneclient.exceptions.Unauthorized – 如果由于令牌无效而导致身份验证失败。
- process_token(**kwargs)¶
从新的 auth_ref 中提取并处理信息。
并设置相关的身份验证信息。
- serialize(entity)¶
- version = 'v3'¶
keystoneclient.v3.credentials 模块¶
- class keystoneclient.v3.credentials.Credential(manager, info, loaded=False)¶
基类:
Resource表示身份凭证。
- 属性
id: 用于标识凭证的 uuid
user_id: 凭证所属的用户 ID
type: 凭证的类型
blob: 表示凭证的文本
project_id: 限制凭证范围的项目 ID
- class keystoneclient.v3.credentials.CredentialManager(client)¶
基类:
CrudManager用于操作身份凭证的管理类。
- collection_key = 'credentials'¶
- create(user, type, blob, project=None, **kwargs)¶
创建凭证。
- 参数:
user (str or
keystoneclient.v3.users.User) – 凭证所属的用户type (str) – 凭证类型,有效值为:
ec2、cert或totpblob (str) – 凭证数据的任意 blob,根据类型解析
project (str or
keystoneclient.v3.projects.Project) – 限制凭证范围的项目,如果凭证类型为 ec2,则此属性为必需。kwargs – 提供的任何其他属性都将传递给服务器
- 返回值:
创建的凭证
- 返回类型:
- delete(credential)¶
删除凭证。
- 参数:
credential (str or
keystoneclient.v3.credentials.Credential) – 要删除的凭证- 返回值:
带有 204 状态码的响应对象
- 返回类型:
requests.models.Response
- get(credential)¶
检索凭证。
- 参数:
credential (str or
keystoneclient.v3.credentials.Credential) – 要从服务器检索的凭证- 返回值:
指定的凭证
- 返回类型:
- key = 'credential'¶
- list(**kwargs)¶
列出凭据。
- 参数:
kwargs – 如果指定了 user_id 或 type,则凭证将相应地进行过滤。
- 返回值:
凭证列表
- 返回类型:
- resource_class¶
别名
Credential
- update(credential, user, type=None, blob=None, project=None, **kwargs)¶
更新凭证。
- 参数:
credential (str or
keystoneclient.v3.credentials.Credential) – 要在服务器上更新的凭证user (str or
keystoneclient.v3.users.User) – 新的凭证所属用户type (str) – 新的凭证类型,有效值为:
ec2、cert或totpblob (str) – 新的凭证数据 blob,未来版本可能会移除。
project (str or
keystoneclient.v3.projects.Project) – 限制凭证范围的新项目,如果凭证类型为 ec2,则此属性为必需。kwargs – 提供的任何其他属性都将传递给服务器
- 返回值:
更新后的凭证
- 返回类型:
keystoneclient.v3.domain_configs 模块¶
- class keystoneclient.v3.domain_configs.DomainConfig(manager, info, loaded=False)¶
基类:
Resource表示域配置关联的对象。
此资源对象不一定包含固定属性,因为服务器中添加的新属性在此直接支持。当前支持的配置为 identity 和 ldap。
- class keystoneclient.v3.domain_configs.DomainConfigManager(client)¶
基类:
Manager用于操作域配置关联的管理类。
- build_url(domain)¶
- create(domain, config)¶
为域创建配置。
- 参数:
domain (str or
keystoneclient.v3.domains.Domain) – 将应用配置的域。config (dict) – 域配置的字典。
关于
config参数的示例{ "identity": { "driver": "ldap" }, "ldap": { "url": "ldap://myldap.com:389/", "user_tree_dn": "ou=Users,dc=my_new_root,dc=org" } }
- 返回值:
从服务器返回的已创建域配置。
- 返回类型:
- delete(domain)¶
删除域的配置。
- 参数:
domain (str or
keystoneclient.v3.domains.Domain) – 将在服务器上删除配置的域。- 返回值:
带有 204 状态码的响应对象。
- 返回类型:
requests.models.Response
- find(**kwargs)¶
- get(domain)¶
获取域的配置。
- 参数:
domain (str or
keystoneclient.v3.domains.Domain) – 定义了配置的域。- 返回值:
从服务器返回的域配置。
- 返回类型:
- key = 'config'¶
- list(**kwargs)¶
- resource_class¶
别名
DomainConfig
- update(domain, config)¶
更新域的配置。
- 参数:
domain (str or
keystoneclient.v3.domains.Domain) – 将更新配置的域。config (dict) – 域配置的字典。
关于
config参数的示例{ "identity": { "driver": "ldap" }, "ldap": { "url": "ldap://myldap.com:389/", "user_tree_dn": "ou=Users,dc=my_new_root,dc=org" } }
- 返回值:
从服务器返回的已更新域配置。
- 返回类型:
keystoneclient.v3.domains 模块¶
- class keystoneclient.v3.domains.Domain(manager, info, loaded=False)¶
基类:
Resource表示身份域。
- 属性
id: 用于标识域的 uuid
name: 域的名称
description: 域的描述
enabled: 确定域是否已启用
- class keystoneclient.v3.domains.DomainManager(client)¶
基类:
CrudManager用于操作身份域的管理类。
- collection_key = 'domains'¶
- create(name, description=None, enabled=True, **kwargs)¶
创建域。
- 参数:
- 返回值:
从服务器返回的已创建域。
- 返回类型:
- delete(domain)¶
删除域。
- 参数:
domain (str or
keystoneclient.v3.domains.Domain) – 要在服务器上删除的域。- 返回值:
带有 204 状态码的响应对象。
- 返回类型:
requests.models.Response
- get(domain)¶
检索域。
- 参数:
domain (str or
keystoneclient.v3.domains.Domain) – 要从服务器检索的域。- 返回值:
从服务器返回的指定域。
- 返回类型:
- key = 'domain'¶
- list(**kwargs)¶
列出域。
- 参数:
kwargs – 允许传递服务器支持的过滤条件。
- 返回值:
域列表。
- 返回类型:
list of
keystoneclient.v3.domains.Domain.
- update(domain, name=None, description=None, enabled=None, **kwargs)¶
更新域。
- 参数:
domain (str or
keystoneclient.v3.domains.Domain) – 要在服务器上更新的域。name (str) – 域的新名称。
description (str) – 域的新描述。
enabled (bool) – 域是否已启用。
kwargs – 提供的任何其他属性都将传递给服务器。
- 返回值:
从服务器返回的已更新域。
- 返回类型:
keystoneclient.v3.ec2 模块¶
- class keystoneclient.v3.ec2.EC2(manager, info, loaded=False)¶
基类:
Resource表示 EC2 资源。
- 属性
id: 标识 EC2 资源的字符串。
user_id: 后端预先存在的用户的 ID 字段。
project_id: 后端预先存在的项目的 ID 字段。
access: 表示访问/密钥对的访问密钥的字符串。
secret: 表示访问/密钥对的密钥的字符串。
- class keystoneclient.v3.ec2.EC2Manager(client)¶
Bases:
ManagerWithFind- create(user_id, project_id)¶
创建新的访问/密钥对。
- 参数:
user_id (str or
keystoneclient.v3.users.User) – 拥有访问/密钥对的用户的 ID。project_id (str or
keystoneclient.v3.projects.Project) – 拥有访问/密钥对的项目 ID。
- 返回值:
从服务器返回的已创建访问/密钥对。
- 返回类型:
- delete(user_id, access)¶
删除访问/密钥对。
- 参数:
user_id (str or
keystoneclient.v3.users.User) – 将在服务器上删除访问/密钥对的用户的 ID。access (str) – 将在服务器上删除访问/密钥对的访问密钥。
- 返回值:
带有 204 状态码的响应对象。
- 返回类型:
requests.models.Response
- get(user_id, access)¶
检索给定访问密钥的访问/密钥对。
- 参数:
user_id (str or
keystoneclient.v3.users.User) – 将从服务器检索访问/密钥对的用户的 ID。access (str) – 将从服务器检索访问/密钥对的访问密钥。
- 返回值:
从服务器返回的指定访问/密钥对。
- 返回类型:
- list(user_id)¶
列出给定用户的访问/密钥对。
- 参数:
user_id (str) – 将列出访问/密钥对的用户的 ID。
- 返回值:
访问/密钥对列表。
- 返回类型:
list of
keystoneclient.v3.ec2.EC2
keystoneclient.v3.endpoint_groups 模块¶
- class keystoneclient.v3.endpoint_groups.EndpointGroup(manager, info, loaded=False)¶
基类:
Resource表示身份端点组。
- 属性
id: 用于标识端点组的 UUID
name: 端点组的名称
description: 端点组的描述
- filters: JSON 格式的过滤器表示,定义了哪些端点实体属于该组
what endpoint entities are part of the group
- class keystoneclient.v3.endpoint_groups.EndpointGroupManager(client)¶
基类:
CrudManager端点组管理类。
- base_url = 'OS-EP-FILTER'¶
- check(endpoint_group)¶
检查端点组是否存在。
- 参数:
endpoint_group (str or
keystoneclient.v3.endpoint_groups.EndpointGroup) – 要在服务器上检查的端点组。- 返回值:
如果指定的端点组存在,则为 None。
- collection_key = 'endpoint_groups'¶
- create(name, filters, description=None, **kwargs)¶
创建一个端点组。
- 参数:
- 返回值:
从服务器返回的已创建端点组。
- 返回类型:
- delete(endpoint_group)¶
删除一个端点组。
- 参数:
endpoint_group (str or
keystoneclient.v3.endpoint_groups.EndpointGroup) – 要在服务器上删除的端点组。- 返回值:
带有 204 状态码的响应对象。
- 返回类型:
requests.models.Response
- get(endpoint_group)¶
检索端点组。
- 参数:
endpoint_group (str or
keystoneclient.v3.endpoint_groups.EndpointGroup) – 要从服务器检索的端点组。- 返回值:
从服务器返回的指定端点组。
- 返回类型:
- key = 'endpoint_group'¶
- list(**kwargs)¶
列出端点组。
提供的任何参数都将传递给服务器。
- 返回值:
端点组列表。
- 返回类型:
- resource_class¶
- update(endpoint_group, name=None, filters=None, description=None, **kwargs)¶
更新一个端点组。
- 参数:
- 返回值:
从服务器返回的已更新端点组。
- 返回类型:
keystoneclient.v3.endpoints 模块¶
- class keystoneclient.v3.endpoints.Endpoint(manager, info, loaded=False)¶
基类:
Resource表示身份端点。
- 属性
id: 用于标识端点的 uuid
interface: 'public'、'admin' 或 'internal' 网络接口
region: 端点的地理位置
service_id: 端点所属的服务
url: 完全限定的服务端点
- enabled: 确定端点是否显示在服务目录中
catalog
- class keystoneclient.v3.endpoints.EndpointManager(client)¶
基类:
CrudManager用于操作身份端点的管理类。
- collection_key = 'endpoints'¶
- create(service, url, interface=None, region=None, enabled=True, **kwargs)¶
创建端点。
- 参数:
service (str or
keystoneclient.v3.services.Service) – 端点所属的服务。url (str) – 完全限定的服务端点的 URL。
interface (str) – 端点的网络接口。有效值为:
public、admin或internal。region (str or
keystoneclient.v3.regions.Region) – 端点所属的区域。enabled (bool) – 端点是否已启用,决定其是否出现在服务目录中。
kwargs – 提供的任何其他属性都将传递给服务器。
- 返回值:
从服务器返回的已创建端点。
- 返回类型:
- delete(endpoint)¶
删除端点。
- 参数:
endpoint (str or
keystoneclient.v3.endpoints.Endpoint) – 要在服务器上删除的端点。- 返回值:
带有 204 状态码的响应对象。
- 返回类型:
requests.models.Response
- get(endpoint)¶
检索端点。
- 参数:
endpoint (str or
keystoneclient.v3.endpoints.Endpoint) – 要从服务器检索的端点。- 返回值:
从服务器返回的指定端点。
- 返回类型:
- key = 'endpoint'¶
- list(service=None, interface=None, region=None, enabled=None, region_id=None, **kwargs)¶
列出端点。
- 参数:
service (str 或
keystoneclient.v3.services.Service) – 用于过滤端点的服务。interface (str) – 用于过滤端点的网络接口。有效值为:
public,admin或internal。enabled (bool) – 返回已启用还是已禁用端点。
region_id (str) – 按 region_id 属性过滤端点。如果同时指定了 region 和 region_id,则 region 具有优先权。
kwargs – 提供的任何其他属性都将用于过滤端点。
- 返回值:
端点列表。
- 返回类型:
- update(endpoint, service=None, url=None, interface=None, region=None, enabled=None, **kwargs)¶
更新端点。
- 参数:
endpoint (str 或
keystoneclient.v3.endpoints.Endpoint) – 要在服务器上更新的端点。service (str 或
keystoneclient.v3.services.Service) – 端点所属的新服务。url (str) – 完全限定的服务端点的新 URL。
interface (str) – 端点的新网络接口。有效值为:
public,admin或internal。region (str 或
keystoneclient.v3.regions.Region) – 端点所属的新区域。enabled (bool) – 通过启用或禁用端点来确定该端点是否出现在服务目录中。
kwargs – 提供的任何其他属性都将传递给服务器。
- 返回值:
从服务器返回的已更新端点。
- 返回类型:
keystoneclient.v3.groups 模块¶
- class keystoneclient.v3.groups.Group(manager, info, loaded=False)¶
基类:
Resource表示一个身份用户组。
- 属性
id: 标识组的 uuid
name: 组名
description: 组描述
- update(name=None, description=None)¶
- class keystoneclient.v3.groups.GroupManager(client)¶
基类:
CrudManager用于操作身份组的管理类。
- collection_key = 'groups'¶
- create(name, domain=None, description=None, **kwargs)¶
创建一个组。
- 参数:
name (str) – 组的名称。
domain (str 或
keystoneclient.v3.domains.Domain) – 组的域。description (str) – 组的描述。
kwargs – 提供的任何其他属性都将传递给服务器。
- 返回值:
从服务器返回的已创建组。
- 返回类型:
- delete(group)¶
删除一个组。
- 参数:
group (str 或
keystoneclient.v3.groups.Group) – 要在服务器上删除的组。- 返回值:
带有 204 状态码的响应对象。
- 返回类型:
requests.models.Response
- get(group)¶
检索组。
- 参数:
group (str 或
keystoneclient.v3.groups.Group) – 要从服务器检索的组。- 返回值:
从服务器返回的指定组。
- 返回类型:
- key = 'group'¶
- list(user=None, domain=None, **kwargs)¶
列出组。
- 参数:
user (str 或
keystoneclient.v3.users.User) – 用于过滤组的用户。domain (str 或
keystoneclient.v3.domains.Domain) – 用于过滤组的域。kwargs – 提供的任何其他属性都将用于过滤组。
- 返回值:
组列表。
- 返回类型:
- update(group, name=None, description=None, **kwargs)¶
更新组。
- 参数:
group (str 或
keystoneclient.v3.groups.Group) – 要在服务器上更新的组。name (str) – 组的新名称。
description (str) – 组的新描述。
kwargs – 提供的任何其他属性都将传递给服务器。
- 返回值:
从服务器返回的已更新组。
- 返回类型:
keystoneclient.v3.limits 模块¶
- class keystoneclient.v3.limits.Limit(manager, info, loaded=False)¶
基类:
Resource表示一个项目限制。
- 属性
id: 标识项目限制的 UUID
service_id: 标识限制服务的 UUID
region_id: 标识限制区域的 UUID
project_id: 标识限制项目的 UUID
resource_name: 要限制的资源的名称
resource_limit: 应用于项目的限制
description: 项目限制的描述
- class keystoneclient.v3.limits.LimitManager(client)¶
基类:
CrudManager项目限制的管理类。
- collection_key = 'limits'¶
- create(project, service, resource_name, resource_limit, description=None, region=None, **kwargs)¶
创建项目特定的限制。
- 参数:
project (str 或
keystoneclient.v3.projects.Project) – 要创建限制的项目。service (str 或
keystoneclient.v3.services.Service) – 拥有要限制的资源的服务。resource_name (str) – 要限制的资源的名称
resource_limit (int) – 限制的数量
description (str) – 限制的描述
region (str 或
keystoneclient.v3.regions.Region) – 限制适用的区域
- 返回值:
创建的限制的引用
- 返回类型:
- delete(limit)¶
删除项目特定的限制。
- 参数:
limit (str 或
keystoneclient.v3.limit.Limit) – 要删除的项目特定的限制。- 返回值:
响应对象,状态码为 204
- 返回类型:
requests.models.Response
- get(limit)¶
检索项目限制。
- 参数:
limit (str 或
keystoneclient.v3.limit.Limit) – 要检索的项目特定的限制。- 返回值:
一个项目特定的限制
- 返回类型:
keystoneclient.v3.limit.Limit
- key = 'limit'¶
- list(service=None, region=None, resource_name=None, **kwargs)¶
列出项目特定的限制。
提供的任何参数都将作为过滤器传递给服务器
- 参数:
service (UUID 或
keystoneclient.v3.services.Service) – 用于过滤限制的服务region (UUID 或
keystoneclient.v3.regions.Region) – 用于过滤限制的区域resource_name (str) – 用于过滤限制的资源的名称
- 返回值:
项目特定限制的列表。
- 返回类型:
- update(limit, project=None, service=None, resource_name=None, resource_limit=None, description=None, **kwargs)¶
更新项目特定的限制。
- 参数:
limit – 要更新的限制
project (str 或
keystoneclient.v3.projects.Project) – 要更新限制的项目 IDresource_limit – 要更新限制资源的限制值
description (str) – 限制的描述
- 类型:
resource_limit: int
- 返回值:
已更新限制的引用。
- 返回类型:
keystoneclient.v3.policies 模块¶
- class keystoneclient.v3.policies.Policy(manager, info, loaded=False)¶
基类:
Resource表示一个身份策略。
- 属性
id: 标识策略的 uuid
blob: 策略文档(blob)
type: 策略 blob 的 MIME 类型
- update(blob=None, type=None)¶
- class keystoneclient.v3.policies.PolicyManager(client)¶
基类:
CrudManager用于操作身份策略的管理类。
- collection_key = 'policies'¶
- create(blob, type='application/json', **kwargs)¶
创建策略。
- 参数:
- 返回值:
从服务器返回的已创建策略。
- 返回类型:
- delete(policy)¶
删除策略。
- 参数:
policy (str 或
keystoneclient.v3.policies.Policy) – 要在服务器上删除的策略。- 返回值:
带有 204 状态码的响应对象。
- 返回类型:
requests.models.Response
- get(policy)¶
检索策略。
- 参数:
policy (str 或
keystoneclient.v3.policies.Policy) – 要从服务器检索的策略。- 返回值:
从服务器返回的指定策略。
- 返回类型:
- key = 'policy'¶
- list(**kwargs)¶
列出策略。
- 参数:
kwargs – 允许传递服务器支持的过滤条件。
- 返回值:
策略列表。
- 返回类型:
- update(policy, blob=None, type=None, **kwargs)¶
更新策略。
- 参数:
policy (str 或
keystoneclient.v3.policies.Policy) – 要在服务器上更新的策略。blob (str) – 新的策略文档。
type (str) – 新的策略 blob 的 MIME 类型。
kwargs – 提供的任何其他属性都将传递给服务器。
- 返回值:
从服务器返回的已更新策略。
- 返回类型:
keystoneclient.v3.projects 模块¶
- class keystoneclient.v3.projects.Project(manager, info, loaded=False)¶
基类:
Resource表示一个身份项目。
- 属性
id: 标识项目的 uuid
name: 项目名称
description: 项目描述
enabled: 布尔值,指示项目是否已启用
parent_id: 标识此项目在层次结构中的父级的 uuid
- parents: 一个列表或结构化字典,包含此项目的父级
project in the hierarchy
- subtree: 一个列表或结构化字典,包含此项目的子树
project in the hierarchy
- add_tag(tag)¶
- check_tag(tag)¶
- delete_all_tags()¶
- delete_tag(tag)¶
- list_tags()¶
- update(name=None, description=None, enabled=None)¶
- update_tags(tags)¶
- class keystoneclient.v3.projects.ProjectManager(client)¶
基类:
CrudManager用于操作身份项目管理类。
- add_tag(project, tag)¶
为项目添加标签。
- 参数:
project – 要添加标签的项目。
tag – 要添加标签的字符串名称。
- check_tag(project, tag)¶
检查标签是否与项目关联。
- 参数:
project – 要检查标签的项目。
tag – 要检查的标签的字符串名称
- 返回值:
如果标签已关联,则返回 true,否则返回 false
- collection_key = 'projects'¶
- create(name, domain, description=None, enabled=True, parent=None, **kwargs)¶
创建项目。
- 参数:
name (str) – 项目的名称。
domain (str 或
keystoneclient.v3.domains.Domain) – 项目的域。description (str) – 项目的描述。
enabled (bool) – 项目是否已启用。
parent (str 或
keystoneclient.v3.projects.Project) – 项目在层次结构中的父级。kwargs – 提供的任何其他属性都将传递给服务器。
- 返回值:
从服务器返回的已创建项目。
- 返回类型:
- delete(project)¶
删除项目。
- 参数:
project (str 或
keystoneclient.v3.projects.Project) – 要在服务器上删除的项目。- 返回值:
带有 204 状态码的响应对象。
- 返回类型:
requests.models.Response
- delete_tag(project, tag)¶
从项目中移除标签。
- 参数:
projectd – 要从中移除标签的项目。
tag – 要从项目中移除的标签的字符串名称
- find(**kwargs)¶
查找与
**kwargs匹配属性的单个项目。
- get(project, subtree_as_list=False, parents_as_list=False, subtree_as_ids=False, parents_as_ids=False)¶
检索项目。
- 参数:
project (str 或
keystoneclient.v3.projects.Project) – 要从服务器检索的项目。subtree_as_list (bool) – 以平坦列表的形式检索此项目下方的项目。它仅包含当前用户拥有角色分配的项目。
parents_as_list (bool) – 以平坦列表的形式检索此项目上方的项目。它仅包含当前用户拥有角色分配的项目。
subtree_as_ids (bool) – 以结构化字典的形式检索此项目下方的项目 ID。
parents_as_ids (bool) – 以结构化字典的形式检索此项目上方的项目 ID。
- 返回值:
从服务器返回的指定项目。
- 返回类型:
- 引发:
keystoneclient.exceptions.ValidationError – 如果在调用中同时包含 subtree_as_list 和 subtree_as_ids,或 parents_as_list 和 parents_as_ids。
- key = 'project'¶
- list(domain=None, user=None, parent=None, **kwargs)¶
列出项目。
- 参数:
domain (str 或
keystoneclient.v3.domains.Domain) – 用于过滤项目的域。user (str 或
keystoneclient.v3.users.User) – 过滤指定用户拥有角色分配的项目。parent (str 或
keystoneclient.v3.projects.Project) – 过滤作为指定项目父级的项目kwargs – 提供的任何其他属性都将用于过滤项目。项目标签过滤关键字:
tags,tags_any,not_tags, 和not_tags_any。标签属性类型为字符串。传递逗号分隔的字符串以过滤多个标签。
- 返回值:
项目列表。
- 返回类型:
- list_tags(project)¶
列出与项目关联的标签。
- 参数:
project – 要列出标签的项目。
- 返回值:
标签名称字符串列表
- update(project, name=None, domain=None, description=None, enabled=None, **kwargs)¶
更新项目。
- 参数:
project (str 或
keystoneclient.v3.projects.Project) – 要在服务器上更新的项目。name (str) – 项目的新名称。
domain (str 或
keystoneclient.v3.domains.Domain) – 项目的新域。description (str) – 项目的新描述。
enabled (bool) – 项目是否已启用。
kwargs – 提供的任何其他属性都将传递给服务器。
- 返回值:
从服务器返回的已更新项目。
- 返回类型:
- update_tags(project, tags)¶
更新项目的标签列表。
用 tags 参数中指定的列表替换当前标签列表。
- 参数:
project – 要更新的项目。
tags – 要添加到项目中的标签名称字符串列表
- 返回值:
标签列表
keystoneclient.v3.regions 模块¶
- class keystoneclient.v3.regions.Region(manager, info, loaded=False)¶
基类:
Resource表示一个目录区域。
- 属性
id: 标识区域的字符串。
description: 描述区域的字符串。
- parent_region_id: 后端中预先存在的区域或其 ID
字段。允许进行分层区域组织。
enabled: 确定区域是否出现在目录中。
- class keystoneclient.v3.regions.RegionManager(client)¶
基类:
CrudManager用于操作身份区域的管理类。
- collection_key = 'regions'¶
- create(id=None, description=None, enabled=True, parent_region=None, **kwargs)¶
创建区域。
- 参数:
id (str) – 区域的唯一标识符。如果未指定,服务器将创建一个 ID。
description (str) – 区域的描述。
enabled (bool) – 区域是否启用,决定其是否出现在目录中。
parent_region (str 或
keystoneclient.v3.regions.Region) – 区域在层次结构中的父级。kwargs – 提供的任何其他属性都将传递给服务器。
- 返回值:
从服务器返回的已创建区域。
- 返回类型:
- delete(region)¶
删除区域。
- 参数:
region (str 或
keystoneclient.v3.regions.Region) – 要在服务器上删除的区域。- 返回值:
带有 204 状态码的响应对象。
- 返回类型:
requests.models.Response
- get(region)¶
检索区域。
- 参数:
region (str 或
keystoneclient.v3.regions.Region) – 要从服务器检索的区域。- 返回值:
从服务器返回的指定区域。
- 返回类型:
- key = 'region'¶
- list(**kwargs)¶
列出区域。
- 参数:
kwargs – 提供的任何属性都将用于过滤区域。
- 返回值:
区域列表。
- 返回类型:
- update(region, description=None, enabled=None, parent_region=None, **kwargs)¶
更新区域。
- 参数:
region (str 或
keystoneclient.v3.regions.Region) – 要在服务器上更新的区域。description (str) – 区域的新描述。
enabled (bool) – 通过启用或禁用区域来确定该区域是否出现在目录中。
parent_region (str 或
keystoneclient.v3.regions.Region) – 区域在层次结构中的新父级。kwargs – 提供的任何其他属性都将传递给服务器。
- 返回值:
从服务器返回的已更新区域。
- 返回类型:
keystoneclient.v3.registered_limits 模块¶
- class keystoneclient.v3.registered_limits.RegisteredLimit(manager, info, loaded=False)¶
基类:
Resource表示一个已注册的限制。
- 属性
id: 标识已注册限制的 UUID
service_id: 标识限制服务的 UUID
region_id: 标识限制区域的 UUID
resource_name: 要限制的资源的名称
default_limit: 项目假定的默认限制
description: 已注册限制的描述
- class keystoneclient.v3.registered_limits.RegisteredLimitManager(client)¶
基类:
CrudManager已注册限制的管理类。
- collection_key = 'registered_limits'¶
- create(service, resource_name, default_limit, description=None, region=None, **kwargs)¶
创建已注册的限制。
- delete(registered_limit)¶
删除已注册的限制。
- 参数:
registered_limit (str 或
keystoneclient.v3.registered_limits.RegisteredLimit) – 要删除的已注册限制。- 返回值:
带有 204 状态码的响应对象。
- 返回类型:
requests.models.Response
- get(registered_limit)¶
检索已注册的限制。
- 参数:
registered_limit (str 或
keystoneclient.v3.registered_limits.RegisteredLimit) – 要获取的已注册限制。- 返回值:
一个特定的已注册限制。
- 返回类型:
- key = 'registered_limit'¶
- list(service=None, resource_name=None, region=None, **kwargs)¶
列出已注册限制。
提供的任何参数都将作为过滤器传递给服务器。
- 参数:
service (UUID 或
keystoneclient.v3.services.Service) – 用于过滤已注册限制的服务resource_name (str) – 用于过滤已注册限制的资源名称
region (UUID 或
keystoneclient.v3.regions.Region) – 用于过滤已注册限制的区域
- 返回值:
已注册限制的列表。
- 返回类型:
- resource_class¶
RegisteredLimit的别名
- update(registered_limit, service=None, resource_name=None, default_limit=None, description=None, region=None, **kwargs)¶
更新已注册的限制。
- 参数:
- 返回值:
已更新的已注册限制的引用。
- 返回类型:
keystoneclient.v3.role_assignments 模块¶
- class keystoneclient.v3.role_assignments.RoleAssignment(manager, info, loaded=False)¶
基类:
Resource表示一个身份角色分配。
- 属性
role: 包含角色 uuid 的对象
- user or group: 包含用户或用户对象的对象
group uuid
- scope: 包含项目或域对象的对象
包含 uuid
- class keystoneclient.v3.role_assignments.RoleAssignmentManager(client)¶
基类:
CrudManager用于操作身份角色分配的管理类。
- collection_key = 'role_assignments'¶
- create(**kwargs)¶
- delete(**kwargs)¶
- find(**kwargs)¶
查找与
**kwargs匹配属性的单个项目。
- get(**kwargs)¶
- key = 'role_assignment'¶
- list(user=None, group=None, project=None, domain=None, system=False, role=None, effective=False, os_inherit_extension_inherited_to=None, include_subtree=False, include_names=False)¶
列出角色分配。
如果不提供任何参数,将列出系统中所有的角色分配。
如果同时提供了 user 和 group,将引发 ValidationError。如果同时提供了 domain 和 project,也将引发 ValidationError。
- 参数:
user – 用于查询过滤的用户。(可选)
group – 用于查询过滤的组。(可选)
project – 用于查询过滤的项目。(可选)
domain – 用于查询过滤的域。(可选)
system – 用于过滤系统分配的布尔值。(可选)
role – 用于查询过滤的角色。(可选)
effective (boolean) – 返回有效角色分配。(可选)
os_inherit_extension_inherited_to (string) – 返回‘projects’或‘domains’的继承角色分配。(可选)
include_subtree (boolean) – 包括子树(可选)
include_names (boolean) – 显示名称而不是 ID。(可选)
- put(**kwargs)¶
- resource_class¶
alias of
RoleAssignment
- update(**kwargs)¶
keystoneclient.v3.roles module¶
- class keystoneclient.v3.roles.InferenceRule(manager, info, loaded=False)¶
基类:
Resource表示一个规则,该规则说明一个角色可以推断出另一个角色。
- 属性
prior_role: 此角色推断出其他角色
implied_role: 此角色被其他角色推断
- class keystoneclient.v3.roles.InferenceRuleManager(client)¶
基类:
CrudManager用于操作身份推断规则的管理类。
- check(prior_role, implied_role)¶
检查推断规则是否存在。
有效的 HTTP 返回码
204: 规则推断存在
404: 找不到角色
- 参数:
prior_role – 推断
implied_role的角色。implied_role – 被
prior_role推断的角色。
- 返回值:
服务器返回的具有 204 状态的响应对象。
- 返回类型:
requests.models.Response
- collection_key = 'role_inferences'¶
- create(prior_role, implied_role)¶
创建推断规则。
推断规则由两个角色组成,一个先导角色和一个推断角色。先导角色将推断出推断角色。
有效的 HTTP 返回码
201: 资源创建成功
404: 找不到角色
409: 推断规则已存在
- 参数:
prior_role – 推断
implied_role的角色。implied_role – 被
prior_role推断的角色。
- 返回值:
服务器返回的新创建的角色推断。
- 返回类型:
- delete(prior_role, implied_role)¶
删除推断规则。
删除推断规则时,需要两个角色。请注意,两个角色都不会被删除,只会解除推断关系。
有效的 HTTP 返回码
204: 删除请求已接受
404: 找不到角色
- 参数:
prior_role – 推断
implied_role的角色。implied_role – 被
prior_role推断的角色。
- 返回值:
带有 204 状态码的响应对象。
- 返回类型:
requests.models.Response
- find(**kwargs)¶
查找与
**kwargs匹配属性的单个项目。
- get(prior_role, implied_role)¶
检索推断规则。
有效的 HTTP 返回码
200: 返回推断规则
404: 找不到角色
- 参数:
prior_role – 推断
implied_role的角色。implied_role – 被
prior_role推断的角色。
- 返回值:
服务器返回的指定的角色推断。
- 返回类型:
- key = 'role_inference'¶
- list(prior_role)¶
列出某个角色可能推断出的所有角色。
有效的 HTTP 返回码
200: 返回推断规则列表
404: 找不到角色
- 参数:
prior_role – 推断
implied_role的角色。- 返回值:
服务器返回的指定的角色推断。
- 返回类型:
- list_inference_roles()¶
列出所有推断规则。
有效的 HTTP 返回码
200: 返回所有推断规则
- 参数:
kwargs – 提供的任何其他属性都将传递给服务器。
- 返回值:
推断规则列表。
- 返回类型:
- put(**kwargs)¶
- resource_class¶
alias of
InferenceRule
- update(**kwargs)¶
- class keystoneclient.v3.roles.Role(manager, info, loaded=False)¶
基类:
Resource表示一个身份角色。
- 属性
id: 标识角色的 UUID
name: 用户可见的标识符
domain: 角色的可选域
- class keystoneclient.v3.roles.RoleManager(client)¶
基类:
CrudManager用于操作身份角色的管理类。
- check(role, user=None, group=None, system=None, domain=None, project=None, os_inherit_extension_inherited=False, **kwargs)¶
检查用户或组是否在域或项目上拥有角色。
- 参数:
user (str or
keystoneclient.v3.users.User) – 检查指定用户在资源上的角色授予。必须指定域或项目。用户和组是互斥的。group (str or
keystoneclient.v3.groups.Group) – 检查指定组在资源上的角色授予。必须指定域或项目。用户和组是互斥的。system (str) – 检查系统上的角色授予。项目、域和系统是互斥的。
domain (str or
keystoneclient.v3.domains.Domain) – 检查指定域上的角色授予。必须指定用户或组。项目、域和系统是互斥的。project (str or
keystoneclient.v3.projects.Project) – 检查指定项目上的角色授予。必须指定用户或组。项目、域和系统是互斥的。os_inherit_extension_inherited (bool) – 将使用 OS-INHERIT。它提供了项目从其域或层次结构中的父项目继承角色分配的能力。
kwargs – 提供的任何其他属性都将传递给服务器。
- 返回值:
如果指定的角色存在,则从服务器返回。
- 返回类型:
- 返回值:
如果指定的角色不存在,则返回 204 状态的响应对象。
- 返回类型:
requests.models.Response
- check_implied(prior_role, implied_role, **kwargs)¶
- collection_key = 'roles'¶
- create(name, domain=None, **kwargs)¶
创建角色。
- 参数:
name (str) – 角色的名称。
domain (str or
keystoneclient.v3.domains.Domain) – 角色的域。如果提供了值,则为域范围的角色,否则为全局角色。kwargs – 提供的任何其他属性都将传递给服务器。
- 返回值:
服务器返回的创建的角色。
- 返回类型:
- create_implied(prior_role, implied_role, **kwargs)¶
- delete(role)¶
删除角色。
删除角色时,所有以该角色为先导角色的推断规则都将被删除。
- 参数:
role (str or
keystoneclient.v3.roles.Role) – 要在服务器上删除的角色。- 返回值:
带有 204 状态码的响应对象。
- 返回类型:
requests.models.Response
- delete_implied(prior_role, implied_role, **kwargs)¶
- deprecation_msg = 'keystoneclient.v3.roles.InferenceRuleManager'¶
- get(role)¶
检索角色。
- 参数:
role (str or
keystoneclient.v3.roles.Role) – 要从服务器检索的角色。- 返回值:
服务器返回的指定角色。
- 返回类型:
- get_implied(prior_role, implied_role, **kwargs)¶
- grant(role, user=None, group=None, system=None, domain=None, project=None, os_inherit_extension_inherited=False, **kwargs)¶
向域或项目上的用户或组授予角色。
- 参数:
role (str or
keystoneclient.v3.roles.Role) – 要在服务器上授予的角色。user (str or
keystoneclient.v3.users.User) – 要授予资源上的指定用户。必须指定域或项目。用户和组是互斥的。group (str or
keystoneclient.v3.groups.Group) – 要授予资源上的指定组。必须指定域或项目。用户和组是互斥的。system (str) – 要在其中授予角色的系统信息。项目、域和系统是互斥的。
domain (str or
keystoneclient.v3.domains.Domain) – 将授予角色的域。必须指定用户或组。项目、域和系统是互斥的。project (str or
keystoneclient.v3.projects.Project) – 将授予角色的项目。必须指定用户或组。项目、域和系统是互斥的。os_inherit_extension_inherited (bool) – 将使用 OS-INHERIT。它提供了项目从其域或层次结构中的父项目继承角色分配的能力。
kwargs – 提供的任何其他属性都将传递给服务器。
- 返回值:
服务器返回的已授予角色。
- 返回类型:
- key = 'role'¶
- list(user=None, group=None, system=None, domain=None, project=None, os_inherit_extension_inherited=False, **kwargs)¶
列出角色和角色授予。
- 参数:
user (str or
keystoneclient.v3.users.User) – 过滤指定用户在资源上的角色授予。必须指定域或项目。用户和组是互斥的。group (str or
keystoneclient.v3.groups.Group) – 过滤指定组在资源上的角色授予。必须指定域或项目。用户和组是互斥的。domain (str or
keystoneclient.v3.domains.Domain) – 过滤指定域上的角色授予。必须指定用户或组。项目、域和系统是互斥的。project (str or
keystoneclient.v3.projects.Project) – 过滤指定项目上的角色授予。必须指定用户或组。项目、域和系统是互斥的。os_inherit_extension_inherited (bool) – 将使用 OS-INHERIT。它提供了项目从其域或层次结构中的父项目继承角色分配的能力。
kwargs – 提供的任何其他属性都将用于过滤角色。
- 返回值:
角色列表。
- 返回类型:
list of
keystoneclient.v3.roles.Role
- list_role_inferences(**kwargs)¶
- revoke(role, user=None, group=None, system=None, domain=None, project=None, os_inherit_extension_inherited=False, **kwargs)¶
从域或项目上的用户或组撤销角色。
- 参数:
user (str or
keystoneclient.v3.users.User) – 从资源上撤销指定用户的角色授予。必须指定域或项目。用户和组是互斥的。group (str or
keystoneclient.v3.groups.Group) – 从资源上撤销指定组的角色授予。必须指定域或项目。用户和组是互斥的。system (str) – 撤销系统上的角色授予。项目、域和系统是互斥的。
domain (str or
keystoneclient.v3.domains.Domain) – 撤销指定域上的角色授予。必须指定用户或组。项目、域和系统是互斥的。project (str or
keystoneclient.v3.projects.Project) – 撤销指定项目上的角色授予。必须指定用户或组。项目、域和系统是互斥的。os_inherit_extension_inherited (bool) – 将使用 OS-INHERIT。它提供了项目从其域或层次结构中的父项目继承角色分配的能力。
kwargs – 提供的任何其他属性都将传递给服务器。
- 返回值:
服务器返回的已撤销角色。
- 返回类型:
list of
keystoneclient.v3.roles.Role
- update(role, name=None, **kwargs)¶
更新角色。
- 参数:
role (str or
keystoneclient.v3.roles.Role) – 要在服务器上更新的角色。name (str) – 角色的新名称。
kwargs – 提供的任何其他属性都将传递给服务器。
- 返回值:
服务器返回的已更新角色。
- 返回类型:
keystoneclient.v3.services module¶
- class keystoneclient.v3.services.Service(manager, info, loaded=False)¶
基类:
Resource表示一个身份服务。
- 属性
id: 标识服务的 UUID
name: 服务的用户可见名称(例如 Keystone)
description: 服务的描述
type: 服务的类型(例如‘compute’、‘identity’)
enabled: 决定服务是否显示在目录中
- class keystoneclient.v3.services.ServiceManager(client)¶
基类:
CrudManager用于操作身份服务的管理类。
- collection_key = 'services'¶
- create(name, type=None, enabled=True, description=None, **kwargs)¶
创建服务。
- 参数:
- 返回值:
服务器返回的创建的服务。
- 返回类型:
- delete(service=None, id=None)¶
删除一个服务。
- 参数:
service (str or
keystoneclient.v3.services.Service) – 要在服务器上删除的服务。- 返回值:
带有 204 状态码的响应对象。
- 返回类型:
requests.models.Response
- get(service)¶
检索服务。
- 参数:
service (str or
keystoneclient.v3.services.Service) – 要从服务器检索的服务。- 返回值:
服务器返回的指定服务。
- 返回类型:
- key = 'service'¶
- list(name=None, type=None, **kwargs)¶
列出服务。
- 参数:
- 返回值:
服务列表。
- 返回类型:
- update(service, name=None, type=None, enabled=None, description=None, **kwargs)¶
更新服务。
- 参数:
service (str or
keystoneclient.v3.services.Service) – 要在服务器上更新的服务。name (str) – 服务的新名称。
type (str) – 服务的新类型。
enabled (bool) – 服务是否显示在目录中。
description (str) – 服务的新描述。
kwargs – 提供的任何其他属性都将传递给服务器。
- 返回值:
服务器返回的已更新服务。
- 返回类型:
keystoneclient.v3.system module¶
keystoneclient.v3.tokens module¶
- class keystoneclient.v3.tokens.TokenManager(client)¶
基类:
object用于操作身份令牌的管理类。
- get_revoked(audit_id_only=False)¶
获取已撤销的令牌列表。
- get_token_data(token, include_catalog=True, allow_expired=False, access_rules_support=None)¶
从身份服务器获取有关令牌的数据。
- revoke_token(token)¶
撤销令牌。
- 参数:
token (str or
keystoneclient.access.AccessInfo) – 要撤销的令牌。
- validate(token, include_catalog=True, allow_expired=False, access_rules_support=None)¶
验证令牌。
- 参数:
token (str or
keystoneclient.access.AccessInfo) – 要验证的令牌。include_catalog – 如果为 False,则请求响应不包含目录。
allow_expired (bool) – 如果为 True,则令牌将被验证并返回,即使它已过期。
access_rules_support (float) – 表示客户端有能力强制执行 keystone 访问规则的版本号,如果未设置,则此客户端不支持访问规则。
- 返回类型:
keystoneclient.v3.users module¶
- class keystoneclient.v3.users.User(manager, info, loaded=False)¶
基类:
Resource表示一个身份用户。
- 属性
id: 标识用户的 UUID
- class keystoneclient.v3.users.UserManager(client)¶
基类:
CrudManager用于操作身份用户的管理类。
- add_to_group(user, group)¶
将指定用户添加为指定组的成员。
- 参数:
user (str or
keystoneclient.v3.users.User) – 要添加到组的用户。group (str or
keystoneclient.v3.groups.Group) – 要将用户放入的组。
- 返回值:
带有 204 状态码的响应对象。
- 返回类型:
requests.models.Response
- check_in_group(user, group)¶
检查指定用户是否是指定组的成员。
- 参数:
user (str or
keystoneclient.v3.users.User) – 要在组中验证的用户。group (str or
keystoneclient.v3.groups.Group) – 要在其中检查用户的组。
- 返回值:
带有 204 状态码的响应对象。
- 返回类型:
requests.models.Response
- collection_key = 'users'¶
- create(name, domain=None, project=None, password=None, email=None, description=None, enabled=True, default_project=None, **kwargs)¶
创建一个用户。
- 参数:
name (str) – 用户的名称。
domain (str or
keystoneclient.v3.domains.Domain) – 用户的域。project (str or
keystoneclient.v3.projects.Project) – 用户的默认项目。(已弃用,请参阅下面的警告)password (str) – 用户的密码。
email (str) – 用户的电子邮件地址。
description (str) – 用户的描述。
enabled (bool) – 用户是否已启用。
default_project (str or
keystoneclient.v3.projects.Project) – 用户的默认项目。kwargs – 提供的任何其他属性都将传递给服务器。
- 返回值:
服务器返回的创建的用户。
- 返回类型:
警告
project 参数自 1.7.0 版本起已弃用,取而代之的是 default_project,并可能在 2.0.0 版本中删除。
如果同时提供了 default_project 和 project,将使用 default_project。
- delete(user)¶
删除用户。
- 参数:
user (str or
keystoneclient.v3.users.User) – 要在服务器上删除的用户。- 返回值:
带有 204 状态码的响应对象。
- 返回类型:
requests.models.Response
- get(user)¶
检索用户。
- 参数:
user (str or
keystoneclient.v3.users.User) – 要从服务器检索的用户。- 返回值:
服务器返回的指定用户。
- 返回类型:
- key = 'user'¶
- list(project=None, domain=None, group=None, default_project=None, **kwargs)¶
列出用户。
- 参数:
project (str or
keystoneclient.v3.projects.Project) – 用于过滤用户默认项目的项目。(已弃用,请参阅下面的警告)domain (str or
keystoneclient.v3.domains.Domain) – 用于过滤用户域的域。group (str or
keystoneclient.v3.groups.Group) – 用户所属的组。default_project (str or
keystoneclient.v3.projects.Project) – 用于过滤用户默认项目的项目。kwargs – 提供的任何其他属性都将用于过滤用户。
- 返回值:
用户列表。
- 返回类型:
list of
keystoneclient.v3.users.User。
警告
project 参数自 1.7.0 版本起已弃用,取而代之的是 default_project,并可能在 2.0.0 版本中删除。
如果同时提供了 default_project 和 project,将使用 default_project。
- remove_from_group(user, group)¶
将指定用户从指定组中移除。
- 参数:
user (str or
keystoneclient.v3.users.User) – 要从组中移除的用户。group (str or
keystoneclient.v3.groups.Group) – 要从中移除用户的组。
- 返回值:
带有 204 状态码的响应对象。
- 返回类型:
requests.models.Response
- update(user, name=None, domain=None, project=None, password=None, email=None, description=None, enabled=None, default_project=None, **kwargs)¶
更新用户。
- 参数:
user (str or
keystoneclient.v3.users.User) – 要在服务器上更新的用户。name (str) – 用户的新名称。
domain (str or
keystoneclient.v3.domains.Domain) – 用户的域。project (str or
keystoneclient.v3.projects.Project) – 用户的默认新项目。(已弃用,请参阅下面的警告)password (str) – 用户的新密码。
email (str) – 用户的电子邮件。
description (str) – 新用户的描述。
enabled (bool) – 用户是否已启用。
default_project (str or
keystoneclient.v3.projects.Project) – 用户的默认新项目。kwargs – 提供的任何其他属性都将传递给服务器。
- 返回值:
服务器返回的已更新用户。
- 返回类型:
警告
project 参数自 1.7.0 版本起已弃用,取而代之的是 default_project,并可能在 2.0.0 版本中删除。
如果同时提供了 default_project 和 project,将使用 default_project。