Tin tức và phân tích của tất cả các thiết bị di động

Từ tên phân biệt đến xác thực người dùng

Các tổ chức thường dựa vào Giao thức truy cập thư mục nhẹ (LDAP) để quản lý, lưu trữ và xác thực người dùng quan trọng.

Tuy nhiên, nó có thể đánh lừa người dùng, khiến họ nhầm lẫn với Active Directory.

Trong bài viết này, chúng ta sẽ xem xét LDAP, mục đích và cách thức hoạt động của nó. Tiếp theo, chúng ta sẽ xem xét các tính năng chính, cấu trúc thư mục và khả năng tổ chức dữ liệu của nó. Cuối cùng, chúng ta sẽ thảo luận về tầm quan trọng của LDAP trong việc quản lý dịch vụ thư mục và xác thực người dùng.

LDAP là gì?

LDAP là viết tắt của Giao thức truy cập thư mục nhẹ. Nó là một giao thức mở quản lý xác thực người dùng an toàn đối với các thư mục cục bộ. Hơn nữa, nó là một giao thức ứng dụng trung lập với nhà cung cấp, khiến nó trở nên linh hoạt và phổ biến, đặc biệt là trong các dịch vụ thư mục phân tán trên Internet.

LDAP cho phép các ứng dụng truy vấn thông tin người dùng một cách hiệu quả. Điều này có nghĩa là nó có thể hoạt động theo nhiều cách khác nhau trong các dịch vụ cơ sở hạ tầng CNTT, bao gồm dịch vụ email, ủy quyền, quản lý giấy phép và quản lý người dùng.

Tuy nhiên, không nên nhầm lẫn với Active Directory – một tập hợp các dịch vụ/cơ sở dữ liệu được các công ty sử dụng để tổ chức, truy cập và bảo mật tài nguyên CNTT. Về cơ bản, dịch vụ thư mục cho phép các tổ chức lưu trữ dữ liệu mang tính mô tả, tĩnh và có giá trị.

Từ quan điểm kỹ thuật, LDAP được quy cho toàn bộ quá trình biểu diễn dữ liệu trong dịch vụ thư mục. Nó đảm bảo rằng người dùng có thể lấy dữ liệu theo những cách được xác định trước. Điều này có nghĩa là LDAP cho phép các tổ chức tạo các mục nhập dữ liệu trong các dịch vụ thư mục bằng các công cụ của nó.

Do đó, trong Active Directory, LDAP cũng cung cấp cách tạo các mục nhập dựa trên các nguyên hàm khác nhau được trình bày.

Tóm lại, LDAP là:

  • giao thức truyền thông
  • Nó là một giao thức ứng dụng mở, trung lập với nhà cung cấp
  • Một giao thức phần mềm lưu trữ và sắp xếp dữ liệu để có thể dễ dàng tìm kiếm.
  • Hoạt động với các thư mục địa phương
  • Nó hoạt động với Active Directory chứa dữ liệu tĩnh, mô tả và có giá trị
  • Nó không phải là một giao thức mới và được phát hành vào năm 2003

Mục đích của nó là gì?

Mục đích của LDAP xoay quanh hai điều:

  • Lưu trữ dữ liệu trong thư mục LDAP/Active
  • Xác thực quyền truy cập của người dùng vào thư mục này
  • Cho phép ứng dụng sử dụng ngôn ngữ giao tiếp thích hợp để gửi và nhận dữ liệu từ các dịch vụ thư mục.

Nói cách khác, nó hoạt động như một giao thức truyền thông không chỉ cho phép xác thực và ủy quyền mà còn tổ chức dữ liệu theo cách có thể tìm kiếm được. Sử dụng LDAP, các tổ chức có thể lưu trữ thông tin quan trọng về người dùng và tài sản CNTT, bao gồm cả thông tin xác thực của người dùng. Ngoài ra, nó có thể cung cấp quyền truy cập an toàn bằng cách cho phép quản trị viên chủ động đặt quy tắc truy cập.

LDAP hoạt động như thế nào?

Cốt lõi của LDAP là kiến ​​trúc client-server.

Do đó, khi xác thực LDAP diễn ra, nó tuân theo mô hình máy khách-máy chủ. Và tại thời điểm đó, những người chơi chính là:

  • Tác nhân hệ thống thư mục (DSA): Một máy chủ chạy LDAP trên một mạng cụ thể.
  • Tên phân biệt (DN) chứa đường dẫn điều hướng Cây thông tin thư mục (DIT).
  • Tác nhân người dùng thư mục (DUA): DUA được sử dụng để truy cập DSA với tư cách là máy khách.
  • Tên phân biệt tương đối (RDN): RDN xác định từng thành phần trong đường dẫn DN.
  • Giao diện lập trình ứng dụng (API): Chúng tôi có các API giao tiếp giữa các dịch vụ và sản phẩm.

