Thứ Năm, 20/08/2026, 17:00 (GMT+0)

LDAP là gì? Thành phần và cách hoạt động của giao thức mạng LDAP

Quay lại Trang chủ Blog
Trên trang này

LDAP là giao thức phổ biến giúp doanh nghiệp tìm kiếm, truy cập và quản lý thông tin người dùng, thiết bị cùng các tài nguyên trong dịch vụ thư mục. Vậy LDAP là gì, hoạt động như thế nào và có gì khác với Active Directory? Hãy cùng tìm hiểu trong bài viết dưới đây. 

LDAP là gì?

LDAP (Lightweight Directory Access Protocol) là giao thức mạng được sử dụng để tìm kiếm, truy cập và quản lý dữ liệu của các đối tượng (như tổ chức, cá nhân, thiết bị). LDAP đảm nhiệm hai vai trò cốt lõi: lưu trữ dữ liệu có cấu trúc trong thư mục LDAP và xác thực người dùng trước khi cấp quyền truy cập. 

LDAP cũng cung cấp cơ chế giao tiếp để các ứng dụng gửi, nhận và truy vấn thông tin từ dịch vụ thư mục. Trong đó, dịch vụ thư mục đóng vai trò xác định vị trí lưu trữ dữ liệu về người dùng, tổ chức, thiết bị và các tài nguyên khác trong hệ thống mạng.

LDAP được phát triển dựa trên mô hình dữ liệu và dịch vụ thư mục của X.500, nhưng được thiết kế để đơn giản hóa việc truy cập, giảm yêu cầu tài nguyên và hoạt động hiệu quả trên nền tảng TCP/IP. LDAPv2 được mô tả trong RFC 1777, còn đặc tả LDAPv3 hiện được quy định chủ yếu trong bộ RFC 4510–4519. Trên z/OS, máy chủ LDAP của IBM hỗ trợ cả giao thức LDAPv2 và LDAPv3.

ldap.jpg

Ví dụ thực tế về LDAP

LDAP có thể được sử dụng để quản lý người dùng, thiết bị và quyền truy cập trong doanh nghiệp, chẳng hạn:

  • Quản lý nhân viên CNTT: Trưởng bộ phận có thể cấp hoặc thu hồi tài khoản, quản lý thiết bị và kiểm soát quyền truy cập mạng.
  • Phân quyền sử dụng phần mềm: Doanh nghiệp chỉ cho phép nhân viên thuộc nhóm thiết kế được quyền truy cập Adobe Photoshop.
  • Chia sẻ máy in: Mọi nhân viên trong mạng nội bộ đều có thể sử dụng máy in chung của văn phòng.

So sánh LDAP và Active Directory 

LDAP và Active Directory thường được sử dụng cùng nhau nhưng không phải là một khái niệm. LDAP là giao thức dùng để truy cập và truy vấn dữ liệu trong dịch vụ thư mục, còn Active Directory là dịch vụ thư mục của Microsoft, chịu trách nhiệm lưu trữ và quản lý thông tin về người dùng, máy tính, nhóm cùng các tài nguyên trong mạng. 

LDAP có khả năng tìm kiếm đối tượng chỉ từ một lượng thông tin hạn chế, vì vậy không cần truy xuất toàn bộ thuộc tính được lưu trữ trong Active Directory. Điều này giúp quá trình tìm kiếm và trao đổi dữ liệu trở nên nhanh chóng, thuận tiện hơn.

Có thể hình dung Active Directory giống như một thư viện lớn chứa rất nhiều sách và thông tin chi tiết. LDAP đóng vai trò như một thủ thư giàu kinh nghiệm, tiếp nhận yêu cầu, tìm đúng tài liệu trong thư viện và trả về những thông tin mà người dùng cần.

Tiêu chí

LDAP

Active Directory

