SSSD 对 AD 用户对象所需的权限?

SSSD 对 AD 用户对象所需的权限?

今天我遇到了 SSSD 的重大问题,新创建的用户无法登录。经过故障排除后,我发现问题出在 AD 用户对象安全权限上。似乎我团队中的某个人最近更改了经过身份验证的用户的权限并取消选中了读取复选框。

所以我的问题是,加入带有 SSSD 的域的 Linux 服务器使用哪个用户来验证和检索 AD 对象信息?由于已撤销已验证用户的读取权限的 OU 中的用户非常关键,我想知道 SSSD 使用哪个用户进行验证。可能是需要权限的 Linux 服务器的计算机对象吗?

奇怪的是,当我临时启用读取权限时,id 用户之后一切都正常。然后我取消选中经过身份验证的用户的读取权限,似乎一切都继续正常工作。(当然,在清空 sssd 缓存之后)欢迎对哪些用户需要哪些最低权限提出任何见解。

我们发现,实际进行身份验证的是 AD 计算机对象。授予该对象对用户的读取权限可使 id 命令检索组。问题是,id 命令至少需要哪些权限才能获取所有组?

答案1

除非您在 中指定ldap_default_bind_dn和,否则它将默认匿名绑定到指定的 LDAP 服务器以检索架构和对象。其他任何事情(例如登录)都将使用提供的凭据。ldap_default_authtoksssd.conf

答案2

经过大量研究,我们发现(正如我在问题中提到的)实际上是 Linux 服务器计算机对象在进行身份验证。将用户对象的读取权限授予计算机对象可以id工作并检索所有用户组。

但由于我们不想授予所有用户的读取权限,经过多次反复尝试,我们发现实际上只有一个强制必需权限,即Read remote access information。从选中复选框的那一刻起Read remote access information(见屏幕截图),就可以使用该ìd命令获取所有组。然后,SSSD 能够检查用户是否simple_allow_groups在 /etc/sssd/sssd.conf 中使用指令配置的组中

在此处输入图片描述

相关内容