Openldap

ldap_modify:其他(例如,特定於實現)錯誤 (80),<olcAccess> 處理程序以 1 退出

  • July 29, 2019

使用以下方式修改 Open-LDAP 配置時:

dn: olcDatabase={2}hdb,cn=config
changetype: modify
replace: olcAccess
olcAccess: {0}to *
by dn.base="gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth" write
by * none

我得到錯誤:

ldap_modify: Other (e.g., implementation specific) error (80)
   additional info: &lt;olcAccess&gt; handler exited with 1

這是因為ldif文件中的續行去掉了第一個空格,屬性被認為是:({0}to *by dn.base="gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth" writeby * none無效)

因此,在續行之前放置一個額外的空格:

dn: olcDatabase={2}hdb,cn=config
changetype: modify
replace: olcAccess
olcAccess: {0}to *
 by dn.base="gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth" write
 by * none

請記住,當您的 olcAccess 語句也有其他語法問題時,會引發此錯誤。例如,我在一個不屬於那裡的 ‘by’ 子句中使用了一個關鍵字,而不是告訴我*“你不能在這裡使用 ‘UID’”*,而是一直說“slapd:第 0 行:期待 ‘access’拿到

$$ my DN $$”。這件事的錯誤是遲鈍的。

引用自:https://serverfault.com/questions/490638