Trong quy trình xác thực LDAP, khi người dùng khởi chạy chương trình máy khách LDAP, chẳng hạn như ứng dụng email, quản trị viên có thể định cấu hình cách máy khách LDAP tương tác với các dịch vụ thư mục để xác thực. Ví dụ: nó có thể sử dụng bất kỳ phương thức nào trong hai phương thức xác thực người dùng có sẵn:

Cần phải xác thực DN khi cố gắng đăng nhập. Khi quá trình LDAP bắt đầu, nó sẽ gán máy khách cho Tác nhân hệ thống thư mục (DSA), tác nhân này sử dụng tên phân biệt để tìm kiếm các bản ghi trùng khớp trong cơ sở dữ liệu.

Tên phân biệt tương đối (RDN) trong tên phân biệt là một phần quan trọng của tìm kiếm LDAP vì nó được sử dụng ở mọi bước của quy trình tìm kiếm cây thông tin thư mục (DIT).

Nếu tìm kiếm thành công, UID và mật khẩu phù hợp của người dùng sẽ được khớp để xác thực người dùng. Nếu không, nó sẽ trả về kết quả không hợp lệ.

Cuối cùng, máy khách ngắt kết nối khỏi máy chủ LDAP. Sau khi hoàn tất việc này, người dùng được xác thực có thể giao tiếp với các dịch vụ thông qua API. Điều này có nghĩa là nó có thể xem tất cả thông tin được lưu trữ – hạn chế duy nhất là các quyền được cấp.

Nếu bạn muốn đọc thêm về cách hoạt động của LDAP, hãy xem bài viết xuất bản năm 2003 của Greg Vaneder và Mark Wahl. Nếu bạn muốn biết thêm về hoạt động tìm kiếm LDAP, hãy xem Hoạt động tìm kiếm LDAP.

Các tính năng chính của LDAP

Các tính năng chính của LDAP có thể được tóm tắt dưới đây:

  • Xác thực phiên người dùng: Có thể được sử dụng để xác thực phiên của người dùng với dịch vụ cơ sở dữ liệu như Active Directory.
  • Nhiều loại hoạt động khác nhau: Nó cũng có thể thực hiện các hoạt động cơ sở dữ liệu máy chủ thư mục, bao gồm
    • phiên ràng buộc
    • xóa các mục LDAP
    • Sửa đổi các mục hiện có
    • Tìm kiếm và so sánh các mục.
    • Bỏ các yêu cầu
    • Giải quyết các hoạt động
  • Nhẹ: LDAP nhẹ, dẫn đến sử dụng ít tài nguyên hệ thống và mạng.
  • Độc lập với nhà cung cấp và giao thức: LDAP cũng độc lập với nhà cung cấp và giao thức. Điều này có nghĩa là nó hoạt động với bất kỳ nhà cung cấp/giải pháp/giao thức nào. Ví dụ: bạn có thể sử dụng LDAP qua TCP/IP hoặc X.25. Tuy nhiên, phiên bản LDAP mới nhất, LDAPv3, sử dụng TCP/IP.
  • Cấu trúc thư mục: LDAP sử dụng cấu trúc cây thư mục để lưu trữ và truy cập tài nguyên trong cơ sở dữ liệu thư mục. Mối quan hệ cha-con có nghĩa là tìm kiếm và tải xuống nhanh hơn.
  • Tiêu chuẩn hóa: LDAP được tiêu chuẩn hóa bởi IETF (Lực lượng đặc nhiệm kỹ thuật Internet). Tiêu chuẩn hóa đảm bảo LDAP hoạt động giữa các nhà cung cấp.
  • Bảo mật: LDAP được bảo mật. Nó đạt được sự bảo mật bằng cách sử dụng giao thức TLS an toàn trong lớp TCP/IP. Nó cũng có thể sử dụng ổ cắm bảo mật (SSL) để mã hóa, giải mã và truyền thông tin từ xa với tính toàn vẹn và bảo mật hoàn toàn.
  • Sao chép: LDAP cũng hỗ trợ sao chép nhiều trang. Nó cung cấp khả năng dự phòng dữ liệu và đảm bảo tính sẵn có của dữ liệu trong trường hợp có bất kỳ lỗi nào. Nó sử dụng Syncrepl – công cụ sao chép Sync.

