4.13. Identity Management

对身份管理术语的变化

红帽承诺使用适当的语言。相关详情请参考 使开源包含更多

在身份管理中,计划中的术语变化包括:

  • 使用 block list 替换 blacklist
  • 使用 allow list 替换 whitelist
  • 使用 secondary 替换 slave
  • master 会根据上下文被替换为其他更适当的术语:

    • 使用 IdM server 替换 IdM master
    • 使用 CA renewal server 替换 CA renewal master
    • 使用 CRL publisher server 替换 CRL master
    • 使用 multi-supplier 替换 multi-master

(JIRA:RHELPLAN-73418)

dsidm 实用程序支持重命名和移动条目

在这个版本中,您可以使用 dsidm 实用程序重命名和移动目录服务器中的用户、组、POSIX 组、角色和组织单元(OU)。有关详情和示例,请参阅目录服务器管理指南中的 重命名用户、组、POSIX 组和 OU 部分。

(BZ#1859218)

删除 IdM 中的子 CA

在这个版本中,如果您运行 ipa ca-del 命令且没有禁用 Sub-CA,则错误表示无法删除 Sub-CA,且必须禁用它。首先运行 ipa ca-disable 命令,以禁用 Sub-CA,然后使用 ipa ca-del 命令将其删除。

请注意,您无法禁用或删除 IdM CA。

(JIRA:RHELPLAN-63081)

IdM 现在支持新的 Ansible 管理角色和模块

RHEL 8.4 提供 Ansible 模块,用于自动管理 Identity Management(IdM)中的基于角色的访问控制(RBAC)、备份和恢复 IdM 服务器的 Ansible 角色,以及用于位置管理的一个 Ansible 模块:

  • 您可以使用 ipapermission 模块在 IdM RBAC 中创建、修改和删除权限和权限成员。
  • 您可以使用 ipaprivilege 模块在 IdM RBAC 中创建、修改和删除特权和特权成员。
  • 您可以使用 iparole 模块在 IdM RBAC 中创建、修改和删除角色和角色成员。
  • 您可以使用 ipadelegation 模块来委派 IdM RBAC 中用户的权限。
  • 您可以使用 ipaselfservice 模块在 IdM 中创建、修改和删除自助服务访问规则。
  • 您可以使用 ipabackup 角色在本地或控制节点中创建、复制和删除 IdM 服务器备份和恢复 IdM 服务器。
  • 您可以使用 ipalocation 模块来确保主机的物理位置或不存在,例如其数据中心机架。

(JIRA:RHELPLAN-72660)

FIPS 模式中的 IdM 现在支持使用 AD 的跨林信任

在这个版本中,管理员可以在启用了 FIPS 模式的 IdM 域和 Active Directory(AD)域间建立跨林信任。请注意,在 IdM 中启用了 FIPS 模式时,您无法使用共享 secret 建立信任,请参阅 FIPS 合规性

(JIRA:RHELPLAN-58629)

AD 用户现在可以使用 UPN 后缀从属到已知的 UPN 后缀登录到 IdM

在以前的版本中, Active Directory(AD)用户无法使用通用 Principal Name(UPN)(例如,sub1.ad-example.com),它是已知 UPN 后缀(例如 ad-example.com)的子域登录到 Identity Management(IdM),因为内部 Samba 进程将子域过滤为任何 Top 级别名称(TLN)的副本。在这个版本中,如果被从属到已知的 UPN 后缀,会测试 UPN 来验证 UPN。现在,用户可以在上述场景中使用下级 UPN 后缀登录。

(BZ#1891056)

IdM 现在支持新的密码策略选项

在这个版本中,Identity Management(IdM)支持额外的 libpwquality 库选项:

--maxrepeat
指定序列中相同字符的最大数量。
--maxsequence
指定单例字符序列的最大长度 (abcd)。
--dictcheck
检查密码是否为字典里的单词。
--usercheck
检查密码是否包含用户名。

如果设置了任何新密码策略选项,则密码的最小长度为 6 个字符,无论 --minlength 选项的值为何。新密码策略设置仅应用到新密码。

在使用 RHEL 7 和 RHEL 8 服务器的混合环境中,新的密码策略设置仅在在 RHEL 8.4 及更新版本上运行的服务器中强制实施。如果用户登录到 IdM 客户端,并且 IdM 客户端与在 RHEL 8.3 或更早版本上运行的 IdM 服务器通信,则系统管理员设置的新密码策略要求不会被应用。为确保行为一致,请将所有服务器升级或更新至 RHEL 8.4 及更新的版本。

(BZ#1340463)

改进了 Active Directory 站点发现过程

SSSD 服务现在发现 Active Directory 站点与无连接 LDAP(CLDAP)的并行发现,以便在某些域控制器无法访问时加快站点发现速度。在以前的版本中,站点发现会按顺序执行,如果无法访问域控制器,则最终会发生超时,SSSD 会离线。

(BZ#1819012)

关闭 nsslapd-nagle 的默认值来提高吞吐量

在以前的版本中,cn=config 条目中的 nsslapd-nagle 参数默认启用。因此,Directory 服务器执行大量 setsocketopt 系统调用,这会减慢服务器的速度。这个版本将默认值 nsslapd-nagle 更改为 off。因此,Directory 服务器会执行较低数量的 setsocketopt 系统调用,并可每秒处理更高数量的操作。

(BZ#1996076)

在 sssd.conf 文件的 [domain] 部分启用或禁用 SSSD 域

在这个版本中,您可以通过修改 sssd.conf 文件中的对应 [domain] 部分来启用或禁用 SSSD 域。

在以前的版本中,如果您的 SSSD 配置包含独立域,您仍需要修改 sssd.conf 文件的 [sssd] 部分中的 domains 选项。此更新允许您在域配置中将 enabled= 选项设置为 true 或 false。

  • enabled 选项设置为 true 可启用域,即使它没有在 sssd.conf 文件的 [sssd] 部分的 domains 选项下列出。
  • enabled 选项设置为 false 可禁用域,即使它在 sssd.conf 文件的 [sssd] 部分的 domains 选项下列出。
  • 如果没有设置 enabled 选项,则会使用 sssd.conf[sssd] 部分中的 domains 选项中的配置。

(BZ#1884196)

添加了手动控制最大离线超时的选项

offline_timeout 周期决定 SSSD 重新在线尝试之间的时间递增。在以前的版本中,这个间隔的最大可能值被硬编码为 3600 秒,这足以满足一般使用要求,但在快速或慢速变化环境中可能会造成问题。

在这个版本中,增加了 offline_timeout_max 选项来手动控制每个间隔的最大时长,可让您更加灵活地在 SSSD 中跟踪服务器行为。

请注意,您应该根据 offline_timeout 参数值设置这个值。0 代表禁用递增行为。

(BZ#1884213)

支持 SSSD 会话记录配置中 scope=all exclude_usersexclude_groups

Red Hat Enterprise 8.4 现在为大量组或用户列表提供了新的 SSSD 选项来定义会话记录:

  1. exclude_users

    记录中排除的以逗号分隔的用户列表,仅适用于 scope=all 配置选项。

  2. exclude_groups

    以逗号分隔的组列表,其中的成员应不包括在记录中。仅适用于 scope=all 配置选项。

如需更多信息,请参阅 sssd-session-recording man page。

(BZ#1784459)

samba rebase 到版本 4.13.2

samba 软件包升级至上游版本 4.13.2,它提供了大量的程序错误修复和增强:

  • 为避免出现允许未经身份验证的用户使用 netlogon 协议接管域的安全问题,请确保您的 Samba 服务器使用 server schannel 参数的默认值(yes)。要验证,请使用 testparm -v | grep 'server schannel' 命令。详情请参阅 CVE-2020-1472
  • Samba "wide link" 功能已转换为 VFS 模块
  • 以 PDC 或 BDC 身份运行 Samba 已被弃用
  • 现在,您可以在启用了 FIPS 模式的 RHEL 上使用 Samba。由于 FIPS 模式的限制:

    • 您不能使用 NT LAN Manager(NTLM)验证,因为 RC4 密码会被阻断。
    • 在 FIPS 模式中,Samba 客户端实用程序在 AES 密码中使用 Kerberos 验证。
    • 您只能在 Active Directory(AD)或带有使用 AES 密码的 Kerberos 身份验证的 Active Directory(AD)或 Red Hat Identity Management(IdM)环境中使用 Samba 作为域成员。请注意,红帽继续支持后台使用的主域控制器(PDC)功能 IdM。
  • 用于不安全的验证方法的以下参数现已弃用,它们仅适用于服务器消息块版本 1(SMB1)协议:

    • client plaintext auth
    • client NTLMv2 auth
    • client lanman auth
    • client use spnego
  • 解决了 GlusterFS write-behind 性能转换器中与 Samba 一起使用的问题,以防止数据崩溃。
  • 现在,支持的最小运行时版本是 Python 3.6。
  • 已弃用的 ldap ssl ads 参数已被删除。

smbdnmbd 或者 winbind 服务启动时,Samba 会自动更新它的 tdb 数据库文件。在启动 Samba 前备份数据库文件。请注意,红帽不支持降级 tdb 数据库文件。

有关显著变化的更多信息,请在更新前阅读上游发行注记

(BZ#1878109)

新的 GSSAPI PAM 模块,可以使用 SSSD 进行免密码 sudo 身份验证

使用新的 pam_sss_gss.so Pluggable 身份验证模块(PAM),您可以配置系统安全服务守护进程(SSSD)来使用通用安全服务应用程序编程界面(GSSAPI)向 PAM 感知服务验证用户。

例如,您可以使用这个模块通过 Kerberos ticket 进行无密码 sudo 验证。为了在 IdM 环境中获得额外的安全性,您可以将 SSSD 配置为只为用户问题单中带有特定验证指示符的用户授予访问权限,比如使用智能卡或一次性密码验证的用户。

如需更多信息,请参阅授予 IdM 客户端上 IdM 用户的 sudo 访问权限

(BZ#1893698)

目录服务器 rebase 到版本 1.4.3.16

389-ds-base 软件包已升级到上游版本 1.4.3.16,它提供了一些程序错误修正和增强。如需显著变化的完整列表,请在更新前阅读上游发行注记:

(BZ#1862529)

目录服务器现在在 RESULT 条目中记录工作和操作时间

在这个版本中,Directory 服务器会在 /var/log/dirsrv/slapd-<instance_name>/access 文件中的 RESULT 条目中记录两个额外时间值:

  • wtime 值指示操作从工作队列移到 worker 线程所需的时间。
  • optime 值显示在 worker 线程启动操作后实际操作完成的时间。

新值提供有关 Directory 服务器如何处理负载和进程操作的附加信息。

详情请查看 Red Hat Directory Server Configuration、命令和文件参考中的访问日志参考部分。

BZ#1850275

目录服务器现在可以拒绝内部非索引搜索

cn=<database_name>,cn=ldbm database,cn=plugins,cn=config 项增加了 nsslapd-require-internalop-index 参数来拒绝内部未进行索引的搜索。当插件修改数据时,它在数据库中有一个写入锁定。在大型数据库中,如果插件随后执行未索引的搜索,该插件有时会使用所有的有数据库锁定,这会破坏数据库,或者导致服务器变得无响应。要避免这个问题,现在您可以通过启用 sslapd-require-internalop-index 参数来拒绝内部未索引的搜索。

BZ#1851975