Bản chấtGiao thức truy cập dịch vụ thư mụcDịch vụ thư mục do Microsoft phát triển
Tên đầy đủLightweight Directory Access ProtocolActive Directory
Chức năng chínhTìm kiếm, truy vấn và trao đổi dữ liệu thư mụcLưu trữ, quản lý và xác thực người dùng, máy tính, nhóm
Phạm vi sử dụngHoạt động với nhiều dịch vụ thư mục khác nhauChủ yếu được triển khai trong môi trường Microsoft
Dữ liệuTruy xuất các thuộc tính cần thiết của đối tượngLưu trữ nhiều thuộc tính chi tiết về từng đối tượng
Đối tượng quản lýMiền, người dùng, nhóm và các bản ghi thư mụcNgười dùng, máy tính, nhóm, chính sách và tài nguyên mạng
Vai trò xác thựcHỗ trợ ứng dụng gửi yêu cầu xác thực đến dịch vụ thư mụcTrực tiếp kiểm tra và xác thực người dùng hoặc máy tính
Giao thức mạngHoạt động trên TCP/IPHỗ trợ LDAP cùng nhiều giao thức và cơ chế khác

Quy trình xác thực LDAP

Điều gì kích hoạt một truy vấn LDAP và quy trình này hoạt động như thế nào?

Quy trình xác thực LDAP hoạt động theo mô hình client-server và gồm các thành phần chính sau:

  • Directory System Agent (DSA): Máy chủ chạy LDAP trong hệ thống mạng.
  • Directory User Agent (DUA): Đóng vai trò client để truy cập DSA, chẳng hạn như máy tính của người dùng.
  • Distinguished Name (DN): Tên phân biệt chứa đường dẫn trong cây thông tin thư mục (Directory Information Tree – DIT), giúp LDAP xác định vị trí cần truy cập. Ví dụ: cn=Susan, ou=users, o=Company.
  • Relative Distinguished Name (RDN): Từng thành phần trong đường dẫn DN. Ví dụ: cn=Susan.
  • Application Programming Interface (API): Giao diện cho phép một sản phẩm hoặc dịch vụ giao tiếp với các sản phẩm, dịch vụ khác mà không cần biết chi tiết cách chúng được triển khai.

Quy trình bắt đầu khi người dùng cố gắng truy cập một chương trình client hỗ trợ LDAP trên máy tính, chẳng hạn như ứng dụng email doanh nghiệp. Với LDAPv3, người dùng thường được xác thực theo một trong hai phương thức: xác thực đơn giản, chẳng hạn đăng nhập một lần (SSO) bằng thông tin tài khoản, hoặc xác thực SASL, trong đó LDAP Server được liên kết với một chương trình như Kerberos.

Khi người dùng đăng nhập, hệ thống gửi yêu cầu xác thực DN được gán cho tài khoản đó. DN được chuyển qua API của client hoặc dịch vụ khởi chạy DSA.

Client sau đó tự động thiết lập kết nối Bind với DSA. LDAP sử dụng DN để tìm kiếm đối tượng hoặc nhóm đối tượng tương ứng trong các bản ghi của cơ sở dữ liệu LDAP.

ldap.jpg

Các RDN trong DN đóng vai trò rất quan trọng ở giai đoạn này vì chúng xác định từng bước trong quá trình LDAP di chuyển qua cây DIT để tìm đúng đối tượng. Nếu đường dẫn phía hệ thống thiếu một RDN liên kết, kết quả tìm kiếm có thể bị xác định là không hợp lệ.

Trong trường hợp này, đối tượng mà LDAP tìm kiếm là tài khoản của người dùng, ví dụ cn=Susan. LDAP chỉ có thể xác thực người dùng nếu tài khoản trong thư mục có uid và userPassword trùng khớp. Các nhóm người dùng cũng được xác định là những đối tượng trong thư mục LDAP.

Sau khi nhận được kết quả xác thực hợp lệ hoặc không hợp lệ, client sẽ ngắt kết nối khỏi LDAP Server. Người dùng được xác thực thành công có thể truy cập API cùng các dịch vụ liên quan, bao gồm tệp tin cần thiết, thông tin người dùng và dữ liệu ứng dụng khác, dựa trên quyền do quản trị viên hệ thống cấp.

