Kiến trúc môđun quản trị người dùng

Một phần của tài liệu Luận văn: Bảo mật trong môi trường lưới với tiếp cận hướng tác từ pptx (Trang 88 - 95)

Mô đun quản trị người dùng bao gồm các thành phần cơ bản (được thể hiện trong hình 4.2) sau:

- Thành phần Cơ sở dữ liệu: Lưu thông tin về người dùng: tên đăng nhập, tên đầy đủ, email, mật khẩu, tổ chức... và thông tin về giấy chứng nhận của người dùng.

- Thành phần Nhà chứng nhận thẩm quyền: Có tất cả những chức năng cơ bản của một Nhà chứng nhận thẩm quyền như cấp giấy chứng nhận cho người dùng, cho máy... Tuy nhiên môđun quản trị người dùng chỉ sử dụng chức năng cấp giấy chứng nhận người dùng do nó chỉ phục vụ người dùng.

- Thành phần Quản lý giấy ủy nhiệm: Tạo giấy ủy nhiệm, cung cấp giấy ủy nhiệm cho khi cần thiết, quản lý vòng đời giấy ủy nhiệm (quản lý thời hạn còn hiệu lực, làm tươi giấy ủy nhiệm). CSDL Quản lý người dùng Nhà chứng nhận thẩm quyền Xem

yêu cầu Tkhoạo tài ản

Đăng nhập Đăng ký tài khoản Giao diện cho người sử dụng Giao diện cho người quản trị

Thoát Thay thông tinđổi Thay thông tinđổi

Quản lý giấy ủy nhiệm Các chức năng quản lý người dùng cơ bản Portlet của các dịch vụ trong hệ thống Lấy giấy ủy quyền người dùng Quản lý ánh xạ người dùng Hình 4.2. Kiến trúc môđun quản trị người dùng

- Thành phần Quản lý ánh xạ người dùng: Ánh xạ người dùng lưới (đăng ký trên Portal) sang người dùng cục bộ tại mỗi nút lưới.

- Thành phần Các chức năng quản lý người dùng cơ bản: Thành

phần này được kế thừa từ môđun quản lý người dùng của Gridsphere Portal, nó thực hiện các công việc như: tạo người dùng, quản lý thông tin người dùng... Những thông tin mà nó quản lý không bao gồm các thông tin liên quan đến môi trường lưới như giấy chứng nhận, giấy ủy nhiệm...

- Thành phần Quản lý người dùng: Thành phần này là sự kết hợp của các thành phần: Các chức năng quản trị người dùng cơ bản, Nhà chứng nhận thẩm quyền, Quản lý ánh xạ người dùng, và thành phần Quản lý giấy ủy nhiệm, nó quản lý toàn bộ các thông tin liên quan tới người dùng, bao gồm cả giấy chứng nhận và giấy ủy nhiệm.

- Thành phần Giao diện cho người dùng: Giao diện cung cấp cho người dùng bình thường, qua đó người dùng có thể đăng ký tài khoản, đăng nhập vào, thoát ra khỏi hệ thống, chỉnh sửa thông tin về chính người dùng.

- Thành phần Giao diện cho người quản trị: Giao diện cho phép người quản trị có thể xem xét các yêu cầu xin đăng ký tài khoản, quyết định có chấp nhận yêu cầu xin đăng ký tài khoản hay không, và chỉnh sửa thông tin về người dùng của hệ thống.

- Thành phần Portlet của các dịch vụ trong hệ thống: Toàn bộ Portal được xây dựng dựa trên công nghệ portlet. Mỗi dịch vụ mà hệ thống cung cấp (dịch vụ thông tin, dịch vụ weka, môđun đệ trình công việc...) đều có một portlet trên Portal, đây thực chất là phần client của dịch vụ được viết theo chuẩn portlet. Người dùng sử dụng các portlet này để triệu gọi các dịch vụ chạy bên dưới. Để tương tác với các tài nguyên của hệ thống, các portlet này lấy giấy ủy nhiệm từ môđun quản trị

người dùng thông qua giao diện lập trình (API) mà môđun này cung cấp.

4.3.Thiết kế chi tiết

Phần này sẽ trình bày thiết kế các thành phần của hệ thống và sự kết hợp các thành phần này.

4.3.1.Nhà chứng nhận thẩm quyền

Globus Toolkit cung cấp sẵn một Nhà chứng nhận thẩm quyền là SimpleCA nhưng thành phần này khá đơn giản vì vậy hệ thống xây dựng một Nhà chứng nhận thẩm quyền mới bao gồm bốn thành phần chính:

- CertManager: Quản lý giấy chứng nhận của chính Nhà chứng nhận thẩm quyền (do tự Nhà chứng nhận thẩm quyền cấp cho mình), giấy chứng nhận đã cấp cho người dùng; quản lý các yêu cầu xin giấy chứng nhận và việc ký giấy chứng nhận.

- CertGenerator: Tạo yêu cầu xin giấy chứng nhận, sinh các giấy chứng nhận tự ký (dùng để làm giấy chứng nhận của Nhà chứng nhận thẩm quyền gốc).

- CertSigner: Ký yêu cầu xin giấy chứng nhận để tạo giấy chứng nhận. - GSIProperties: Quản lý các thông số liên quan tới hạ tầng bảo mật lưới

