IETF ABFAB 联合身份验证

bp abfab

截至 Icehouse 版本,唯一支持的联合身份验证协议是 SAML。本规范的目的是启用对 IETF ABFAB 作为联合身份验证协议的支持。

问题描述

希望允许其用户访问 OpenStack 云的身份提供者,会发出和处理 ABFAB 请求。目前这不可行,因为唯一支持的联合身份验证协议是 SAML。

提议的变更

  1. 为 IETF ABFAB 请求创建一个新的身份验证插件或模块。

  2. 重用映射引擎,将呈现的任何 IETF ABFAB 属性映射到 Keystone 属性。

  3. 利用 Moonshot 的 ABFAB Apache 实现来处理 ABFAB 协议请求和响应。

  4. python-keystoneclient 需要增强以处理 ABFAB 请求。

注意事项

  1. 应在重新设计现有的联合身份验证代码后编写此功能,以避免不必要的代码重复。

  2. 补丁链接位于规范底部。

备选方案

  1. 向 Keystone 添加一个身份验证插件,直接处理 ABFAB 协议。通过该插件,我们可以通过加密的 EAP 隧道向 IdP 发送 ABFAB 请求,然后在插件内处理响应。

    这将同样有效,因为 ABFAB 被设计为在这种模式下工作,但这将意味着 Keystone 需要支持更多的代码。

安全影响

没有,前提是 Apache ABFAB 插件正确实现并遵循 IETF 规范。

通知影响

其他最终用户影响

应该创建另一个 python-keystoneclient 规范。

性能影响

其他部署者影响

开发人员影响

实现

负责人

主要负责人

工作项

  • 添加一个 Apache ABFAB/Moonshot 身份验证插件,以处理 Apache 创建的任何必要的 ABFAB 特定数据处理。

依赖项

文档影响

必须提供详细的文档来描述任何新的必要配置。

参考资料