Lỗi lớp phủ chính sách mật khẩu OpenLDAP trong khi tải


7

Tôi đang cố tải lớp phủ chính sách mật khẩu nhưng tôi gặp lỗi sau:

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

Đây là nội dung của tập tin:

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

Trong nhật ký tôi tìm thấy:

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

Tôi đang sử dụng CentOS 6.3 và openldap-server-2.4.23-26.el6_3.2.x86_64.

Câu trả lời:


3

Một số các bản ghi trong cn=configcơ sở dữ liệu của OpenLDAP sử dụng tiền tố số ( {0}, {1}, vv). Vì vậy, khi bạn đi sửa đổi một cái gì đó trong cn=configcơ sở dữ liệu, bạn phải đảm bảo rằng bạn đang sử dụng đúng DN (Tên phân biệt: đường dẫn đến bản ghi). Trong OpenLDAP khi sử dụng cn=config, mục nhập olcDatabase đầu tiên thường là cơ sở dữ liệu cấu hình ( olcDatabase={0}config,cn=config). Trên hệ thống cụ thể của tôi, cơ sở dữ liệu chính của tôi là olcDatabase={1}hdb,cn=config.

Nếu bạn không biết DN của olcDatabasebạn cần sửa đổi, cách duy nhất để biết là thực hiện tìm kiếm và xem qua kết quả.


Đối với những con số đó ( {0}bit) là gì, chúng phục vụ 2 mục đích.

  1. Chúng cho phép bạn có nhiều mục cùng tên.
    Bạn có thể có 2 olcDatabase=bdbcơ sở dữ liệu, trong đó bạn có vấn đề vì bạn không thể có 2 mục với cùng một DN.
  2. Họ cho phép đặt hàng.
    Giao thức LDAP không quan tâm đến trật tự. Nhưng bạn có thể đặt tiền tố RDN với {X}để cho phép đặt hàng. Trong trường hợp cụ thể này, tôi không thể nghĩ ra bất kỳ lý do nào ngoài lý do tại sao cơ sở dữ liệu cần phải được đặt hàng. Nhưng có những trường hợp sử dụng quan trọng khác, chẳng hạn như trong cn=schema,cn=config. Trong cn=schema, một lược đồ có thể định nghĩa một lớp đối tượng phụ thuộc vào một thuộc tính từ lược đồ trước đó. Vì vậy, các chương trình phải được tải theo thứ tự.

Re: order - cơ sở dữ liệu phụ trợ trong lịch sử đã được xác định bởi chỉ số số (ẩn theo thứ tự định nghĩa của chúng) chủ yếu cho mục đích sao lưu / khôi phục. Ngoài ra, khi nhiều cơ sở dữ liệu / hậu tố được sử dụng, cấp dưới phải được xác định trước cấp trên (cha mẹ).
mr.spuratic

1

olcDatabase={0}bdb,cn=config

cần phải thay đổi thành

olcDatabase={2}bdb,cn=config


1
Cảm ơn, đó là một mẹo nhỏ, nhưng không hiểu sự khác biệt giữa {0} và {2}
user27238
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.