如何将 ldap 用户提升为管理员角色?

如何将 ldap 用户提升为管理员角色?

我正在做这个项目来集中来自 openldap 的身份验证,我遇到了以下问题:现在我的 ldap 用户分配给 sudo 组(命令'id'),因此我可以从命令终端执行所有操作,但是在用户帐户框(桌面屏幕右上角)中,它显示我的 ldap 用户的标准角色,每次 ldap 用户更改密码时,他们都应该输入管理员的密码,但 ldap 用户不知道其密码。

可以将 ldap 用户提升为管理员角色吗?有任何脚本方法吗?我有 500 多个 ldap 用户身份验证。

答案1

您无需具有任何管理角色即可在 ldap 中更改自己的密码。能够使用您自己的凭据进行身份验证就足够了。

Jere 是一个脚本,您可以使用它来允许用户更改 ldap 服务器上的密码。它还强制用户使用长度至少为 8 个字符的密码。正确的方法当然是使用 ppolicy(密码策略覆盖)在 ldap 服务器上强制执行此更改,因为任何读取脚本或从 shell 中调用 ldappasswd 的用户都可以轻松覆盖它

#!/bin/bash
# a simple yet precise script to allow users to set their own ldap password

stty -echo
pwdminlenght=8
passwordok=true
username=$(whoami)

printf "Please enter your current ldap password:\n"
read currentpassword


printf "Please enter your new password:\n"
read password

pwdlenght=$(echo ${#password})
if  [ "$pwdminlenght" -gt "$pwdlenght" ] ; then
        printf "Error, new password to short  must be > 8 characters\n"
        passwordok=false
fi  

if [ "$passwordok" = "true" ] ; then
                ldappasswd -x -w $currentpassword -s $password -D uid=$username,ou=int,dc=yourcompany,dc=org -h hostnameofyourldapserver.org
fi
stty echo

相关内容