Tìm hiểu về LDAP (Lightweight Directory Access Protocol)

14 3 1
Tìm hiểu về LDAP (Lightweight Directory Access Protocol)

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

I. Giới thiệu về LDAP: 1. Các khái niệm cơ bản: Thư mục (Directory): là nơi dùng để chứa và cho phép thực hiện các thao tác truy xuất thông tin. LDAP: + LDAP (Lightweight Directory Access Protocol) là một chuẩn mở rộng cho giao thức truy cập thư mục, hay là một ngôn ngữ để LDAP client và severs sử dụng để giao tiếp với nhau. + LDAP là một giao thức “lightweight” có nghĩa là đây là một giao thức có tính hiệu quả, đơn giản và dễ dàng để cài đặt. trong khi chúng sử dụng các hàm ở mức cao. Điều này trái ngược với giao thức “heavyweight” như là giao thức truy cập thư mục X.500 (DAP). Giao thức này sử dụng các phương thức mã hoá quá phức tạp. + LDAP sử dụng các tập các phương thức đơn giản và là một giao thức thuộc tầng ứng dụng. Ngoài vai trò như là một thủ tục mạng, LDAP còn định nghĩa ra bốn mô hình, các mô hình này cho phép linh động trong việc sắp đặt các thư mục: Mô hình LDAP Information định nghĩa ra các loại dữ liệu mà bạn cần đặt vào thư mục. Mô hình LDAP Naming định nghĩa ra cách bạn sắp xếp và tham chiếu đến thư mục. Mô hình LDAP Functional định nghĩa cách mà bạn truy cập và cập nhật thông tin trong thư mục của bạn. Mô hình LDAP Security định nghĩa ra cách thông tin trong trong thư mục của bạn được bảo vệ tránh các truy cập không được phép. Ngoài các mô hình ra LDAP còn định nghĩa ra khuôn dạng để trao đổi dữ liệu LDIF (LDAP Data Interchange Format), ở dạng thức văn bản dùng để mô tả thông tin về thư mục. LDIF còn có thể mô tả một tập hợp các thư mục hay các cập nhật có thể được áp dụng trên thư mục.