Cấu trúc thư mục LDAP

Thư mục LDAP có cấu trúc rõ ràng, được xác định. Điều này cho phép truy cập dữ liệu dễ dàng và nâng cao khả năng tìm kiếm nội dung của thư mục LDAP.

Vì LDAP có cấu trúc dạng cây nên nó có tính phân cấp. Và đó là lý do tại sao nó chủ yếu được ưa thích làm cây thông tin thư mục (DIT).

Các cấp độ khác nhau của cấu trúc thư mục LDAP bao gồm:

  • thư mục gốc
  • Tổ chức

Như bạn có thể thấy, thư mục LDAP có cấu trúc cây. Thư mục “root” là mục nhập cấp cao nhất chứa tất cả các mục nhập cấp thư mục khác. Bên dưới nó, bạn có (các) Quốc gia, sau đó sẽ phân nhánh thành các Tổ chức. Sau đó, nó phân nhánh thành Đơn vị tổ chức (OU) và cuối cùng thành Cá nhân và Nhóm.

Để hiểu cấu trúc thư mục LDAP, chúng ta hãy xem ví dụ sau.

 - Root (Top-level entry)
   |
   +-- Country: "dc=com" (e.g., dc=example,dc=com)
         |
         +-- Organization: "dc=example" (e.g., dc=example)
               |
               +-- Organizational Unit (OU): "ou=Users"
               |      |
               |      +-- User: "cn=Nitish Singh"
               |      |
               |      +-- User: "cn= Oliver Green"
               |
               +-- Organizational Unit (OU): "ou=Groups"
                      |
                      +-- Group: "cn=Admins"
                      |
                      +-- Group: "cn=Users"
		|
		+-- Group: “cn=Superusers”

Đơn vị gốc được xác định bởi DC, viết tắt của thuộc tính Thành phần Miền. Do đó, nếu “dc=com”, mục gốc được xác định là miền “com”.

Bạn có thể có nhiều tổ chức hoặc tên miền dưới quyền root. Nó được đại diện bởi “dc=tổ chức”. dưới tên miền “com”.

Tương tự, mỗi tổ chức có thể có một hoặc nhiều đơn vị tổ chức (OU). Người quản trị có thể sắp xếp chúng một cách hợp lý thành các phân mục. Ví dụ: bạn có thể đặt đơn vị tổ chức thành “người dùng”, “nhóm” hoặc “siêu người dùng”.

Cuối cùng, trong mỗi đơn vị tổ chức, bạn có thể xem các mục khác nhau bao gồm nhóm, thiết bị, người dùng, v.v. Trong ví dụ của chúng tôi, hai giá trị người dùng của đơn vị tổ chức là “Nitish Singh” và “Oliver Green”. Tương tự, trong Nhóm OU chúng ta có “Quản trị viên”, “Người dùng” và “Siêu người dùng”.

Cấu trúc thư mục của LDA phụ thuộc rất nhiều vào Tên phân biệt (DN) vì nó được sử dụng để xác định từng mục nhập. Điều này là do nó chứa một tên duy nhất và được sử dụng để truy xuất tên phân biệt tương đối (RDN).

Các phần tử LDAP phổ biến

Để hiểu cách tổ chức dữ liệu LDAP, chúng ta cần hiểu các phần tử LDAP phổ biến dẫn đến việc xây dựng các mục trong hệ thống LDAP.

Các thành phần cơ bản của dữ liệu LDAP bao gồm:

  • Thuộc tính:
  • Mục:
  • Cây thông tin dữ liệu

Thuộc tính

Các thuộc tính trong LDAP là các cặp khóa-giá trị. Họ lưu trữ dữ liệu trong hệ thống LDAP. Ví dụ: thuộc tính thư phải được sử dụng để lưu trữ thư trong LDAP.

Bưu kiện: [email protected]

Mục

Các mục trong hệ thống LDAP được liên kết với việc gán ý nghĩa. Các mục có thể được coi là một tập hợp các thuộc tính liên quan.

Ví dụ: dữ liệu LDIF (Định dạng trao đổi dữ liệu LDAP) sẽ trông như thế này:

dn: sn=Hogwarts, ou=wizards, dc=WizardingWorld, dc=fiction

objectclass: wizard

sn: Hogwarts

cn: Harry Potter

Cây thông tin dữ liệu

Cây thông tin dữ liệu hoặc DIT, biểu thị và truy cập dữ liệu trong hệ thống LDAP. Vì hầu hết dữ liệu được phân nhánh nên việc biểu diễn nó bằng cây là hợp lý. Điều này tương tự như một hệ thống tập tin có liên kết cha-con.

