Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.36 MB, 188 trang )
Giao thức LDAP
GVHD: TS. Lưu Thanh Trà
Ta thấy tập tin LDIF có lưu hai giá trị cho thuộc tính telephoneNumber.Một số thuộc tính chỉ có
thể mang một giá trị duy nhất .Việc một thuộc tính đơn trị hoặc đa trị phụ thuộc vào định nghĩa
trong các server máy chủ. Các thuộc tính đơn trị bao thường gặp như tên quốc gia gia (c), tên
hiển thị (DisplayName), hoặc ID của user (uidNumber).
ý nghĩa giá trị các thuộc tính của objectClass
Tất cả các mục trong một thư mục LDAP luôn có một thuộc tính objectClass, và thuộc tính này
phải có ít nhất một giá trị. Mỗi giá trị objectClass có tác dụng như một khuôn mẫu để các dữ liệu
được lưu trữ trong mục. Nó định nghĩa một tập hợp các thuộc tính phải có mặt trong mục và các
thuộc tính tùy chọn có thể có hoặc không
Ta có thể xem theo ví dụ trên, giá trị của objectClass là organizationalUnit được quy định như sau:
Từ khóa MUST: các thuộc tính bắt buộc
Từ khóa MAY:các thuộc tính tùy chọn cho các đối tượng
Từ khóa SUP: chỉ ra đối tượng cha.Đối tượng con có đầy đủ các thuộc tính ,cú pháp của đối
tượng cha
3. Sự xác thực
Tại sao sự xác thực lại cần thiết trong một thư mục LDAP? Hãy nhớ rằng LDAP là một giao
thức dựa trên hướng kết nối. Quá trình xác thực được sử dụng để thiết lập các đặc quyền của user
cho mỗi phiên. Tất cả các việc như tìm kiếm, truy vấn, ... được thay đổi tùy theo mức độ được
cấp cho của người sử dụng
Chương 2
7
Lê Tiến Cường – Nguyễn Minh Đức
Lê Thạch Giang- Hoàng Ngọc Hưng
Giao thức LDAP
GVHD: TS. Lưu Thanh Trà
dn: cn=gerald carter,ou=people,dc=plainjoe,dc=org
objectClass: person
cn: gerald carter
sn: carter
telephoneNumber: 555-1234
userPassword: {MD5}Xr4ilOzQ4PCOq3aQ0qbuaQ= =
Ta đã thêm một thuộc tính có tên là UserPassword. Thuộc tính này lưu trữ một thông tin đại diện cần thiết
để xác thực user. Tiền tố (trong trường hợp này, {MD5}) mô tả cách các thông tin được mã hóa. RFC
2307 định nghĩa các thuật toán mã hóa như {CRYPT},{MD5},{SHA},{SSHA}.
Mỗi user được cấp username và password.Trong trường hợp trên username là DN(cn=gerald
carter,ou=people,dc=plainjoe,dc=org) và password sử dụng là giá trị trong userPassword
Trong LDAP còn định nghĩa một vài phương thức xác nhận khách như:
Anonymous Authentication: Xác định nặc danh
Simple Authentication: xác thực đơn giản
Simple Authentication over SSL/TLS:xác thực đơn giản thông qua SSL/TLS
Simple Authentication and Security Layer (SASL):xác thực đơn giản và lớp bảo vệ
Anonymous Authentication:cho phép truy nhập với DN và password trống
Simple Authentication:tên đăng nhập DN và password sẽ được gửi đến LDAP server.Server sẽ so
sánh với giá trị có trong hệ thống (server sẽ thực hiện các chuyển đổi nếu cần thiết).Tuy nhiên
phương thức này có điểm yếu là thông tin gửi đến cho server ở dạng clear text.
Simple Authentication over SSL/TLS:mã hóa các thông tin gửi đi đến server.Có 2 cách sử dụng
phương thức này:
LDAP over SSL(LDAPS-tcp/636): được hỗ trợ bởi nhiều server LDAP.
LDAP over TLS(tcp/port389):cho phép server mã hóa hoặc không mã hóa các phiên.
Simple Authentication and Security Layer (SASL):
Một phương thức mở rộng được định nghĩa trong RFC 2222,được dùng để thêm các thông tin
xác thực trong việc kết nối định hướng.
RFC 2222 định nghĩa một vài phương thức xác thực cho SASL
•
•
•
Kerberos v4 (KERBEROS_V4)
The Generic Security Service Application Program Interface, Version 2 (GSSAPI), được định
nghĩa trong RFC 2078
The S/Key mechanism (SKEY)
Chương 2
8
Lê Tiến Cường – Nguyễn Minh Đức
Lê Thạch Giang- Hoàng Ngọc Hưng
Giao thức LDAP
•
•
GVHD: TS. Lưu Thanh Trà
The External (EXTERNAL) mechanism
4. Phân phối thư mục
Trong phân phối thư mục,các host khác nhau chứa các phần khác nhau của cây thư mục
Hình trên lớp people ou được lưu trong lớp riêng lẻ. Lý do để thực hiện phân phối thư mục:
a.Hiệu suất
Khi một phần của cây thư mục được sử dụng nhiều thì ta nên đặt phần này trên máy chủ của
chính nó, điều này cho phép client truy cập vào subtrees còn lại nhanh hơn.
b.Vị trí địa lý
Thường thì các client không truy cập vào một nhánh đặc biệt của thư mục trong một vị trí do ta
nên đặt phần này của thư mục gần hơn với các client yêu cầu sử dụng.
c.Ranh giới hành chính
Đôi khi dễ dàng hơn khi ủy quyền kiểm soát một nhánh thư mục bằng cách đặt các nhánh trên
một máy chủ điều khiển bởi nhóm chịu trách nhiệm cho các thông tin trong đó. Bằng cách này,
người điều khiển máy chủ có thể có quyền truy cập đầy đủ , sao chép và sao lưu mà không can
thiệp với một máy chủ công cộng.
Để chia cây thư mục giữa 2 server,ta phải cấu hình link giữa server chính và server giữ cây thư
mục people ou.Ta cần thiết lập superior knowledge reference link và subordinate knowledge
reference link
Subordinate( cấp dưới) knowledge link( hay reference) :kết nối 1 node trong cây thư mục đến
naming context của server khác.Thông thường naming context của server thứ 2 là sự tiếp tục của
thư mục.
Chương 2
9
Lê Tiến Cường – Nguyễn Minh Đức
Lê Thạch Giang- Hoàng Ngọc Hưng
Giao thức LDAP
GVHD: TS. Lưu Thanh Trà
Trong ví dụ trên, people ou trong cây thư mục chính không có thư mục con do query of entry
ou=people,dc=plainjoe,dc=org nằm trong server 2.Lúc này entry (lối vào) ou=people,dc=plainjoe,dc=org
trên server thư mục chính chứa thông tin tham khảo tới server thư mục thực sự chứa nó.
Hình ảnh thể hiện định nghĩa của lớp đối tượng referral trong RFC 3296
Lớp trên chỉ chứa 1 thuộc tính đó là ref.Thuộc tính này chứa file URI chỉ ra host chứa cây.Định
dạng của URI như sau:
ldap://[host:port]/[/dn[?attribute][?scope][?filter][?extensions]]
khi đó entry mới của people ou như sau :
# LDIF listing for the entry ou=people,dc=plainjoe,dc=org
dn: ou=people,dc=plainjoe,dc=org
objectClass: referral
ref: ldap://server2.plainjoe.org/ou=people,dc=plainjoe,dc=org
cấu hình superior knowledge reference :từ server 2 trở về thư mục chính ,hoạt động này phụ
thuộc vào vendor
Chương 2
10
Lê Tiến Cường – Nguyễn Minh Đức
Lê Thạch Giang- Hoàng Ngọc Hưng