keystone.endpoint_policy.backends.sql 模块

class keystone.endpoint_policy.backends.sql.EndpointPolicy[source]

基类: EndpointPolicyDriverBase

check_policy_association(policy_id, endpoint_id=None, service_id=None, region_id=None)[source]

检查策略关联是否存在。

参数:
  • policy_id (string) – 要关联的策略的标识

  • endpoint_id (string) – 要关联的端点标识

  • service_id (string) – 要关联的服务标识

  • region_id (string) – 要关联的区域标识

引发:

keystone.exception.PolicyAssociationNotFound – 如果没有找到指定的关联。

返回值:

create_policy_association(policy_id, endpoint_id=None, service_id=None, region_id=None)[source]

创建策略关联。

参数:
  • policy_id (string) – 要关联的策略的标识

  • endpoint_id (string) – 要关联的端点标识

  • service_id (string) – 要关联的服务标识

  • region_id (string) – 要关联的区域标识

返回值:

允许三种类型的关联

  • 端点(在这种情况下,服务和区域必须为 None)

  • 服务和区域(在这种情况下,端点必须为 None)

  • 服务(在这种情况下,端点和区域必须为 None)

delete_association_by_endpoint(endpoint_id)[source]

删除与特定端点关联的所有策略关联。

参数:

endpoint_id (string) – 要检查的端点标识

返回值:

delete_association_by_policy(policy_id)[source]

删除与特定策略关联的所有策略关联。

参数:

policy_id (string) – 要检查的端点标识

返回值:

delete_association_by_region(region_id)[source]

删除与特定区域关联的所有策略关联。

参数:

region_id (string) – 要检查的端点标识

返回值:

delete_association_by_service(service_id)[source]

删除与特定服务关联的所有策略关联。

参数:

service_id (string) – 要检查的端点标识

返回值:

delete_policy_association(policy_id, endpoint_id=None, service_id=None, region_id=None)[source]

删除策略关联。

参数:
  • policy_id (string) – 要关联的策略的标识

  • endpoint_id (string) – 要关联的端点标识

  • service_id (string) – 要关联的服务标识

  • region_id (string) – 要关联的区域标识

返回值:

get_policy_association(endpoint_id=None, service_id=None, region_id=None)[source]

获取显式关联的策略。

此方法未作为公共 API 暴露,但由 get_policy_for_endpoint() 使用。

参数:
  • endpoint_id (string) – 端点标识

  • service_id (string) – 服务的标识

  • region_id (string) – 区域的标识

引发:

keystone.exception.PolicyAssociationNotFound – 如果没有找到指定的关联。

返回值:

包含 policy_id 的字典(值为仅包含 policy_id 的元组)

list_associations_for_policy(policy_id)[source]

列出策略的关联。

此方法未作为公共 API 暴露,但由 list_endpoints_for_policy() 使用。

参数:

policy_id (string) – 策略标识

返回值:

关联字典列表

class keystone.endpoint_policy.backends.sql.PolicyAssociation(*args, **kwargs)[source]

基础: Base, ModelDictMixin

attributes = ['policy_id', 'endpoint_id', 'region_id', 'service_id']
endpoint_id
id
policy_id
region_id
service_id
to_dict()[source]

返回模型的属性作为字典。

我们重写标准方法,以隐藏 id 列,因为这仅存在于提供表的主键。