ロード時にOpenLDAPパスワードポリシーオーバーライドエラー

ロード時にOpenLDAPパスワードポリシーオーバーライドエラー

パスワードポリシーオーバーレイをロードしようとすると、次のエラーが発生します。

ldapadd  -Wx -D "cn=Manager,cn=config"  -f overlay.ldif 
Enter LDAP Password: 
adding new entry "olcOverlay=ppolicy,olcDatabase={0}bdb,cn=config"
ldap_add: No such object (32)
    matched DN: cn=config

ファイルの内容は次のとおりです。

dn: olcOverlay=ppolicy,olcDatabase={0}bdb,cn=config
olcOverlay: ppolicy
objectClass: olcOverlayConfig
objectClass: olcPPolicyConfig
olcPPolicyDefault: cn=default,ou=Policies,dc=site,dc=com
olcPPolicyHashCleartext: TRUE
olcPPolicyUseLockout: FALSE

私が見つけたログから:

config_add_internal: DN="olcOverlay=ppolicy,olcDatabase={0}bdb,cn=config" not child of DN="cn=config"

私はCentOS 6.3とopenldap-servers-2.4.23-26.el6_3.2.x86_64を使用しています。

ベストアンサー1

cn=configOpenLDAPデータベースの一部のレコードは、数値プレフィックス(など)を使用{0}します{1}。したがって、データベースの内容を変更するには、cn=config正しい識別名:レコードパス(DN)を使用する必要があります。 OpenLDAPで使用される場合、cn=config最初のolcDatabaseエントリは通常構成データベース自体(olcDatabase={0}config,cn=config)です。私の特定のシステムでは、私のプライマリデータベースはolcDatabase={1}hdb,cn=config

変更する必要があるDNがわからない場合は、知っているolcDatabase唯一の方法はそのDNを検索して結果を確認することです。


この数字(ビット)は2つの目的に{0}使用されます。

  1. 同じ名前の複数の項目を持つことができます。
    2つのolcDatabase=bdbデータベースがあり、同じDNを持つ2つのエントリを持つことができないため、問題がある可能性があります。
  2. 彼らは注文を受け入れます。
    LDAP プロトコルは順序に興味がありません。ただし、注文を許可するためにRDNにプレフィックスを追加できます{X}。この特別な場合にデータベースを注文する必要がある理由はわかりません。ただし、他の主なユースケースもありますcn=schema,cn=config。たとえば、cn=schemaスキーマが以前のスキーマの属性に依存するオブジェクトクラスを定義できます。したがって、シナリオは順次ロードする必要があります。

おすすめ記事