(GSI).

BKCA

CertGenerator

CertManager CertSigner GSIProperties Hình 4.3. Kiến trúc Nhà chứng nhận thẩm quyền

Các lớp chính của Nhà chứng nhận thẩm quyền: -createSubjectKeyId() -createAuthorityKeyId() -loadKeysAndSign() -signCert() +getSignedCert() +save() CertSignerImpl +createSubjectKeyId() +createAuthorityKeyId() +loadKeysAndSign() +signCert() +save() +getSignedCert() «interface» CertSigner -makeCertDN() +createCertRequest() +generateSelfSignedCertAndKey() +createX509Cert() +createX509V3Certificate() CertGeneratorImpl +makeCertDN() +createCertRequest() +generateSelfSignedCertAndKey() +createX509Cert() +createX509V3Certificate() «interface» CertGenerator +localCertsInstalled() +localCACertsInstalled() +checkCAPassword() +loadLocalCertificates() +installLocalCertificates() +saveLocalCertificates() +saveCertificates() +saveX509Cert() CertManagerImpl +localCertsInstalled() +localCACertsInstalled() +checkCAPassword() +loadLocalCertificates() +installLocalCertificates() +saveLocalCertificates() +saveCertificates() +saveX509Cert() «interface» CertManager +load() +getString() +getProperties() +installBCProvider() +getResBundle() GSIPropertiesImpl +load() +getString() +getProperties() +installBCProvider() +getResBundle() «interface» GSIProperties +usage() +longUsage() +main() BKCAImpl +usage() +longUsage() +main() «interface» BKCA Hình 4.4. Sơđồ lớp Nhà chứng nhận thẩm quyền

Trong đó các lớp CertGeneratorImpl, CertSignerImpl, CertManagerImpl, GSIPropertiesImpl, BKCAImpl tương ứng với các thành phần CertGenerator, CertSigner, CertManager, GSIProperties, BKCA trong hình 4.3.

4.3.2.Thành phần Quản lý giấy ủy nhiệm

Như đã giới thiệu ở trên, thành phần Quản lý giấy ủy nhiệm thực hiện chức năng tạo giấy ủy nhiệm, quản lý vòng đời giấy ủy nhiệm, cấp giấy ủy nhiệm cho các thành phần khác trong hệ thống.

Hình 4.5. Sơđồ lớp thành phần Quản lý giấy ủy nhiệm

4.3.3.Thành phần Quản lý ánh xạ người dùng

Nhưđã phân tích trong phần 4.1, sau khi tạo giấy chứng nhận cho người dùng phải ánh xạ người dùng này sang người dùng cục bộ tại mỗi nút lưới.

Thành phần Quản lý ánh xạ người dùng gồm hai thành phần nhỏ:

- Thành phần MapManager trên Portal: sau khi tạo người dùng, MapManager sẽ dựa vào danh sách các nút lưới của hệ thống để gửi yêu cầu cập nhật người dùng tới mỗi nút. Thành phần này được cài đặt khá đơn giản.

- Thành phần MapService cài đặt tại mỗi nút lưới: khi tiếp nhận yêu cầu từ MapManager sẽ thực hiện việc cập nhận người dùng.

MapService được viết theo chuẩn dịch vụ lưới. Sơđồ lớp của thành phần này:

Hình 4.6. Sơđồ lớp MapService

4.3.4.Tích hợp với các chức năng quản lý người dùng cơ bản

Môđun quản trị người dùng trong BKGrid 2006 sử dụng lại toàn bộ chức năng quản lý người dùng mà Gridsphere cung cấp, đồng thời tích hợp ba thành phần Nhà chứng nhận thẩm quyền, Quản lý giấy chứng nhận, và Quản lý ánh xạ người dùng. Việc tích hợp ba thành phần này vào môđun quản trị người dùng trong Gridsphere thể hiện ở những điểm sau:

- Khi tạo người dùng sẽ sử dụng Nhà chứng nhận thẩm quyền để tạo giấy chứng nhận người dùng và thực hiện việc ánh xạ người dùng. Giấy chứng sẽ được lưu trên máy chủ Web. Đồng thời các thông tin liên quan tới giấy chứng nhận người dùng được lưu thêm vào cơ sở dữ liệu người dùng. Lưu đồ thực hiện khi tạo người dùng được thể hiện trong hình 4.7.

- Khi người dùng sử dụng các dịch vụ trên Portal, thành phần Quản lý giấy ủy nhiệm sẽ tạo ra giấy ủy nhiệm và cung cấp cho các dịch vụ này hoạt động. Thành phần Quản lý giấy ủy nhiệm quản lý thời gian hiệu

lực của giấy ủy nhiệm và sẽ tạo lại khi giấy ủy nhiệm này hết hạn sử dụng.

Giấy ủy nhiệm cũng được lưu trên máy chủ web nhưng tại một địa chỉ khác. Các dịch vụ trên Portal chỉ được phép sử dụng giấy ủy nhiệm, không bao giờđược phép truy cập vào giấy chứng nhận người dùng.

Hình 4.7. Lưu đồ tạo người dùng

Một phần của tài liệu Luận văn: Bảo mật trong môi trường lưới với tiếp cận hướng tác từ pptx (Trang 88 - 95)