ĐỀ TÀI: TÌM HIỂU VỀ LDAP HÀ NỘI, 01/2024 TÌM HIỂU VỀ LDAP I Giới thiệu LDAP: Các khái niệm bản: - Thư mục (Directory): nơi dùng để chứa cho phép thực thao tác truy xuất thông tin - LDAP: + LDAP (Lightweight Directory Access Protocol) chuẩn mở rộng cho giao thức truy cập thư mục, ngôn ngữ để LDAP client severs sử dụng để giao tiếp với + LDAP giao thức “lightweight” có nghĩa là giao thức có tính hiệu quả, đơn giản dễ dàng để cài đặt chúng sử dụng hàm mức cao Điều trái ngược với giao thức “heavyweight” giao thức truy cập thư mục X.500 (DAP) Giao thức sử dụng phương thức mã hoá phức tạp + LDAP sử dụng tập phương thức đơn giản giao thức thuộc tầng ứng dụng Ngồi vai trị thủ tục mạng, LDAP cịn định nghĩa bốn mơ hình, mơ hình cho phép linh động việc đặt thư mục: - Mơ hình LDAP Information - định nghĩa loại liệu mà bạn cần đặt vào thư mục - Mơ hình LDAP Naming - định nghĩa cách bạn xếp tham chiếu đến thư mục - Mô hình LDAP Functional - định nghĩa cách mà bạn truy cập cập nhật thông tin thư mục bạn - Mơ hình LDAP Security - định nghĩa cách thông tin trong thư mục bạn bảo vệ tránh truy cập không phép Ngồi mơ hình LDAP cịn định nghĩa khuôn dạng để trao đổi liệu LDIF (LDAP Data Interchange Format), dạng thức văn dùng để mô tả thông tin thư mục LDIF cịn mơ tả tập hợp thư mục hay cập nhật áp dụng thư mục II Phương thức hoạt động LDAP: Một giao thức client/sever: - Là mơ hình giao thức chương trình client chạy máy tính gởi yêu cầu qua mạng đến cho máy tính khác chạy chương trình sever (phục vụ), chương trình nhận lấy yêu cầu thực sau trả lại kết cho chương trình client Ví dụ giao thức client/server khác giao thức truyền siêu văn (Hypertext transfer protocol) viết tắt HTTP, giao thức có ứng dụng rộng rãi phục vụ trang web giao thức Internet Message Access Protocol (IMAP), giao thức sử dụng để truy cập đến thư thông báo điện tử LDAP Là giao thức hướng thông điệp: - Do client sever giao tiếp thông qua thông điệp, Client tạo thông điệp (LDAP message) chứa yêu cầu gởi đến cho server Server nhận thơng điệp sử lý yêu cầu client sau gởi trả cho client thông điệp LDAP Ví dụ: LDAP client muốn tìm kiếm thư mục, client tạo LDAP tìm kiếm gởi thơng điệp cho server Sever tìm sở liệu gởi kết cho client thông điệp LDAP Hình 1: Thao tác tìm kiếm Nếu client tìm kiếm thư mục nhiều kết tìm thấy, kết gởi đến client nhiều thông điệp Hình 2: Những thông điệp Client gửi cho Server Do giao thức LDAP giao thức thông điệp nên, client phép phát nhiều thông điệp yêu cầu đồng thời lúc Trong LDAP, message ID dùng để phân biệt yêu cầu client kết trả server Hình 3: Nhiều kết tìm kiếm trả Các thao tác giao thức LDAP: LDAP có thao tác bản, chia thành nhóm thao tác chính: - Thao tác thẩm tra (interrogation): search, compare Hai thao tác cho phép thực thẩm tra thư mục - Thao tác cập nhật (update): add, delete, modify, modify DN (rename) Những thao tác cho phép thực cập nhật thông tin thư mục - Thao tác xác thực điều kiển (authentiaction and control): bind, unbind, abandon Thao tác bind cho phép client tự xác định với thư mục, thao tác cung cấp xác nhận xác thực chứng thư; unbind cho phép client huỷ bỏ phân đoạn làm việc hành; cuối thao tác abandon cho phép client thao tác mà kết client khơng cịn quan tâm đến Mơ hình kết nối Client – Server: Sau một tiến trình hoạt động trao đổi LDAP client/ server: Hình 4: Mơ hình kết nối client server LDAP client server thực theo bước sau: Client mở kết nối TCP đến LDAP server thực thao tác bind Thao tác bind bao gồm tên directory entry, uỷ nhiệm thư sử dụng trình xác thực, uỷ nhiệm thư thơng thường pasword chứng điện tử dùng để xác thực client Sau thư mục có xác định thao tác bind, kết thao tác bind trả cho client Client phát yêu cầu tìm kiếm Server thực sử lý trả kết cho client Server thực sử lý trả kết cho client Server gởi thông điệp kết thúc việc tìm kiếm Client phát yêu cầu unbind, với yêu cầu server biết client muốn huỷ bỏ kết nối Server đóng kết nối III Các mơ hình LDAP: LDAP định nghĩa mơ hình gồm có LDAP informmation, LDAP Naming, LDAP Functional, LDAP Security LDAP Information Model: Mơ hình LDAP Information định nghĩa kiểu liệu thành phần thơng tin mà bạn chứa thư mục Hay nói LDAP Information mơ tả cách xây dựng khối liệu mà sử dụng để tạo thư mục Thành phần thông tin thư mục gọi entry tập hợp chứa thông tin đối tượng (Object) Thường thơng tin entry mô tả đối tượng thật thông tin người, qui định bắt buộc với mơ hình Ví dụ thư mục Hình 5: Cây thư mục với entry thành phần LDAP Data Interchange Format (LDIF): - LDAP định nghĩa LDIF dạng văn để mô tả thông tin thư mục LDIF mơ tả tập hợp entry thư mục tập hợp cập nhật lên thư mục liệu thư mục trao đổi cho cách dùng LDIF - Một entry thư mục dang LDIF: dn:uid=bjensen,dc=airius,dc=com objectClass: top objectClass: person objectClass: organizationalPerson objectClass: inetOrgPerson cn: Barbara Jensen cn: Babs Jensen sn: Jensen mail:bjensen@airius.com telephoneNumber:+14085551212 description: A big sailing fan LDAP Naming Model: Mơ hình LDAP Naming định nghĩa cách để xếp tham chiếu đến liệu Hay nói mơ hình mơ tả cách xếp entry chúng vào cấu trúc có logical, mơ hình LDAP Naming cách để tham chiếu đến entry thư mục nằm cấu trúc Mơ hình LDAP Naming cho phép đặt liệu vào thư mục theo cách mà dễ dàng quản lý Ví dụ tạo container (khái niệm vật thể chứa đựng) chứa tất entry mô tả người tổ chức, container chứa tất group bạn, bạn thiết kế entry theo mơ hình phân cấp theo cấu trúc tổ chức bạn Việc thiết kế tốt cần phải có nghiên cứu thoả đáng Hình 6: Cây thư mục LDAP Hình 7: Một phần thư mục LDAP với entry chứa thông tin Mơ hình LDAP Function: Mơ hình LDAP Functional chứa tập thao tác chia thành nhóm Thao tác thẩm tra (interrogation) cho phép bạn search thư mục nhận liệu từ thư mục Thao tác cập nhật (update): add, delete, rename thay đổi entry thư mục Thao tác xác thực điều khiển (authentiaction and control) cho phép client xác định đến cho thư mục điều kiển hoạt động phiên kết nối Với version giao thức LDAP ngồi nhóm thao tác trên, cịn có thao tác LDAP extended, thao tác cho phép giao thức LDAP sau mở rộng cách có tổ chức khơng làm thay đổi đến giao thức Mơ hình LDAP Security: Vấn đề cuối mơ hình LDAP việc bảo vệ thông tin thư mục khỏi truy cập không phép Khi thực thao tác bind tên DN hay client người vơ danh với user có số quyền thao tác entry thư mục Và quyền entry chấp nhận tất điều gọi truy cập điều kiển (access control) Hiện LDAP chưa định nghĩa mơ hình Access Control, điều kiển truy cập thiết lập nhà quản trị hệ thống server software IV Sử dụng LDAP: Ứng dụng xác thực dùng LDAP: Dùng LDAP xác thực user đăng nhập vào hệ thống qua chương trình thẩm tra, chương trình thực sau chương trình thẩm tra tạo đại diện để xác thực với LDAP thơng qua (1) sau so sánh mật user A với thông tin chứa thư mục Nếu so sánh thành cơng user A xác thực thành công Hình 8: Xác thực dùng LDAP - Xác thực người dùng không định danh (Anonymous Authentication): trình đăng nhập vào thư mục mà không yêu cầu cung cấp tên đăng nhập mật Đây phương pháp đăng nhập phổ biến thường sử dụng ứng dụng client - Xác thực người dùng (Simple Authentication): tên đăng nhập DN gửi với mật dạng văn thường (clear text) đến máy chủ LDAP Sau đó, máy chủ LDAP kiểm tra mật cách so sánh với giá trị thuộc tính userPassword với giá trị thuộc tính định nghĩa trước entry cho DN tương ứng Khi mật lưu dạng hàm băm (mã hoá), máy chủ LDAP sử dụng hàm băm tương ứng để biến đổi mật mà người dùng cung cấp sau so sánh giá trị với giá trị mật mã hoá từ trước Nếu hai mật trùng nhau, trình xác thực client thành công Đối với xác thực thông qua SSL/TLS: LDAP thực việc mã hoá liệu trước kết nối thiết lập Điều đảm bảo tất thông tin người dùng bảo vệ suốt phiên làm việc Một số ứng dụng sử dụng giao thức LDAP: Một chương trình mail thực dùng chứng điện tử chứa thư mục server LDAP để ký, cách gởi yêu cầu tìm kiếm cho LDAP server , LDAP server gởi lại cho client chứng điện tử sau chương trình mail dùng chứng điện tử để ký gởi cho Message sever Nhưng góc độ người dùng tất q trình hoạt động cách tự động người dùng quan tâm Hình 9: Mơ hình đơn giản lưu trữ Message server sử dụng LDAP directory để thực kiểm tra mail Khi mail đến từ địa chỉ, messeage server tìm kiếm địa email thư mục LDAP server lúc Message server biết hợp thư người sử dụng có tồn nhận thư Hình 10: Dùng LDAP để quản lý thư V Demo xác thực LDAP: Cài đặt môi trường: - Hệ điều hành: Ubuntu 20.04 - Java Development Kit (JDK): OpenJDK 11 - Keycloak: Keycloak 19.0.3 - OpenLDAP - Apache Directory Studio: để quản lý OpenLDAP - Python: python 3.10 Sau cấu hình xong môi trường ta truy cập vào trang web: => Xác thực thành công

Ngày đăng: 06/03/2024, 19:58

Tài liệu cùng người dùng

Tài liệu liên quan