Tổ chức dữ liệu LDAP

Bây giờ chúng ta đã có ý tưởng cơ bản về các thực thể, chúng ta có thể khám phá cách tổ chức dữ liệu trong hệ thống LDAP.

Ở đây LDAP sử dụng DIT để tổ chức và cấu trúc dữ liệu. Nhưng làm thế nào để đạt được nó? Hãy thảo luận về nó dưới đây.

Để đặt các mục trong DIT có liên quan theo thứ bậc với nhau. Do đó, khi một mục mới được tạo, nó sẽ được thêm vào cấu trúc cây như một mục con của mục hiện có.

Tất cả đều bắt đầu ở đầu cây phân cấp trong DIT. Vì nó bao gồm tất cả các mục con nên nó chủ yếu được đánh dấu là một tổ chức như “dc=com hoặc example. Điều này được thực hiện bằng cách sử dụng các thành phần miền để quản lý dễ dàng. Bằng cách này, quản trị viên có thể đặt vị trí bằng l=location_name hoặc các phân khúc tổ chức như ou=tech, marketing, v.v.

Các mục sử dụng objectClass đơn vị tổ chức (OU). Điều này là do các mục có thể sử dụng nhãn thuộc tính ou=. Chúng đơn giản và cung cấp một cách tuyệt vời để phân loại và tìm kiếm thông tin trong DIT.

Sau đó đến một khái niệm quan trọng khác được gọi là tên phân biệt tương đối. Đây là tên tương đối của một phần tử tùy thuộc vào cấp độ phân cấp DIT của nó. Vì vậy, để truy cập mục nhập, bạn phải nhập các giá trị RDN của thực thể cùng với giá trị RDN của thực thể cha.

Điều này tạo ra một chuỗi giá trị RDN đi từ dưới lên trên tạo đường dẫn đến mục nhập đó. Và chuỗi giá trị RDN này được gọi là “Tên phân biệt hay DN”.

Nói cách khác, khi tạo một mục nhập, bạn phải chỉ định một tên phân biệt để LDAP biết chính xác nơi đặt tài nguyên hoặc thông tin mới. Vì vậy, RDN hoạt động như một giá trị tương đối trong khi DN thiên về đường dẫn tuyệt đối.

Ý nghĩa của LDAP

Trong phần này, chúng ta sẽ xem xét tầm quan trọng của LDAP từ hai góc độ:

  • Quản lý dịch vụ thư mục: LDAP có các phương tiện thích hợp để lưu trữ và truy cập dữ liệu thư mục LDAP. Chúng tôi đã thảo luận về chúng trong phần “Cách thức hoạt động của LDAP và các thành phần dữ liệu” và “Tổ chức”. LDAP là một cách để quản lý, lưu trữ, truy cập và bảo mật dữ liệu. Nó cũng cung cấp khả năng truy xuất thông tin hiệu quả. Ngoài ra, nó còn cung cấp khả năng mở rộng và nhân rộng.
  • Xác thực người dùng: Ngoài việc quản lý các dịch vụ thư mục, LDAP còn vượt trội trong việc xác thực và ủy quyền người dùng. Sau khi kết nối được tạo, người dùng có quyền truy cập vào các tài nguyên được lưu trữ dựa trên các quy tắc truy cập do quản trị viên đặt.

LDAP và Active Directory

Mọi người thường nhầm lẫn giữa LDAP và Active Directory. Microsoft LDAP và Active Directory phối hợp chặt chẽ với nhau để cung cấp cho các tổ chức phương tiện lưu trữ và truy nhập an toàn vào dữ liệu tổ chức giữa các phòng ban.

Vì vậy, LDAP là một giao thức trong khi Active Directory là dịch vụ thư mục lưu trữ dữ liệu tổ chức theo cấu trúc dạng cây.

LDAP hoạt động như một giao thức truyền thông để truy cập các máy chủ thư mục như Active Directory.

Ứng dụng

LDAP là giao thức chính để làm việc với các dịch vụ Active Directory. Đây là một giao thức nhẹ không bổ sung thêm bất kỳ chi phí nào cho các dịch vụ và máy chủ mà nó tương tác. Hơn nữa, tính chất mở, trung lập với nhà cung cấp và tiêu chuẩn hóa của nó có nghĩa là nó có thể dễ dàng tích hợp vào các giải pháp hiện có.

Bạn cũng có thể làm quen với xác thực đa yếu tố (MFA).