Atualmente, estou trabalhando na integração da autenticação LDAP em um sistema e gostaria de restringir o acesso com base no grupo LDAP. A única maneira de fazer isso é por meio de um filtro de pesquisa e, portanto, acredito que minha única opção seja o uso do atributo memberOf
em meu filtro de pesquisa. Entendo que o atributo memberOf
é um atributo operacional que pode ser criado pelo servidor para mim sempre que um novo atributo member
for criado para qualquer entrada groupOfNames
no servidor. Meu principal objetivo é poder adicionar um atributo member
a uma entrada groupOfNames
existente e ter um atributo memberOf
correspondente adicionado ao DN fornecido
Estou trabalhando no OpenLDAP versão 2.3.9. Eu sei que a versão 2.4.31 é a mais recente, mas tem uma dependência de versão do BerkeleyDB que eu não posso atualizar, por isso tenho que manter a versão 2.3.9.
Eu configurei o OpenLDAP da maneira descrita no guia do OpenLDAP e posso iniciar o servidor. Agora estou tentando adicionar memberOf
overlay ao banco de dados de configuração.
Eu adicionei o seguinte a slapd.conf:
database config
rootdn "cn=config"
rootpw secret
e criei um arquivo ldif para memberOf:
dn: cn=module,cn=config
cn: module
objectclass: olcModuleList
objectclass: top
olcmoduleload: memberof.la
olcmodulepath: "path"
dn: olcOverlay={0}memberof,olcDatabase={1}hdb,cn=config
objectClass: olcConfig
objectClass: olcMemberOf
objectClass: olcOverlayConfig
objectClass: top
olcOverlay: memberof
e estou tentando adicionar essa sobreposição usando o comando:
ldapadd -x -h "host" -p "port -D "cn=config" -f memberOf.ldif -w secret
Estou recebendo o seguinte erro:
ldapadd: Internal (implementation specific) error (80)
additional info: <olcModuleLoad> handler exited with 1
Eu tenho as seguintes perguntas:
- Podemos adicionar sobreposições em versões inferiores a 2,3?
-
Eu li que precisamos usar -y EXTERNAL
no comando ldapadd
Recebo o seguinte erro:
ldapadd: incompatible with authentication choice
Alguém pode dizer o que estou fazendo errado? Existem muitos recursos dispersos que eu tentei, mas todos acabaram com o erro oclModuleLoad
.