Các thành phần chính của LDAP

LDAP sử dụng cấu trúc cây thông tin thư mục (Directory Information Tree – DIT) để tổ chức và tìm kiếm dữ liệu. Nhờ cấu trúc phân cấp này, LDAP có thể nhanh chóng xác định vị trí của người dùng, nhóm hoặc tài nguyên trong hệ thống thư mục.

Hiểu rõ các thành phần trong DIT giúp quản trị viên dễ dàng điều hướng LDAP Server, xây dựng truy vấn và quản lý dữ liệu hiệu quả hơn.

Directory Information Tree (DIT)

DIT là cấu trúc dạng cây dùng để tổ chức các bản ghi trong thư mục LDAP. Mỗi bản ghi được gọi là một entry và được sắp xếp theo từng cấp từ tổng quát đến chi tiết.

Một cây thư mục LDAP có thể bắt đầu từ tên miền hoặc tổ chức, sau đó phân nhánh thành các đơn vị tổ chức, nhóm và tài khoản người dùng.

Ví dụ:

o=Company
├── ou=groups
│   └── cn=developers
└── ou=users
    └── cn=Susan

Domain Component (dc)

Domain Component, viết tắt là dc, được sử dụng để biểu diễn từng thành phần trong tên miền của tổ chức.

Ví dụ, tên miền example.com có thể được biểu diễn trong LDAP như sau:

dc=example,dc=com

Các thành phần dc thường nằm ở cấp cao trong cây thư mục, giúp xác định phạm vi tên miền mà LDAP đang quản lý.

Organization Name (o)

Organization Name, viết tắt là o, đại diện cho tên của một tổ chức trong thư mục LDAP.

Ví dụ:

o=Company

Trong một số cấu trúc thư mục, o có thể đóng vai trò là điểm bắt đầu để LDAP tìm kiếm các đơn vị tổ chức, người dùng hoặc nhóm trực thuộc doanh nghiệp.

Organizational Unit (ou)

Organizational Unit, viết tắt là ou, được sử dụng để phân chia dữ liệu theo phòng ban, bộ phận hoặc nhóm chức năng.

Các giá trị phổ biến gồm:

ou=users
ou=groups
ou=developers

Mỗi ou có thể chứa nhiều tài khoản người dùng, nhóm hoặc các đơn vị tổ chức nhỏ hơn. Cách phân chia này giúp doanh nghiệp quản lý dữ liệu rõ ràng và dễ tìm kiếm hơn.

Common Name (cn)

Common Name, viết tắt là cn, dùng để xác định tên của một đối tượng cụ thể trong thư mục LDAP, chẳng hạn người dùng hoặc nhóm.

Ví dụ:

cn=Susan
cn=developers

Trong đó, cn=Susan có thể đại diện cho tài khoản của người dùng Susan, còn cn=developers đại diện cho một nhóm lập trình viên.

Distinguished Name (DN)

Distinguished Name là tên đầy đủ dùng để xác định duy nhất vị trí của một entry trong cây DIT.

Ví dụ:

cn=Susan,ou=users,o=Company

DN hoạt động giống như một đường dẫn, giúp LDAP biết chính xác tài khoản Susan nằm trong đơn vị users của tổ chức Company.

Mỗi thành phần trong DN được gọi là Relative Distinguished Name (RDN). Trong ví dụ trên, cn=Susan, ou=users và o=Company đều là các RDN.

Thuộc tính và giá trị trong LDAP

Mỗi entry trong LDAP chứa nhiều thuộc tính và giá trị mô tả đối tượng. Các thuộc tính này tương tự các trường thông tin trong danh bạ, chẳng hạn tên, số điện thoại, địa chỉ hoặc email.

Ví dụ, một tài khoản người dùng có thể chứa:

cn: Susan
uid: susan
mail: susan@example.com
userPassword: ********

Trong đó, cn, uid, mail và userPassword là các thuộc tính. Susan, susan và địa chỉ email là những giá trị tương ứng.

ObjectClass và LDAP Schema

