2024.2 系列发布说明¶
26.0.0-8¶
新特性¶
添加了一个新模块,
keystone.wsgi,用于收集 WSGI应用程序对象。 这旨在通过为这些对象提供一致的位置来简化部署。 例如,如果使用 uWSGI,则不必[uwsgi] wsgi-file = /bin/keystone-wsgi-public
现在可以使用
[uwsgi] module = keystone.wsgi.api:application
这还简化了使用其他期望模块路径的 WSGI 服务器(例如 gunicorn)的部署。
安全问题¶
修复了一个潜在的安全问题,该问题是来自只读后端(例如 LDAP)的用户令牌在后端禁用用户后仍被接受。 这是因为 Keystone 无法收到任何通知,也无法撤销此类令牌。 详情请参见 https://bugs.launchpad.net/keystone/+bug/2122615。
26.0.0¶
新功能¶
为 admin cli 工具添加了一个新命令:keystone-manage reset_last_active。此新命令更新数据库,将用户表中 last_active_at 中的任何 NULL 值覆盖为当前时间。这是修复 Bug #2074018 的必要步骤。有关详细信息,请参阅 launchpad。
[bug 2045974] 添加了域管理器角色。 这使得在不需要“admin”角色的情况下,域内的用户能够进行身份相关的自助服务。 现在,将“manager”角色分配给域范围内的用户,允许他们管理域内的项目、组、用户和角色分配。 这受到以下限制:域管理器可以分配和撤销的角色受新的
domain_managed_target_role策略规则限制,该规则默认为“reader”、“member”和“manager”。
改进了树外身份驱动程序的配置管理。 当驱动程序实现一个特殊方法时,在从数据库读取配置时,会在实例化驱动程序之前调用它。 此外,添加了 2 个新的 domain_config 部分配置选项,允许使用 API 管理此类驱动程序特定参数。
安全问题¶
新的 keystone-manage rest_last_active 命令会将用户表中 last_active_at 中的所有 NULL 值重置为当前时间,以帮助修复 Bug #2074018。在已部署很长时间的环境中,后来决定采用 [security_compliance disable_user_account_days_inactive = X 选项时,运行此命令可能是必要的。有关详细信息,请参阅 Bug #2074018。
此命令的一个副作用是它会重置未使用的帐户的活动时间。未使用的帐户将保持活动状态,直到配置的天数从命令运行之日开始经过。
错误修复¶
修复了 Bug #2074018:更改了用户模型,以始终保存用户在 last_active_at 中的最后一次活动日期。在此更改之前,只有在设置了 [security_compliance] disable_user_account_days_inactive 选项时,才会更新 last_active_at 字段。如果您的部署受到此错误的影响,则必须在设置 disable_user_account_days_inactive 选项之前运行 keystone-manage reset_last_active。
应用程序凭据在创建时也将包含用户角色所暗示的所有内容。