keystone.identity.shadow_backends.base 模块

class keystone.identity.shadow_backends.base.ShadowUsersDriverBase[source]

基类: object

Shadow Users driver 的接口描述。

abstract create_federated_object(fed_dict)[source]

创建一个新的联合对象。

参数:

federated_dict (dict) – 联合用户的引用

abstract create_federated_user(domain_id, federated_dict, email=None)[source]

使用联合身份创建一个新用户。

参数:
  • domain_id – 用于联合用户的 IdP 的域 ID

  • federated_dict (dict) – 联合用户的引用

  • email – 联合用户的电子邮件

返回 dict:

包含用户引用

abstract create_nonlocal_user(user_dict)[source]

创建一个新的非本地用户。

参数:

user_dict (dict) – 非本地用户的引用

返回 dict:

包含用户引用

delete_federated_object(user_id)[source]

删除用户的联合对象。

参数:

user_id – 用户的唯一标识符

abstract get_federated_objects(user_id)[source]

获取用户的全部联合对象。

参数:

user_id – 用户的唯一标识符

返回列表:

包含用户的联合对象

abstract get_federated_user(idp_id, protocol_id, unique_id)[source]

返回找到的联合身份的用户。

参数:
  • idp_id – 身份提供商 ID

  • protocol_id – 联合协议 ID

  • unique_id – 用户的唯一 ID

返回 dict:

包含用户引用

abstract get_user(user_id)[source]

返回找到的用户。

参数:

user_id – 用户的唯一标识符

返回 dict:

包含用户引用

abstract list_federated_users_info(hints=None)[source]

获取具有指定过滤器的 shadow 用户信息。

参数:

hints – 包含尚未满足的过滤器列表。此处满足的任何过滤器都将被删除,以便调用者知道是否仍有任何过滤器剩余。

返回列表:

包含 shadow 用户引用的对象列表。

abstract set_last_active_at(user_id)[source]

设置用户的最后活跃日期。

参数:

user_id – 用户的唯一标识符

abstract update_federated_user_display_name(idp_id, protocol_id, unique_id, display_name)[source]

如果已更改,则更新联合用户的显示名称。

参数:
  • idp_id – 身份提供商 ID

  • protocol_id – 联合协议 ID

  • unique_id – 用户的唯一 ID

  • display_name – 用户的显示名称

keystone.identity.shadow_backends.base.federated_objects_to_list(fed_ref)[source]

使用传入的一个创建新的重格式化的联合对象列表。

在返回带有用户的联合对象时,我们只需要 idp_id、protocol_id 和 unique_id 这些属性。因此,我们将这些元素从 fed_ref 中提取出来,并创建一个包含所需信息的新的格式化列表。我们只是将每个联合对象的 protocol_ids 和 unique_ids 分组在相应的 idp_id 下。

返回列表:

包含用户的联合对象