Hiện nay, LDAP đã trở thành khái niệm quen thuộc trong lĩnh vực công nghệ nói chung. Nhờ LDAP mà hỗ trợ cho những người quản trị máy chủ hội nghị có thể dễ dàng quản lý các tài khoản điểm cầu. Vậy cụ thể LDAP là gì? Cùng mình tìm hiểu ngay trong bài viết này!
LDAP là gì?
LDAP (Lightweight Directory Access Protocol) là một giao thức truy cập cơ sở dữ liệu phân tán, được sử dụng để quản lý và truy xuất thông tin trong mạng máy tính. Được phát triển bởi Tim Howes, Steve Kille, và Wengyik Yeong, LDAP được mô tả trong các RFC (Request for Comments) của IETF (Internet Engineering Task Force).
Giao thức này thường được sử dụng để quản lý thông tin về người dùng, thiết bị và tài nguyên trong hệ thống mạng. Các thông tin này thường được lưu trữ trong một thư mục (directory) và được tổ chức theo cấu trúc cây dữ liệu. LDAP ứng dụng mô hình client-server, các yêu cầu để truy xuất thông tin gửi từ các ứng dụng client đến những máy chủ LDAP để thực hiện các hoạt động truy xuất, thêm mới, sửa đổi hoặc xóa thông tin trong thư mục. Giao thức này hỗ trợ được nhiều phương thức truy cập dữ liệu khác nhau, bao gồm cả TCP/IP, X.500 và HTTP.
LDAP là một công nghệ phổ biến trong các môi trường doanh nghiệp và mạng lớn để quản lý và truy xuất thông tin về người dùng và tài nguyên. Nó cũng hoạt động như một giải pháp quản lý danh tính và truy cập (IAM), hỗ trợ xác thực người dùng, bao gồm Kerberos, đăng nhập một lần (SSO), bảo mật xác thực (SASL) và cổng bảo mật (SSL).
Hoạt động của LDAP
Như đã nói ở trên, LDAP hoạt động theo mô hình client-server. Một hay nhiều LDAP server sẽ chứa các thông tin về cây thư mục (Directory Infomation Tree -DIT). LDAP client sẽ kết nối đến server và gửi request, server sẽ phản hồi lại bằng chính nó hoặc trỏ tới LDAP server khác để client lấy được thông tin. Thứ tự khi kết nối theo từng bước dưới đây:
- Connect (Kết nối với LDAP): Client sẽ mở kết nối tới LDAP server.
- Bind (kiểu kết nối – ẩn danh hoặc đăng nhập): Client gửi đii các thông tin xác thực.
- Search (Tìm kiếm): Client gửi đi yêu cầu tìm kiếm.
- Interpert search (xử lý tìm kiếm): Server thực hiện việc xử lý tìm kiếm.
- Result (kết quả): Máy chủ phản hồi lại kết quả với Client.
- Unbind: Client gửi đi yêu cầu đóng kết nối với server.
- Close connection (đóng kết nối): Đóng kết nối từ server.
Database backend của LDAP
Slapd là một “LDAP Directory Server” chạy trên nhiều platform khác nhau. Ngoài ra, bạn còn có thể sử dụng để cung cấp dịch vụ cho riêng mình. Những tính năng mà slapd cung cấp như:
- LDAPv3: Slapd hỗ trợ LDAP cả cho địa chỉ IPv4 và IPv6, Unix IPC.
- Simple Authentication and Security Layer: Slapd cung cấp hỗ trợ mạnh mẽ cho việc xác thực và bảo mật dữ liệu dịch vụ thông qua SASL.
- Transport Layer Security: Slapd có hỗ trợ TLS và SSL.
Hiện tại, SLAPD sử dụng BDB và HDB để lưu trữ các dữ liệu. Với BDB sử dụng Oracle Berkeley DB để lưu trữ các dữ liệu, và được đề nghị sử dụng để làm database backend chính cho những SLAPD thông thường. HDB cũng giống với BDB, tuy nhiên nó sử dụng database phân cấp nên sẽ hỗ trợ cơ sở dữ liệu dạng cây. Với hiện nay thì HDB được mặc định cấu hình trong SLAPD.
Mô hình của LDAP
LDAP được chia làm 4 mô hình sau:
- LDAP information: Xác định cấu trúc và đặc điểm của các thông tin trong thư mục.
- LDAP Naming: Xác định cách tham chiếu và tổ chức của thông tin.
- LDAP Functional: Định nghĩa cách mà các bạn truy cập và cập nhật thông tin trong thư mục của bạn.
- LDAP Security: Định nghĩa ra cách thông tin trong thư mục của bạn được bảo vệ để tránh các truy cập không được cho phép.
Làm thế nào để xác thực, ủy quyền và kiểm soát truy cập LDAP hoạt động?
LDAP chia sẻ rất tốt cho những thứ như kiểm soát truy cập và ủy quyền. Chỉ người dùng được cấp phép mới có quyền truy cập vào các ứng dụng. Vì vậy khi ai đó cố gắng đăng nhập, hãy đảm bảo họ ở trong nhóm thích hợp trước khi cấp quyền truy cập,…
Quá trình để một người có quyền truy cập vào tất cả các bản ghi tương đối đơn giản. Một phiên bắt đầu với một máy khách liên kết với máy chủ LDAP (DSA, Directory System Agent – Tác nhân hệ thống thư mục), cổng mặc định 389:
- Sau đó, khách hàng sẽ gửi một yêu cầu hoạt động (thường là một yêu cầu tìm kiếm hoặc so sánh) đến máy chủ, yêu cầu một tập hợp thông tin cụ thể.
- Tiếp theo, máy chủ xử lý truy vấn này và cung cấp phản hồi.
- Máy khách nhận phản hồi, hủy liên kết và sau đó xử lý dữ liệu.
LDAP và Active Directory
Lightweight Directory Access Protocol là giao thức Exchange Server sử dụng để giao tiếp với Active Directory. Active Directory là một dịch vụ thư mục để quản lý miền, người dùng và tài nguyên phân tán như các đối tượng dành cho hệ điều hành Windows. Mục đích của một dịch vụ thư mục là quản lý các miền, đối tượng và cho phép người dùng nào có quyền truy cập vào từng tài nguyên.
Active Directory và nhiều dịch vụ khác có sẵn trên Windows Server 10. Chẳng hạn như các dịch vụ quản lý tên miền, Lightweight Directory, chứng chỉ, liên kết và quyền. Mỗi dịch vụ đều là một phần của Active Directory để mở rộng tính năng quản lý thư mục. Active Directory có thông tin tài khoản của tất cả người dùng trên hệ thống mạng. Nó xem mỗi tài khoản người dùng như một đối tượng, mỗi có nhiều thuộc tính. Thuộc tính này có thể là tên, họ hoặc địa chỉ email của người dùng.
Tất cả thông tin này được nằm trong một cơ sở dữ liệu khổng lồ, phức tạp trên bộ điều khiển miền – Active Directory. Với nhiệm vụ là trích xuất thông tin ở định dạng có thể sử dụng được, đây cũng là là công việc chính của của LDAP. Giao thức này sử dụng một truy vấn dựa trên chuỗi tương đối đơn giản để trích xuất thông tin từ Active Directory.
LDAP có thể lưu trữ và trích xuất các đối tượng như tên người dùng và mật khẩu trong Active Directory, đồng thời chia sẻ dữ liệu đối tượng đó trên toàn mạng, hoạt động này diễn ra hoàn toàn ở phía sau. Người dùng cuối thông thường sẽ không bao giờ phải thực hiện truy vấn LDAP theo cách thủ công, vì Outlook đã hỗ trợ LDAP và biết cách xử lý tất cả các truy vấn cần thiết.
Câu hỏi thường gặp
Thuật ngữ “Lightweight” trong tên LDAP có ý nghĩa gì?
Thuật ngữ “Lightweight” trong tên LDAP (Lightweight Directory Access Protocol) có nghĩa là giao thức truy cập thư mục nhẹ. So sánh với các giao thức truy cập thư mục trước đây như X.500 Directory Access Protocol (DAP), LDAP được thiết kế với mục tiêu đơn giản hóa và hiệu quả hơn.
LDAP có vai trò gì trong việc triển khai single sign-on (SSO) cho người dùng truy cập nhiều ứng dụng khác nhau?
LDAP đóng vai trò trung tâm trong việc triển khai Single Sign-On (SSO), cho phép người dùng truy cập nhiều ứng dụng khác nhau chỉ với một lần xác thực. Dưới đây là các chức năng chính của LDAP trong hệ thống SSO:
– Lưu trữ thông tin người dùng tập trung.
– Xác thực người dùng.
– Ủy quyền truy cập.
– Tích hợp với nhiều ứng dụng.
– Cải thiện bảo mật.
– Nâng cao trải nghiệm người dùng.
– Giảm thiểu gánh nặng cho quản trị viên.
Active Directory có thay thế hoàn toàn cho LDAP không?
Active Directory (AD) và Lightweight Directory Access Protocol (LDAP) là hai công nghệ liên quan đến việc quản lý danh mục (directory service) trong hệ thống mạng, tuy nhiên chúng có những điểm khác biệt và vai trò riêng biệt:
– Active Directory: Lựa chọn tốt nhất cho môi trường Windows, quản lý danh mục tập trung và tích hợp với các dịch vụ Windows.
– LDAP: Lựa chọn linh hoạt hơn cho môi trường đa nền tảng, cần sự tùy chỉnh cao và tích hợp với các dịch vụ phi Windows.
Lựa chọn công nghệ phù hợp phụ thuộc vào nhu cầu cụ thể của môi trường mạng và yêu cầu quản lý danh mục của bạn.
Lời kết
Bài viết trên đã cung cấp cho bạn những thông tin tổng quan nhất về LDAP. Hãy vận dụng giao thức này một cách hiệu quả vào công việc và bạn sẽ thấy sử dụng LDAP thực sự hữu ích. Nếu có bất kỳ thắc mắc nào hãy để lại bình luận ngay bên dưới, mình sẽ giải đáp nhanh nhất.