LDAP Schema quy định loại dữ liệu, thuộc tính và cấu trúc mà một entry có thể sử dụng. Trong đó, ObjectClass xác định một entry đại diện cho loại đối tượng nào.

Một số ObjectClass thường gặp gồm:

  • person: Đại diện cho một cá nhân.
  • organizationalPerson: Đại diện cho một người trong tổ chức.
  • groupOfUniqueNames: Đại diện cho một nhóm người dùng.

Nhờ schema và ObjectClass, LDAP có thể bảo đảm dữ liệu được lưu trữ theo cấu trúc thống nhất và đúng định dạng.

Cách LDAP xác định thành viên trong nhóm

Trong một nhóm như cn=developers, LDAP có thể sử dụng thuộc tính uniqueMember để tham chiếu đến DN của từng thành viên.

Ví dụ:

uniqueMember=cn=Susan,ou=users,o=Company

Giá trị này cho biết tài khoản Susan thuộc nhóm developers và xác định chính xác vị trí của tài khoản trong cây thư mục.

Tại sao nên sử dụng LDAP?

Trong doanh nghiệp, quản trị viên thường phải quản lý số lượng lớn tài khoản người dùng, nhóm và quyền truy cập. LDAP giúp tập trung dữ liệu danh tính trong một hệ thống thư mục thống nhất, từ đó đơn giản hóa việc xác thực và quản lý người dùng.

Một số lợi ích nổi bật của LDAP gồm:

  • Quản lý tập trung thông tin người dùng và nhóm.
  • Tiết kiệm thời gian tạo, chỉnh sửa và kiểm soát tài khoản.
  • Hỗ trợ xác thực cho nhiều ứng dụng và dịch vụ.
  • Dễ dàng phân quyền truy cập theo vai trò.
  • Giúp người dùng truy cập email, mạng nội bộ và tài nguyên doanh nghiệp bằng cùng một hệ thống thông tin.
ldap-2.jpg

Lưu ý trước khi triển khai LDAP

Trước khi triển khai LDAP, doanh nghiệp cần cân nhắc:

  • Dung lượng dữ liệu: Xác định số lượng tài khoản, nhóm và thuộc tính cần lưu trữ để lựa chọn hệ thống LDAP có khả năng đáp ứng.
  • Tần suất truy cập: Đánh giá mức độ thường xuyên người dùng cần truy cập email, mạng nội bộ hoặc các ứng dụng doanh nghiệp.
  • Cách tổ chức dữ liệu: Kiểm tra xem cấu trúc cây DIT có phù hợp với mô hình phòng ban, nhóm và tài nguyên của doanh nghiệp hay không.
  • Khả năng tích hợp: Xác định các ứng dụng, nền tảng và dịch vụ có hỗ trợ LDAP.

LDAP thường được sử dụng cùng Microsoft Active Directory, OpenLDAP và Red Hat Directory Server. Giao thức này cũng có thể hỗ trợ xác thực và quản lý quyền truy cập trong hệ thống API, Docker, Kubernetes và mô hình kiểm soát truy cập dựa trên vai trò (Role-Based Access Control – RBAC).

Hy vọng bài viết đã giúp bạn hiểu rõ LDAP là gì, cách giao thức này xác thực người dùng và tổ chức dữ liệu trong dịch vụ thư mục. Việc nắm vững cấu trúc và cơ chế hoạt động của LDAP sẽ giúp doanh nghiệp triển khai hệ thống quản lý danh tính, tài khoản và quyền truy cập hiệu quả hơn.  

#Network
#Network
Sovereign Cloud không chỉ là đặt máy chủ trong nước. Với bối cảnh pháp lý dữ liệu mới tại Việt Nam, đây đang trở thành bài toán hạ tầng quan trọng cho doanh nghiệp Việt và doanh nghiệp nước ngoài hoạt động tại Việt Nam
Sovereign Cloud - Đám mây chủ quyền là gì? Và vì sao doanh nghiệp hoạt động tại Việt Nam nên quan tâm từ bây giờ?
Tiếp tục đọc