keystone.federation.backends.base 模块¶
- class keystone.federation.backends.base.FederationDriverBase[源代码]¶
基类:
object- abstract create_idp(idp_id, idp)[源代码]¶
创建身份提供程序。
- 参数:
idp_id (字符串) – IdP 对象的 ID
idp (字典) – idp 对象
- 返回值:
idp 引用
- 返回类型:
dict
- abstract create_mapping(mapping_id, mapping)[源代码]¶
创建一个映射。
- 参数:
mapping_id (字符串) – mapping 对象的 ID
mapping (字典) – 包含 mapping 名称的 mapping 引用
- 返回值:
mapping 引用
- 返回类型:
dict
- abstract create_protocol(idp_id, protocol_id, protocol)[源代码]¶
添加 IdP-协议配置。
- 参数:
idp_id (字符串) – IdP 对象的 ID
protocol_id (字符串) – 协议对象的 ID
protocol (字典) – 协议对象
- 引发:
keystone.exception.IdentityProviderNotFound – 如果 IdP 不存在。
- 返回值:
protocol 引用
- 返回类型:
dict
- abstract create_sp(sp_id, sp)[源代码]¶
创建服务提供程序。
- 参数:
sp_id (字符串) – 服务提供程序的 id
sp (字典) – 服务提供程序对象
- 返回值:
服务提供程序引用
- 返回类型:
dict
- abstract delete_idp(idp_id)[源代码]¶
删除身份提供程序。
- 参数:
idp_id (字符串) – IdP 对象的 ID
- 引发:
keystone.exception.IdentityProviderNotFound – 如果 IdP 不存在。
- abstract delete_protocol(idp_id, protocol_id)[源代码]¶
删除 IdP-协议配置。
- 参数:
idp_id (字符串) – IdP 对象的 ID
protocol_id (字符串) – 协议对象的 ID
- 引发:
keystone.exception.IdentityProviderNotFound – 如果 IdP 不存在。
keystone.exception.FederatedProtocolNotFound – 如果找不到联合协议。
- abstract delete_sp(sp_id)[源代码]¶
删除服务提供程序。
- 参数:
sp_id (字符串) – 服务提供程序的 id
- 引发:
keystone.exception.ServiceProviderNotFound – 如果服务提供程序不存在。
- abstract get_enabled_service_providers()[源代码]¶
列出服务目录中启用的服务提供程序。
目录中的服务提供程序包含三个属性:
id、auth_url和sp_url,其中id 是服务提供程序对象的唯一用户定义的标识符
auth_url 是远程 Keystone 的身份验证 URL
sp_url 是远程服务提供程序上可访问的 URL,SAML 断言在该 URL 上传输。
- 返回值:
包含启用服务提供程序的字典列表
- 返回类型:
字典列表
- abstract get_idp(idp_id)[源代码]¶
按 ID 获取身份提供程序。
- 参数:
idp_id (字符串) – IdP 对象的 ID
- 引发:
keystone.exception.IdentityProviderNotFound – 如果 IdP 不存在。
- 返回值:
idp 引用
- 返回类型:
dict
- abstract get_idp_from_remote_id(remote_id)[源代码]¶
按远程 ID 获取身份提供程序。
- 参数:
remote_id – 远程 IdP 的 ID
- 引发:
keystone.exception.IdentityProviderNotFound – 如果 IdP 不存在。
- 返回值:
idp 引用
- 返回类型:
dict
- abstract get_mapping(mapping_id)[源代码]¶
获取 mapping,根据 mapping_id 返回 mapping。
- 参数:
mapping_id – 获取 mapping 的 id
- 引发:
keystone.exception.MappingNotFound – 如果找不到 mapping。
- 返回值:
mapping 引用
- 返回类型:
dict
- abstract get_mapping_from_idp_and_protocol(idp_id, protocol_id)[源代码]¶
根据 idp_id 和 protocol_id 获取 mapping。
- 参数:
idp_id (字符串) – 身份提供程序的 id
protocol_id (字符串) – 协议的 id
- 引发:
keystone.exception.IdentityProviderNotFound – 如果 IdP 不存在。
keystone.exception.FederatedProtocolNotFound – 如果找不到联合协议。
- 返回值:
mapping 引用
- 返回类型:
dict
- abstract get_protocol(idp_id, protocol_id)[源代码]¶
获取 IdP-协议配置。
- 参数:
idp_id (字符串) – IdP 对象的 ID
protocol_id (字符串) – 协议对象的 ID
- 引发:
keystone.exception.IdentityProviderNotFound – 如果 IdP 不存在。
keystone.exception.FederatedProtocolNotFound – 如果找不到联合协议。
- 返回值:
protocol 引用
- 返回类型:
dict
- abstract get_sp(sp_id)[源代码]¶
获取服务提供程序。
- 参数:
sp_id (字符串) – 服务提供程序的 id
- 返回值:
服务提供程序引用
- 返回类型:
dict
- 引发:
keystone.exception.ServiceProviderNotFound – 如果服务提供程序不存在。
- abstract list_idps(hints)[源代码]¶
列出所有身份提供程序。
- 参数:
hints – 驱动程序如果可能应该实现的筛选提示。
- 返回值:
idp 引用列表
- 返回类型:
字典列表
- 引发:
keystone.exception.IdentityProviderNotFound – 如果 IdP 不存在。
- abstract list_protocols(idp_id)[源代码]¶
列出 IdP 支持的协议。
- 参数:
idp_id (字符串) – IdP 对象的 ID
- 引发:
keystone.exception.IdentityProviderNotFound – 如果 IdP 不存在。
- 返回值:
protocol 引用列表
- 返回类型:
字典列表
- abstract list_sps(hints)[源代码]¶
列出所有服务提供程序。
- 参数:
hints – 驱动程序如果可能应该实现的筛选提示。
- 返回值:
服务提供程序引用对象列表
- 返回类型:
字典列表
- 引发:
keystone.exception.ServiceProviderNotFound – 如果 SP 不存在。
- abstract update_idp(idp_id, idp)[源代码]¶
按 ID 更新身份提供程序。
- 参数:
idp_id (字符串) – IdP 对象的 ID
idp (字典) – idp 对象
- 引发:
keystone.exception.IdentityProviderNotFound – 如果 IdP 不存在。
- 返回值:
idp 引用
- 返回类型:
dict
- abstract update_mapping(mapping_id, mapping_ref)[源代码]¶
更新一个映射。
- 参数:
mapping_id (字符串) – 要更新的 mapping 的 id
mapping_ref (字典) – 新的 mapping 引用
- 返回值:
mapping 引用
- 返回类型:
dict
- abstract update_protocol(idp_id, protocol_id, protocol)[源代码]¶
更改 IdP-协议配置。
- 参数:
idp_id (字符串) – IdP 对象的 ID
protocol_id (字符串) – 协议对象的 ID
protocol (字典) – 协议对象
- 引发:
keystone.exception.IdentityProviderNotFound – 如果 IdP 不存在。
keystone.exception.FederatedProtocolNotFound – 如果找不到联合协议。
- 返回值:
protocol 引用
- 返回类型:
dict
- abstract update_sp(sp_id, sp)[source]¶
更新一个服务提供者。
- 参数:
sp_id (字符串) – 服务提供程序的 id
sp (dict) – 服务提供者对象
- 返回值:
服务提供程序引用
- 返回类型:
dict
- 引发:
keystone.exception.ServiceProviderNotFound – 如果服务提供程序不存在。