Keystone 联合身份验证的审计支持

bp audit-support-for-federation

Keystone 正在扩展其对联合身份验证的支持,以便实现与企业环境更无缝的集成,并利用现有的身份提供程序。与联合 Keystone 部署中的身份验证和授权相关的额外复杂性需要合适的审计支持,以确保 OpenStack 环境以符合规范的方式使用。 在此蓝图中,我们描述了使用 DMTF 云审计数据联合 (CADF) 开放标准,并利用 PyCADF 的 Keystone 联合身份验证操作的建议审计支持。

问题描述

对于 Keystone,我们需要定义并实现对新的 CADF 审计事件记录的支持,这些记录捕获与将联合属性映射到基于组的角色的行为相关的身份验证和授权行为。 此外,为了审计目的,我们需要捕获从外部身份提供程序派生的用户身份信息。 这至关重要,因为在 Keystone 的联合身份验证模型中,用户信息是短暂的,不再直接存储在 Keystone 中。

提议的变更

建议的更改是为与联合身份验证相关的操作添加新的基于 CADF 的审计事件通知。 我们打算重用 Icehouse 版本 中的现有通知工作。

通知中的数据将包含与联合用户和身份提供程序相关的信息。 应该在通知中包含诸如:用户名、用户 ID、身份提供程序、协议以及用户映射到的组等信息。

有关将触发通知的操作的更多详细信息,请参阅此规范的 通知影响 部分。

备选方案

数据模型影响

REST API 影响

安全影响

审计记录需要设计成不会意外发布敏感数据,例如令牌信息或密码。

通知影响

需要为以下事件创建新的 CADF 通知

  • 联合用户尝试进行身份验证并检索未限定范围的令牌。

  • 联合用户尝试检索项目列表。

  • 联合用户尝试检索域列表。

  • 联合用户尝试进行身份验证并检索限定范围的令牌。

其他最终用户影响

性能影响

如果启用了联合身份验证的 CADF 事件通知,性能将受到轻微影响。

其他部署者影响

开发人员影响

实现

负责人

主要负责人

  • btopol

其他贡献者

  • stevemar

  • chungg

  • mrutkows

工作项

  • 定义新的审计事件格式。

  • 为新事件实现通知。

  • 为新事件创建单元测试。

  • 记录新的通知事件。

依赖项

没有新的依赖项,但是我们将使用 PyCADF 库,该库已经是 Keystone 的必需库。

测试

将为新事件添加单元测试。

文档影响

应该在 此处 记录添加的新审计事件。

参考资料