openldap创建只读账号

需求背景:

公司内部各服务,以及开发测试环境的服务都需要对接ldap认证,目前只有一个可以读写的ldap管理员账号,不够安全。所以单独创建一个只读的ldap账号。

操作步骤:

1、创建ldap只读账号

添加只读账号:
#密码
LDAP_READONLY_USER_PW='密码'
#Base DN
LDAP_BASE_DN='dc=cnblog,dc=com'
cat <<EOF > ./readOnly.ldif
dn: cn=readonly,${LDAP_BASE_DN}
cn: readonly
objectClass: simpleSecurityObject
objectClass: organizationalRole
description: LDAP read only user
userPassword: ${LDAP_READONLY_USER_PW}
EOF

ldapadd -x -D cn=Manager,dc=okcoin,dc=com -w '密码' -f ./readOnly.ldif

2、配置只读账号权限

LDAP_BASE_DN='dc=cnblog,dc=com'
cat <<EOF > readonly-user-acl.ldif
dn: olcDatabase={2}hdb,cn=config
changetype: modify
delete: olcAccess
-
add: olcAccess
olcAccess: {0}to attrs=userPassword,shadowLastChange 
 by dn="cn=Manager,dc=cnblog,dc=com" write 
 by anonymous auth 
 by self write 
 by dn="cn=readonly,dc=cnblog,dc=com" read 
 by * none
olcAccess: {1}to dn.base="" by * read
olcAccess: {2}to * by dn="cn=Manager,dc=cnblog,dc=com" write by * read
EOF

ldapmodify -Y EXTERNAL -H ldapi:/// -f readonly-user-acl.ldif
注意:

1)格式中换行要注意空格。

2)使用ldapmodify命令修改优点是服务无影响,可以正常提供服务,比直接修改配置文件灵活。

原文地址:https://www.cnblogs.com/husbandmen/p/13307381.html