slapd.d中的模式添加:未知指令<objectclass:>

时间:2015-04-28 16:35:17

标签: ldap schema openldap

我正在尝试在Ubuntu 14.04上设置openLDAP LDAP,我想在动态ldap conf中添加自定义架构。据我所知,我必须在我的ldap动态添加一个ldif条目,在DN下:cn = myCustomSchema,cn = schema,cn = config。

我想做的是:

  1. 创建架构文件
  2. 创建链接到我的架构文件的.conf文件
  3. 将架构转换为ldif文件,这要归功于slaptest或slapcat命令以及.conf文件
  4. 将.ldif添加到LDAP
  5. 我无法通过第3点,因为slaptest和slapcat命令都返回:line xxx:后端信息和数据库定义之外的未知指令。 我已经读了一千次我的架构文件,但我无法找到错误。我也无法找到有关此类错误的任何有用信息。

    以下是我的架构文件的一部分:

    attributeTypes: (1.2.840.113556.1.8000.2554.48931.2232.50796
        NAME 'altitudeEntity'
        EQUALITY caseIgnoreMatch
        ORDERING caseIgnoreOrderingMatch
        SUBSTR caseIgnoreSubstringsMatch
        SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
        SINGLE-VALUE USAGE userApplications )
    
    attributeTypes: ( 1.2.840.113556.1.8000.17728.40464.13370.25661.2712
        NAME 'descriptionEntity'
        EQUALITY caseIgnoreMatch
        ORDERING caseIgnoreOrderingMatch
        SUBSTR caseIgnoreSubstringsMatch
        SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
        SINGLE-VALUE
        USAGE userApplications )
    .
    . other attributes
    .
     ObjectClass: ( 1.2.840.113556.45669.16975.37105.36062
         NAME 'principalClass'
         SUP top STRUCTURAL
         MUST RDNFragment
         MAY ( altitudeEntity $ descriptionEntity $ ...) )
    .
    . other classes extending principalClass (SUP principalClass)
    .
    

    此外:仅保留属性时,命令会成功并生成ldif文件。错误总是在第一个objectClass上。

    感谢您的帮助:)

1 个答案:

答案 0 :(得分:2)

今天早上发现错误,我想我昨天累了。

正确的语法是objectclass ( OID ...没有&#34; :&#34;。我还将attributeTypes: ( OID...更改为attributetype ( OID...,一切正常。