1. Trang chủ
  2. » Luận Văn - Báo Cáo

Nghiên cứu việc đảm bảo an toàn thông tin Các chính sách bảo đảm an ninh cho hệ thống lưới

58 498 0

Đ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

Thông tin cơ bản

Định dạng
Số trang 58
Dung lượng 3,82 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

...111 DANH MỤC THUẬT NGỮ T ừ viết tắt Ngh ĩa tiếng Anh Chú gi ải AAS Attribute Authority Service Dịch vụ phân quyên thuộc tính AC Attribute Certificate Chứng nhận thuộc tính ACL Acce

Trang 1

ĐẠI HỌC QUỐC GIA HÀ NỘI

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

NGUYỄN VĂN TRUNG

NGHIÊN CỨU VIỆC ĐẢM BẢO AN TOÀN

THÔNG TIN TRONG HỆ THỐNG TÍNH

ĐẠI HỌC QUỐC GIA HÀ NỘI

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

NGUYỄN VĂN TRUNG

NGHIÊN CỨU VIỆC ĐẢM BẢO AN TOÀN THÔNG TIN TRONG HỆ THỐNG TÍNH

TOÁN LƯỚI

Ngành: Công nghệ thông tin Chuyên ngành: Hệ thống thông tin Mã số: 60.48.05

LUẬN VĂN THẠC SĨ

NGƯỜI HƯỚNG DẪN KHOA HỌC: PGS.TS Trịnh Nhật Tiến

Hà Nội - 2015

Trang 2

MỤC LỤC

M ỤC LỤC 1

DANH MỤC THUẬT NGỮ 6

LỜI CAM ĐOAN 8

LỜI CẢM ƠN 10

CHƯƠNG 1 TỔNG QUAN VỀ TÍNH TOÁN LƯỚI 11

1.1 TÍNH TOÁN LƯỚI 11

1.1.1 Khái ni ệm Tính toán lưới 11

1.1.2 L ợi ích của Tính toán lưới 13

1.1.3 V ấn đề cơ bản của một hệ thống lưới 15

1.1.4 Ki ến trúc của một lưới 16

1.2 VẤN ĐỀ AN TOÀN THÔNG TIN TRONG TÍNH TOÁN LƯỚI 17

1.2.1 Các thách th ức an toàn trong Tính toán lưới 18

1.2.2 Các chính sách b ảo đảm an ninh cho hệ thống lưới 20

1.2.3 Ki ến trúc an ninh cho hệ thống lưới 23

CHƯƠNG 2 NỀN TẢNG AN TOÀN THÔNG TIN LƯỚI GSI 29

2.1 CÁC KHÁI NIỆM CƠ BẢN VỀ AN TOÀN THÔNG TIN 29

2.1.1 Mã hóa thông tin 29

2.1.2 H ệ mã hóa khóa đối xứng 30 2.1.3 H ệ mã hóa khóa phi đối xứng 31 2.1.4 Ch ữ ký s ố 32

2.1.5 Ch ứng chỉ số 33

2.1.6 Nhà cung c ấp và quản lý chứng chỉ số 35

2.2 CƠ SỞ HẠ TẦNG AN TOÀN THÔNG TIN TRÊN LƯỚI 37

2.2.1 C ơ sở hạ tầng mật mã khóa công khai 37

2.2.2 B ảo vệ thông tin mức thông điệp và mức giao vận 38

2.2.3 Gi ấy ủy nhiệm lưới 39

2.2.4 S ự ủy quyền 39

2.2.5 Ch ứng thực trong GSI 40

2.2.6 Ứng dụng của GSI 40

2.3 BỘ CÔNG CỤ GLOBUS TOOLKIT 4.0 41

2.3.1 Thành ph ần chính của Globus Toolkit 41

2.3.2 An toàn b ảo mật trong Globus Toolkit 45

2.3.3 Minh h ọa cài đặt cơ chế an toàn bảo mật cho dịch vụ GRAM 47

CHƯƠNG 3 HỆ THỐNG QUẢN LÝ TỔ CHỨC ẢO 50

3.1 TỔ CHỨC ẢO 50

3.1.1 Khái ni ệm tổ chức ảo 50 3.1.2 T ổ ch ức ảo và tài nguyên lưới 51

3.1.3 Thông tin ng ười dùng trong tổ chức ảo 53

3.1.3.1 Cấu trúc tổ chức ảo 53

3.1.3.2 Thông tin người dùng 54

3.1.3.3 Định dạng thông tin VO 55

3.1.3.4 Thông tin về các quyền người dùng với RP 55

3.2 HỆ THỐNG QUẢN LÝ TỔ CHỨC ẢO 56

3.2.1 Ng ười dùng với VOMS 57

3.2.1.1 Người dùng lưới với VOMS 57

3.2.1.2 Người quản trị với VOMS 60

3.2.2 D ịch vụ VOMS 61

3.2.2.1 Dịch vụ sinh thuộc tính AAS 62

3.2.2.2 Dịch vụ đăng ký & quản trị ARS 63

3.2.3 Phân quy ền người dùng trong VOMS 64

3.2.3.1 Danh sách điều khiển truy cập 64

3.2.3.2 Quyền thực hiện các tác vụ quản lý VO trong VOMS 65

3.3 DỊCH VỤ TẠO DANH SÁCH TRUY CẬP EDG-MKGRIDMAP 69

CHƯƠNG 4 KẾT QUẢ THỬ NGHIỆM 70

4.1 HỆ THỐNG QUẢN LÝ NGƯỜI DÙNG LƯỚI TÍNH TOÁN 70

4.1.1 Gi ới thiệu hệ thống GOODAS 71

4.1.2 Mô hình b ảo mật cho GOODAS 73

4.2 THÀNH PHẦN QUẢN LÝ TỔ CHỨC ẢO 74

4.2.1 S ử dụng VOMS 74

4.2.1.1 Người dùng lưới và VOMS 75

4.2.1.2 Người quản trị và VOMS 78

4.2.2 S ử dụng EDG-MKGRIDMAP 86

4.3 THÀNH PHẦN QUẢN LÝ GIẤY UỶ NHIỆM 86

4.3.1 C ổng điện tử lưới 86

4.3.1 Mô hình u ỷ quyền truy nhập trên cổng điện tử lưới 88

4.3.3 D ịch vụ quản lý giấy uỷ nhiệm 894.4 MỘT SỐ HANB CHÊC CỦA VOMS 92

Trang 3

4.4.1 Hạn chế của VOMS 924.4.2 Hạn

chế của EDG-MKGRIDMAP 93

4.5 HƯỚNG PHÁT TRIỂN CỦA VOMS 94

4.5.1 VOMRS kết hợp cùng VOMS 94

4.5.1.1 Tổng quan về VOMRS 94

4.5.1.2 Đồng bộ VOMRS và VOMS 96

4.5.2 GUMS & PRIMA thay thế EDG-MKGRIDMAP 97

K ẾT LUẬN 99 TÀI LI ỆU THAM KHẢO 100

PH Ụ LỤC: CÀI ĐẶT VOMS VÀ EDG-MKGRIDMAP .101

1 CÀI ĐẶT VOMS .101

1.1 Chu ẩn bị hệ thống 101 1.2 Cài đặt VOMS 1022.CÀI ĐẶT EDG-MKGRIDMAP .104

2.1 Chu ẩn bị hệ thống 104 2.2 Cài đặt EDG-MKGRIDMAP .1043.CẤU HÌNH HỆ THỐNG 105

3.1 C ấu hình VOMS 105

3.2 C ấu hình VO .107

3.3 C ấu hình EDG-MKGRIDMAP 111

DANH MỤC THUẬT NGỮ

T ừ viết tắt Ngh ĩa tiếng Anh Chú gi ải

AAS Attribute Authority Service Dịch vụ phân quyên thuộc tính

AC Attribute Certificate Chứng nhận thuộc tính ACL Access Control Lists Danh sách điều khiển quyền truy cập

ARS Administration and

Registration Service

Dịch vụ đăng ký và quản trị

CA Certificate Authority Nhà cung cấp và quản lý chứng chỉ

số CAS Community Authorization Dịch vụ thẩm quyền cộng đồng

DN Distinguished Name Tên phân biệt người dùng trong lưới EDG-

MKGRIDMAP

EDG Make Gridmap Công cụ tự động ánh xạ người dụng

cục bộ và người dùng thuộc VO FTP File Transfer Protocol Giao thức truyền file qua mạng TCP GOODAS Grid Oriented Online

Document Analysing System

Hệ thống lưới tìm kiếm và so khớp tài liệu điện tử

GRAM Globus Resource

Allocation Management

Quản lý định vị tài nguyên lưới GRIM Grid Resource Identity

Mapper

Ánh xạ thực thể tài nguyên lưới

GSI Grid Security infrastructure Hạ tầng an toàn thông tin lưới GSS-API Generic Security Service

Application Program Interface

Giao diện lập trình ứng dụng dịch vụ bảo mật chung

GT Globus Toolkit Bộ công cụ được phát triển bởi

Globus Alliance, dùng để phát triển các ứng dụng lưới

GUMS Grid User Management

System

Hệ thống quản lý người dùng lưới

LMJFS Local Managed Job Factory

Services

Dịch vụ sinh MJS địa phương

MJS Managed Job Service Dịch vụ quản lý công việc

Trang 4

MMJFS Master Managed Job

PKI Public Key Infrastructure Hạ tầng khóa công khai

PRIMA PRivilige Management and

Authorization

Dịch vụ quản lý ưu tiên và phân quyền

RP Resource Provider Nhà cung cấp tài nguyên

SAML Security Assertion Markup

Language

Ngôn ngữ đánh dấu liên kết an toàn

SOA Service Oriented

SSL Secure Sockets Layer Giao thức bảo mật lớp sockets

TLS Transport Layer Security Giao thức bảo mật tầng giao vận

VO Virtual Organization Tổ chức ảo

VOMRS Virtual Organization

Management Registration Service

Dịch vụ quản lý đăng ký tổ chức ảo

Membership Service

Dịch vụ thành viên tổ chức ảo

WSDD Web Service Deployment

Hiện nay tính toán lưới đang nổi lên như một công nghệ nhiều hứa hẹn trong

tương lai, với khả năng tập hợp các nguồn tài nguyên nhàn rỗi, nhằm hướng tới các

mục tiêu về hiệu năng tính toán và khả năng chia sẻ, truyền thông dữ liệu Nhiều trung

tâm nghiên cứu và các tổ chức trên thế giới đang áp dụng và triển khai công nghệ này vào thực tiễn, mở ra các khả năng mới trong lĩnh vực công nghệ thông tin cũng như các lĩnh vực khác

Do đặc điểm đa dạng và không đồng nhất của các tổ chức và tài nguyên trong lưới, vấn đề bảo mật trong lưới là một trong những vấn đề được quan tâm hàng đầu

Có những vấn đề bảo mật mới chưa từng gặp trong các công nghệ bảo mật hiện tại cho hệ thống tính toán phân tán truyền thống Các thách thức về an toàn bảo mật được đưa ra như các chính sách bảo mật liên miền cho lưới, các công nghệ điều khiển truy nhập giữa các miền khác nhau

Một vấn đề quan trọng đặt ra trong nghiên cứu an toàn bảo mật trên lưới là việc quản lý bảo mật và danh sách điều khiển truy nhập trong một môi trường động và có tính phân tán cao Luận văn trình bày một giải pháp hoàn chỉnh cho việc quản lý người dùng lưới, xác thực phân quyền và cho phép người dùng hay tổ chức ảo gia nhập mới Giải pháp được phát triển trong lưới tìm kiếm và so khớp tài liệu điện tử liên trường GOODAS Hệ thống lưới được phát triển tại trung tâm tính toán hiệu năng cao (HPCC) thuộc trường đại học Bách Khoa Hà Nội Cấu trúc của luận văn bao gồm các mục sau

Ch ương I: Tổng quan về tính toán lưới

Ch ương II: Nền tảng an toàn thông tin lưới GSI Chương

III: Hệ thống quản lý tổ chức ảo

Ch ương IV: Kết quả thử nghiệm

K ết luận, Phụ lục & Tài liệu tham khảo được trình bày ở phần cuối của luận

văn

LỜI CAM ĐOAN

Tôi xin cam kết rằng nội dung của bản báo cáo này chưa được nộp cho bất kỳ một chương trình cấp bằng thạc sĩ nào cũng nhưu bất kỳ một chương trình cấp bằng nào khác

Trang 5

Tôi xin cam đoan kết quả đạt được trong luận văn là sản phẩm nghiên cứu, tìm

hiểu của riêng cá nhân tôi Trong toàn bộ nội dung của luận văn, những điều được trình

bày hoặc là của cá nhân tôi hoặc là được tổng hợp từ nhiều nguồn tài liệu Tất cả các tài

liệu tham khảo đều có xuất xứ rõ ràng và được trích dẫn hợp pháp

Tôi xin hoàn chịu trách nhiệm và chịu mọi hình thức kỷ luật theo quy định cho lời

cam đoan của mình

Học viên Nguyễn Văn Trung

LỜI CẢM ƠN

Trước hết, tác giả xin bày tỏ lòng biết ơn sâu sắc nhất tới thầy giáo hướng dẫn

PGS.TS Tr ịnh Nhật Tiến về những ý kiến đóng góp về chuyên môn và sự động viên

khích lệ của thầy trong suốt quá trình làm nghiên cứu của tôi

Tôi xin gửi lời cám ơn trân trọng tới GS.TS Nguyễn Thanh Thủy, Giám đốc

Trung tâm Tính toán hiệu năng cao Trường Đại học Bách Khoa Hà Nội Thầy đã tạo

mọi điều kiện về cơ sở vật chất và tinh thần cho tôi trong quá trình nghiên cứu tại trung

tâm

Tôi cũng xin được gửi tới Khoa Công nghệ thông tin, Trường Đại học Công

nghệ, Đại học Quốc Gia Hà Nội cùng toàn thể các thầy cô, anh chị và các bạn lời cảm

ơn chân thành về sự giúp đỡ nhiệt tình, vô giá trong quá trình nghiên cứu và học tập

tại đây

Và cuối cùng tôi xin gửi lời cảm ơn gia đình, bố, mẹ, vợ con tôi về sự hỗ trợ không thể thiếu của họ Tình yêu của họ, sự khích lệ, động viên, sự quan tâm, chăm sóc của họ đã giúp tôi vượt qua tất cả khó khăn để theo học chương trình và hoàn thiện bản luận văn cuối khoá này Tôi xin chân thành cảm ơn!

Ch ương 1 TỔNG QUAN VỀ TÍNH TOÁN LƯỚI

1.1 TÍNH TOÁN L ƯỚI

1.1.1 Khái ni ệm Tính toán lưới

Ngày nay, với sự phát triển vượt bậc của khoa học kỹ thuật và công nghệ, đã xuất hiện những bài toán trong nhiều lĩnh vực đòi hỏi sức mạnh tính toán mà một máy tính riêng lẻ không thể đảm trách Tính toán lưới ra đời nhằm tạo khả năng chia sẻ tài nguyên trên phạm vi toàn cầu, khả năng tận dụng các phần mềm cũng như tài nguyên vật lý phân tán cả về mặt địa lý

Trang 6

Lưới tính toán là một hệ thống có các đặc trưng sau:

• Tài nguyên được điều phối một cách phi tập trung

• Sử dụng các giao thức chuẩn, mở và đa năng

• Cung cấp chất lượng dịch vụ không tầm thường

I Foster‘s Three-Point Checklist (HPCWIRE - 22.07.2002)

Mỗi tác giả khi đưa ra định nghĩa đều đứng trên một số quan niệm nhất định

Chẳng hạn định nghĩa 1 bị ảnh hưởng một cách sâu sắc bởi các dự án siêu tính toán

(meta-computing) trước đó Định nghĩa 2 tập trung vào sự quan trọng của các giao thức

như là phương tiện để tương tác giữa các thành phần, còn định nghĩa 3 “có thể sẽ thích

hợp hơn cho các nghiên cứu về lưới có qui mô rất lớn trong tương lai Định nghĩa này

đã bỏ qua nhiều đóng góp từ các tổ chức công nghiệp, do đó có lẽ là không xác đáng”

(W Gentzsch, HPCWIRE 05.08.2002)

Vì vậy, để có được một cái nhìn toàn diện về lưới, ta không đưa ra một định

nghĩa cụ thể nào Thay vào đó, chúng ta xem xét khái niệm lưới trên cơ sở các đặc

- Động: các tài nguyên có thể thay đổi khi ứng dụng đang được thực hiện

- Hỗn tạp: kiến trúc và tính chất của các nút lưới có thể là hoàn toàn khác nhau

- Vượt qua phạm vi một tổ chức: có nhiều trạm và các chính sách truy nhập có thể khác nhau trên các trạm

Có thể hình dung đơn giản một lưới bao gồm một tập các tài nguyên đa dạng (còn gọi là các nút lưới - có thể là PC, cluster, hệ thống lưu trữ, …) thuộc về nhiều tổ chức nhằm giải quyết một bài toán nào đó

1.1.2 L ợi ích của Tính toán lưới

1/ Khai thác các tài nguyên nhàn r ỗi

Một trong những lợi ích cơ bản của tính toán lưới là khả năng chạy ứng dụng trên một tài nguyên khác Thống kê cho thấy, đối với các máy tính để bàn, trong một ngày làm việc thì chỉ có khoảng 5% thời gian là bận, còn lại là rỗi [2] Việc tận dụng khoảng thời gian rỗi này để chạy các ứng dụng khác là một việc làm rất hiệu quả và kinh tế

2/ Cung c ấp khả năng xử lý song song

Khả năng chạy ứng dụng song song là tính năng thú vị nhất mà tính toán lưới mang lại Lúc này, một công việc được chia thành nhiều công việc con, các công việc con này được thực hiện đồng thời trên các tài nguyên khác nhau của lưới Do đó, thời gian chạy ứng dụng sẽ được rút ngắn nhiều lần

Tuy nhiên, vấn đề là không phải ứng dụng nào cũng có thể triển khai theo cách này được Cần xem xét các yếu tố như khả năng song song hóa, sự trao đổi giữa các công việc con khi chạy để đánh giá xem một ứng dụng có thực sự hiệu quả khi được triển khai trên lưới hay không 3/ Giúp hợp tác giữa các tổ chức

Sự hợp tác được thể hiện thông qua khái niệm tổ chức ảo - sự kết hợp nhiều tổ chức thực cùng mục tiêu Thông qua mô hình tổ chức ảo, các tổ chức thực có thể chia sẻ tài nguyên như dữ liệu, các thiết bị đặc biệt

4/ Giúp truy nh ập các tài nguyên khác:

Ngoài tài nguyên tính toán và lưu trữ, lưới còn cung cấp các loại tài nguyên khác, chẳng hạn đường truyền mạng, các phần mềm đắt tiền Ví dụ như nếu một người dùng

Trang 7

muốn tăng thông lượng kết nối tới Internet để thực hiện khai phá dữ liệu, anh ta có thể

tận dụng các kết nối Internet riêng biệt của các nút lưới khác để chạy bài toán trên

5/ Giúp cân b ằng trong sử dụng tài nguyên

Lưới cung cấp khả năng lập lịch, giúp phân bổ các công việc lên các nút một cách hợp lý,

tránh tình trạng bị quá tải ở bất kì một nút nào

Hình 1-2: Công việc được chuyển sang các nút ít bận hơn

6/ Mang l ại độ tin cậy

Khái niệm tin cậy trong tính toán lưới được thể hiện ở các khía cạnh sau: một là,

trong lưới có những tài nguyên tính toán đắt tiền, cung cấp độ tin cậy cao cho những bài

toán được thực hiện trên chúng Hai là, lưới cung cấp khả năng lập lịch lại, phân bổ lại

công việc nếu có lỗi xảy ra Ba là, nếu cần, một công việc có thể được chạy đồng thời

trên nhiều nút, cho nên việc xảy ra lỗi ở một nút sẽ không làm ảnh hưởng đến kết quả

của công việc đó

1.1.3 V ấn đề cơ bản của một hệ thống lưới

Có 4 vấn đề cơ bản được quan tâm trong tính toán lưới [3], đó là:

1/ An toàn và b ảo mật (Security)

Một nền tảng an toàn và bảo mật vững chắc sẽ quyết định sự phát triển của môi trường tính toán lưới Với tính chất quy mô lớn, quan hệ chia sẻ tài nguyên giữa nhiều

tổ chức, an toàn và bảo mật luôn phải được coi là một trong những yếu tố hàng đầu trong lưới Hai vấn đề quan trọng trong an toàn bảo mật phải xem xét trong tính toán lưới là:

- Chứng thực người dùng (Authentication) - Xác thực thẩm quyền (Authorization)

2/ L ập lịch và quản lý tài nguyên (Resource Management and Scheduling)

Các tài nguyên lưới thường phân tán và không đồng nhất Do đó, việc tích hợp, đồng bộ hóa và biểu diễn chúng dưới một dạng thống nhất là yêu cầu tất yếu Trong môi trường tính toán lưới, tại một thời điểm có thể có rất nhiều ứng dụng cùng truy cập chia

sẻ một hoặc nhiều tài nguyên khác nhau, do vậy cần có bộ lập lịch nhằm tối ưu hóa các công việc Bộ lập lịch phải dựa vào các thông tin trên toàn bộ lưới để quyết định thứ tự

đệ trình công việc 3/ Dịch vụ thông tin (Information Service)

Đối với một môi trường động và không đồng nhất như tính toán lưới thì các thông tin về các thành phần trong lưới sẽ thay đổi liên tục Chính vì vậy, dịch vụ thông tin cần cung cấp cơ chế tự động cập nhật và đăng ký các thông tin về toàn hệ thống như kiến trúc các tài nguyên, các dịch vụ có thể cung cấp trên lưới, trạng thái của toàn bộ môi trường lưới

4/ Qu ản lý dữ liệu (Data Management)

Việc truy cập các nguồn dữ liệu trên lưới đòi hỏi một khả năng trao đổi, tương tác với các dữ liệu có thể lên đến giga bytes hoặc hơn thế nữa Điều này đòi hỏi tính toán lưới phải có các chiến lược lưu trữ cũng như tối ưu hóa các hệ thống lưu trữ

1.1.4 Ki ến trúc của một lưới

Theo [4], một lưới bao gồm các thành phần sau:

1/ T ầng nền (Fabric)

Trang 8

Bao gồm các tài nguyên phân tán, các tài nguyên này có thể có kiến trúc và tính chất rất

khác nhau

2/ T ầng trung gian lưới (Core Middleware)

Cung cấp các dịch vụ cơ bản của lưới như quản lý truy nhập từ xa, định vị tài nguyên,

đăng ký và khám phá tài nguyên, bảo mật

3/ T ầng trung gian phía người dùng (User level middleware)

Bao gồm môi trường phát triển ứng dụng, các công cụ lập trình và các bộ môi giới

tài nguyên nhằm lựa chọn các tài nguyên phù hợp và thực hiện công việc trên các tài

nguyên đó

4/ Các ứng dụng lưới và cổng giao tiếp

Tầng trên cùng là các ứng dụng lưới được phát triển bởi các công cụ hỗ trợ Cổng

điện tử lưới cung cấp giao diện Web cho các ứng dụng lưới, giúp người dùng có thể

đệ trình công việc và tập hợp kết quả thông qua Web

1.2 V ẤN ĐỀ AN TOÀN THÔNG TIN TRONG TÍNH TOÁN LƯỚI

Do đặc điểm hỗn tạp và không đồng nhất của các tổ chức và tài nguyên trong

lưới, vấn đề an toàn thông tin trong lưới là một trong những vấn đề được quan tâm

hàng đầu Có những vấn đề an toàn thông tin mới chưa từng gặp trong các công nghệ

an toàn thông tin hiện tại cho hệ thống tính toán phân tán truyền thống Ví dụ, các tính

toán song song đòi hỏi nhiều tài nguyên tính toán, dẫn tới nhu cầu phải thiết lập các

mối quan hệ an toàn thông tin, không đơn giản chỉ là với client và server, mà giữa hàng

trăm tiến trình thực hiện trong không gian tập hợp nhiều miền quản trị Ngoài ra, cần

phải có các chính sách an toàn thông tin liên miền cho lưới, các công nghệ điều khiển

truy nhập giữa các miền khác nhau cũng phải được hỗ trợ

Các ứng dụng và hệ thống lưới có thể đòi hỏi bất cứ chức năng nào trong các

chức năng cơ bản của an toàn thông tin như là: chứng thực, điều khiển truy nhập, và

toàn vẹn Khi phát triển kiến trúc lưới, cũng cần phải lựa chọn giải pháp để đáp ứng

được đòi hỏi của các đặc tính rất riêng của lưới:

Khi bắt đầu một tính toán đòi hỏi sử dụng tài nguyên, cho thuê tài nguyên hay truyền thông nội bộ, người dùng có thể được chứng thực, và sẽ không phải chứng thực trong các tính toán tiếp theo

Các mật khẩu, khóa bí mật phải được bảo vệ bằng các chính sách như mã hóa, hệ thống file bảo mật, phân quyền,

- Tích h ợp các giải pháp an toàn thông tin địa phương:

Các giải pháp liên miền phải tích hợp với các giải pháp an toàn thông tin địa phương

để đảm bảo độc lập của các thành viên lưới

Truy nhập liên miền đòi hỏi phải có một quy ước thống nhất để biểu diễn định danh của các thực thể lưới như là người dùng, tài nguyên, Vì thế, cần có một chuẩn

để mã hóa các chứng chỉ số cho mục đích an toàn thông tin Hiện tại, X509 là chuẩn cho các chứng chỉ số phổ biến trong môi trường lưới

Một tính toán có thể đòi hỏi một số các tiến trình, cùng cộng tác các hoạt động của chúng với nhau như là một nhóm Tổ hợp các nhóm tiến trình sẽ thay đổi trong vòng đời của một tính toán Vì thế, cần cung cấp an toàn truyền thông nhóm động Không có giải pháp nào hiện tại hỗ trợ tính năng này, thậm chí là thư viện lập trình GSS-API còn không cung cấp an toàn truyền thông nhóm

Các chính sách không phục vụ cho một công nghệ phát triển ứng dụng cụ thể nào Hơn nữa, có thể cài đặt các chính sách trong một phạm vi các công nghệ an toàn thông tin, dựa trên cả kĩ thuật mã hóa công khai và phân phối khóa công khai

1.2.1 Các thách th ức an toàn trong Tính toán lưới

Trang 9

Các yêu cầu an toàn lưới ở trên được định hướng để cung cấp các tổ chức ảo

phân tán, rộng lớn để chia sẻ và sử dụng các nguồn tài nguyên đa dạng trong một mô

hình thống nhất Tuy nhiên, các tài nguyên cũng như các thành phần khác tham gia lưới

lại bị quản lý bởi các nội quy và các chính sách của một tổ chức truyền thống mà chúng

là thành viên Do vậy, để các tổ chức ảo truy nhập vào các tài nguyên trong các tổ chức

truyền thống, chúng phải được thiết lập và cộng tác qua mối quan hệ tin tưởng hai bên,

tồn tại giữa người dùng với các tổ chức truyền thống của họ và mối quan hệ giữa người

dùng với các tổ chức ảo Chúng ta không thể thiết lập quan hệ tin tưởng trực tiếp giữa

các tổ chức truyền thống với tổ chức ảo hay các thành viên mở rộng của nó

Cơ chế an toàn lưới giải quyết các trở ngại này bằng cách cho phép có một tổ

chức ảo thống nhất chung một phần chính sách của các tổ chức truyền thống (policy

domain overlay)

Hình 1-3: Miền tin tưởng chung của tổ chức ảo

Các tài nguyên và các tổ chức đưa ra các điều khiển chính sách mở rộng

(outsource policy) cho một bên thứ ba, các tổ chức ảo (VOs), phối hợp các chính sách

mở rộng trong một miền tin tưởng ổn định lâu dài, để cho phép chia sẻ tài nguyên và sử dụng Giải pháp tải chồng các chính sách dẫn tới các chức năng chủ yếu sau mà lưới phải thực hiện:

Các miền tài nguyên hay các tổ chức ảo thường đã có sự đầu tư đáng kể trong các cơ chế và cơ sở hạ tầng an toàn thông tin của địa phương họ Do vậy mà thách thức lớn nhất chính là phải liên kết các công nghệ an toàn thông tin trên các địa phương hơn là thay thế toàn bộ nó, như thế sẽ rất tốn kém và hoàn toàn không có tính kế thừa

Người dùng có thể khởi tạo ra các dịch vụ mới mà không cần có sự can thiệp của nhà quản trị, ngoài ra các dịch vụ này còn có thể tương tác với nhau Như vậy là phải có cơ chế định danh các thực thể lưới, cấp quyền cho các dịch vụ mà không ảnh hưởng tới các cơ chế bảo mật điạ phương Một ví dụ trong cơ sở hạ tầng GSI, khi một dịch vụ lưới cung cấp cho người dùng, các định danh về người dùng sử dụng dịch vụ, định danh của dịch vụ, định danh của hệ thống mà dịch vụ đăng ký trên đó đều được xác định rõ ràng

- Thi ết lập động các miền chứng thực tin tưởng (trust domain):

Việc chứng thực không chỉ được thiết lập giữa người dùng và tài nguyên trong một tổ chức ảo mà còn mở rộng giữa các tổ chức ảo với nhau Như vậy đòi hỏi phải

có một mô hình an toàn thông tin hướng người dùng (user-driven security model), cho phép người dùng tạo ra các thực thể và các miền chính sách để liên kết tài nguyên trong các tổ chức ảo

1.2.2 Các chính sách b ảo đảm an ninh cho hệ thống lưới

Bảo vệ CSDL tránh khỏi những hiểm hoạ có nghĩa là bảo vệ dữ liệu trong CSDL, tránh khỏi việc truy cập không hợp lệ, một cách vô tình hay cố ý

Mỗi lưới là một tập hợp gồm nhiều tài nguyên hay còn gọi là nút lưới Một số tài nguyên có thể thuộc quyền sử dụng của tất cả các thành viên lưới, trong khi số khác lại

Trang 10

hạn chế quyền truy nhập đối với các thành viên Một số thuật ngữ sau được xây dựng

trong khi nghiên cứu các vấn đề về bảo đảm an toàn cho hệ thống

Tính toán lưới

+ Ch ủ thể là một thành viên của các hoạt động an toàn thông tin Đối với môi trường

lưới, chủ thể thường là người dùng, tài nguyên hay các tiến trình thay mặt cho các tài

nguyên đó

+ Gi ấy ủy nhiệm là thông tin cung cấp định danh cho chủ thể để xác định tên và vai

trò của chủ thể đó Giấy ủy nhiệm được ký bởi nhà thẩm quyền và có thời gian tồn tại

nhất định Sau khoảng thời gian đó thì giấy ủy nhiệm không còn hiệu lực

+ Ch ứng thực là tiến trình để chủ thể chứng minh định danh của mình cho đối tượng

được yêu cầu Chứng thực hai bên (bên yêu cầu và bên được yêu cầu) là quá trình hai

bên chứng thực lẫn nhau, còn gọi là chứng thực đa phương

+ Th ẩm quyền là tiến trình mà thông qua đó, ta xác định được một chủ thể có được phép

truy nhập và sử dụng tài nguyên hay không

+ Mi ền tin tưởng là cấu trúc quản lý mức logic, do một chính sách an toàn thông tin

ổn định, đơn lẻ mức địa phương nắm giữ, hay nói cách khác, nó là một tập các chủ thể

và đối tượng được quản lý bởi đơn miền quản trị và chính sách cục bộ

Sau đây là các chính sách bảo vệ thông tin giải quyết các yêu cầu thách thức trình

bày ở phần trên

1/ Môi tr ường lưới an toàn đa miền

Do lưới là một tập hợp không đồng nhất của các người dùng và tài nguyên cục

bộ, cho nên các chính sách an toàn cục bộ dành cho các tài nguyên và người dùng cũng

khác nhau, chính sách lưới phải đảm bảo tích hợp được tất cả các tập hợp không đồng

nhất này Nói chung, môi trường lưới không hạn chế hay không ảnh hưởng tới các

chính sách địa phương, nhiệm vụ của chính sách lưới là phải tập trung điều khiển các

tương tác liên miền, ánh xạ các hoạt động liên miền vào trong các chính sách địa

phương Ví dụ trong cơ sở hạ tầng GSI, các hoạt động liên miền được thực hiện bởi

các chủ thể sở hữu một chứng chỉ số lưới theo chuẩn X509 Trong từng miền cụ thể, các chứng chỉ số này sẽ được ánh xạ tương ứng với một người dùng cục bộ nào đó thông qua một file ánh xạ (grid-mapfile), là một bản ghi chứa tên người dùng cục bộ

và định danh của chứng chỉ số đó

2/ Ho ạt động lưới hạn chế trong đơn miền quản trị

Mặc dù lưới là một tập đa miền quản trị, tuy nhiên các hoạt động đa miền lại phải tuân theo các chính sách địa phương trên đơn miền quản trị Nói cách khác, không

có hoạt động hay dịch vụ lưới nào được đưa vào các hoạt động địa phương thông qua các chính sách của lưới

3/ Các ch ủ thể toàn cục và cục bộ đều tồn tại

Tại mỗi đơn miền quản trị đều tồn tại hai chủ thể trên, và chính sách để ánh xạ

từ một phần tử toàn cục vào phần tử cục bộ Để làm ví dụ, mỗi người dùng đều có hai tên, một tên toàn cục để hoạt động trên tất cả các tài nguyên, và một tên cục bộ trên mỗi tài nguyên Ánh xạ tên toàn cục vào tên cục bộ tạo khả năng đăng nhập một lần (sigle-sign-on) trên môi trường lưới Trong cơ sở hạ tầng GSI, tên toàn cục chính là tên định danh của giấy ủy nhiệm X509, và tên cục bộ là tên người dùng trong hệ điều

hành

4/ Ch ứng thực đa phương

Hoạt động giữa các thực thể định vị trong các miền tin tưởng khác nhau đòi hỏi chứng thực đa phương, bảo đảm cho sự an toàn và bí mật của các hoạt động Ví dụ trong dịch vụ truyền file GridFTP, cả client và server đều phải chứng minh định danh của mình trong lưới, client đòi hỏi server có định danh như mình mong muốn không, còn server sẽ kiểm tra danh sách các định danh client, xem client có quyền đăng nhập vào server để sử dụng dịch vụ truyền file không

Trang 11

Tất cả các quyết định điều khiển được đưa ra đều là cục bộ hay dựa trên cơ sở

của đối tượng cục bộ, hay không có một quyết định điều khiển nào là toàn cục, áp

dụng cho tất cả các tài nguyên cục bộ Ví dụ, một người dùng lưới có thể sử dụng dịch

vụ truyền file GridFTP tại một tài nguyên này, nhưng tại các tài nguyên khác trong

lưới, anh ta sẽ không có quyền truy nhập Anh ta không thể ra lệnh truyền file cho toàn

bộ các tài nguyên trong lưới

7/ C ơ chế sử dụng Giấy chứng nhận

Có thể dùng chứng chỉ số với các chương trình thay mặt cho cùng một tiến

trình, chạy trên cùng một chủ thể trong cùng một miền tin tưởng Như đã biết, tính

toán lưới liên quan tới hàng trăm tiến trình chạy trên một tài nguyên đơn Chính sách

này cho phép mở rộng cho các ứng dụng song song có kích thước lớn, bằng cách tránh

các yêu cầu phải tạo một chứng chỉ số duy nhất cho mỗi tiến trình, mà cho phép các

tiến trình song song này dùng chung một tập các chứng chỉ số

1.2.3 Ki ến trúc an ninh cho hệ thống lưới

Phần này sẽ trình bày một kiến trúc an ninh dựa trên các ngữ cảnh an toàn và chính

sách an toàn thông tin được nêu ra ở trên

1/ Th ực thể

Môi trường lưới bao gồm các chủ thể và đối tượng trong các tính toán Chủ thể

bao gồm các người dùng, các tiến trình thực hiện tính toán, bởi vì mỗi tính toán bao

gồm nhiều tiến trình, mỗi tiến trình lại thay mặt cho một người dùng cụ thể Đối tượng

được hình dung như môi trường rộng lớn của các tài nguyên có sẵn: máy tính, kho dữ

liệu, mạng, thiết bị hiển thị, để phục vụ cho tính toán

2/ Gi ấy chứng nhận

Đó là giải pháp thống nhất các định danh của các thực thể lưới, cung cấp cho cả

người dùng và tài nguyên Cơ chế này giúp giảm bớt thời gian chứng thực khi thực

hiện tính toán, tạo điều kiện thuận lợi cho người dùng Có hai loại chứng chỉ số:

+ Gi ấy chứng nhận người dùng

Được cấp quyền để thay mặt người dùng trong một thời gian hạn chế Giấy chứng nhận người dùng hoạt động thay cho người dùng, nhờ đó nó có những thuận lợi như: không yêu cầu người dùng phải có mặt trong thời gian tính toán, thay vào đó chứng chỉ số của người dùng phải sẵn có trong suốt thời gian tính toán Hơn nữa, thời gian sống của chứng chỉ số được điều khiển bởi người dùng, giúp cho người dùng hoàn toàn chủ động trong quá trình tính toán mà không cần có mặt ở đó

+ Gi ấy chứng nhận tài nguyên

Chứng nhận cho một tài nguyên là thành viên hợp lệ của lưới, các chính sách

an toàn riêng trong tài nguyên đó tương thích với các chính sách chung của lưới Ví

dụ, trong chính sách an toàn của Globus Toolkit 4 (GT4), giấy ủy nhiệm tài nguyên GRIM (Grid Resource Identity Mapper) chứng minh tài nguyên này là thành viên của lưới, tuân theo chính sách an toàn của lưới Ngoài ra, kiến trúc GRIM cho phép cơ chế

ủy quyền truy cập tài nguyên (e.g máy) thông qua chương trình setuid, cho phép tài nguyên này nằm lâu dài trong một máy cụ thể, tuân theo chính sách an toàn trong máy

đó

3/ Các giao th ức

Là các quy ước được đưa ra cho hoạt động an toàn trong môi trường lưới Trong kiến trúc này, sử dụng một số giao thức giúp cho các hoạt động trên toàn bộ lưới: người dùng có thể đăng nhập, định vị tài nguyên, định vị các tài nguyên khác trong tiến trình thực hiện

Mô tả kiến trúc

U, R, P: tương ứng là các người dùng, tài nguyên, và tiến trình

UP, RP: chứng chỉ số người dùng và chứng chỉ số tài nguyên

CX: Giấy ủy nhiệm của chủ thể X

SigX(text): văn bản (text) được kí bởi chủ thể X

Trang 12

Hình 1-4: Mô hình kiến trúc bảo vệ thông tin của hệ thống tính toán lưới

Như trên hình vẽ, các hoạt động trong kiến trúc bao gồm:

1/ Người dùng thông qua giấy ủy nhiệm người dùng, đăng nhập hệ thống:

1/ Người dùng sử dụng chứng chỉ số để đăng nhập vào hệ thống máy tính 2/ Người

dùng tạo ra giấy ủy nhiệm người dùng (CUP), sử dụng chứng chỉ số người dùng UP để

kí lên một bản ghi bao gồm: định danh người dùng, tên máy cục bộ, thời gian hợp lệ

cho CUP và bất cứ thông tin nào được đòi hỏi bởi giao thức chứng thực sử dụng để cài đặt kiến trúc

Cup = SigU (usr-id, máy, start-time, end-time, auth-info)

Ở đây cần phân biệt chứng chỉ số người dùng UP và giấy ủy nhiệm người dùng

CUP Chứng chỉ số người dùng UP cho phép các hoạt động trên lưới, tuy nhiên nó có một vài hạn chế: dễ bị tổn thương và không hạn chế thời gian hoạt động khi thay mặt người dùng Giải pháp là sử dụng giấy ủy nhiệm tạm thời CUP, là sự kết hợp của chứng chỉ số UP với một khoá bí mật tương ứng

Giấy ủy nhiệm CUP có thể hoạt động thay mặt người dùng, nhưng thời gian hoạt động hạn chế và một số ràng buộc bởi người dùng như: tên máy (nơi mà UP được phép hoạt động), tên các miền (nơi mà UP được phép khởi tạo tiến trình và sử dụng tài nguyên)

3/ Người dùng sở hữu giấy uỷ nhiệm CUP được phép khởi tạo một tiến trình Nó dựa trên chính sách an toàn cục bộ để bảo vệ tính toàn vẹn của CUP

Giao th ức 2: Giao th ức định vị tài nguyên

1/ Các chứng chỉ số UP và RP thẩm quyền lẫn nhau (xem khái niệm thẩm quyền đa phương 1.2.2) sử dụng giấy ủy nhiệm CUP và CRP Một phần của tiến trình này, RP kiểm tra để đảm bảo CUP vẫn còn hợp lệ, chưa hết thời hạn 2/ UP chuyển các yêu cầu về định vị tài nguyên cho RP dưới dạng

SigUP(các yêu cầu định vị)

Trang 13

3/ RP kiểm tra tính hợp lệ của UP đã yêu cầu định vị, bảo đảm các yêu cầu này đúng là do

UP đã kí

4/ Nếu yêu cầu được tiếp nhận, RP tạo ra bản ghi RESOURCE_CREDENTIAL chứa: tên

người dùng, tài nguyên định vị cho người dùng đó, tên tài nguyên

5/ RP chuyển RESOURCE_CREDENTIAL một cách an toàn tới UP (thực hiện như bước

1, UP chuyển yêu cầu định vị tới RP)

6/ UP kiểm tra tính hợp lệ RESOURCE_CREDENTIAL, xác nhận và kí lên nó -

Sigup(RESOURCE_CREDENTIAL), để tạo ra một giấy ủy nhiệm yêu cầu tài nguyên

Giấy ủy nhiệm này còn được gọi là giấy ủy nhiệm tiến trình CP

7/ UP chuyển CP một cách an toàn tới RP (thực hiện như bước 1, UP chuyển yêu cầu định

vị tới RP)

8/ RP định vị tài nguyên, tiếp tục tiếp nhận các tiến trình CP mới của người dùng

Giao th ức 3: Giao th ức định vị tài nguyên thông qua tiến trình người dùng 1/

Tiến trình và UP của nó chứng thực lẫn nhau (xem chứng thực đa phương 1.2.2) thông

qua CP và CUP

2/ Tiến trình phát ra một yêu cầu tới UP của nó, dưới dạng:

SigP {"định vị", các tham số yêu cầu định vị}

3/ Nếu UP chấp nhận yêu cầu, nó sẽ phát ra một yêu cầu định vị tài nguyên tới RP cụ thể

nào đó sử dụng giao thức 2, đã mô tả ở trên

4/ Kết quả định vị tài nguyên sẽ được UP kí lên, sau đó chuyển cho tiến trình yêu cầu

Giao th ức 4: Ánh x ạ định danh toàn cục vào định danh cục bộ

1/ UP chứng thực với RP

2/ UP phát ra một yêu cầu đã ký MAP-SUBJECT-UP dưới dạng các tham số như tên chủ

thể tài nguyên, tên chủ thể toàn cục

3/ Người dùng đăng nhập vào tài nguyên sử dụng các phương thức chứng thực của tài

nguyên và bắt đầu tiến trình đăng ký

4/ Tiến trình ánh xạ tài nguyên phát ra yêu cầu MAP-SUBJECT-P tới RP, dưới dạng các tham số: tên chủ thể tài nguyên, tên chủ thể toàn cục

a RP đợi các yêu cầu MAP-SUBJECT-UP và MAP-SUBJECT-P với các tham số tương ứng

b RP bảo đảm rằng tiến trình đăng ký ánh xạ thuộc về chủ thể tài nguyên được xác định trong yêu cầu ánh xạ

c Nếu kiểm tra hợp lệ, RP sẽ thiết lập ánh xạ và gửi xác nhận tới tiến trình đăng ký ánh

tử riêng biệt nào, việc cài đặt cụ thể sử dụng giao diện lập trình ứng dụng chung GSS,

do đó việc cài đặt và phát triển có thể sử dụng bất cứ công nghệ an toàn thông tin riêng biệt nào

K ẾT CHƯƠNG

Tóm lại, vấn đề bảo đảm an toàn thông tin trong môi trường lưới còn rất nhiều thách thức Vì đây là môi trường phân tán về địa lý, nguồn tài nguyên không đồng nhất, và tồn tại nhiều chính sách quản lý của các tổ chức khác nhau Để giải quyết các khó khăn này, yêu cầu phải có giải pháp tổng thể và đồng nhất giữa các tổ chức tham gia lưới Đó cũng là nội dung chính của chương sau, đi sâu vào các khía cạnh bảo đảm

an toàn thông tin cho Hệ thống tính toán lưới

Trang 14

Ch ương 2 NỀN TẢNG AN TOÀN THÔNG TIN LƯỚI GSI

VÀ B Ộ CÔNG CỤ GLOBUS TOOLKIT 4.0

2.1 CÁC KHÁI NI ỆM CƠ BẢN VỀ AN TOÀN THÔNG TIN

2.1.1 Mã hóa thông tin

Trong mã hóa thông tin có hai khóa là khoá mã hoá và khoá giải mã Người gửi mã

hóa thông tin bằng khoá mã hoá, và gửi bản mã cho người nhận

Sau đây, ta sẽ xem xét hai phương pháp mã hóa thông dụng là mã hóa khóa đối

xứng (mã hóa khóa bí mật) và mã hóa khóa phi đối xứng (mã hóa khóa công khai)

2.1.2 H ệ mã hóa khóa đối xứng

Mã hóa đối xứng là phương pháp mã hoá mà biết khoá mã hoá dễ dàng tính được khoá giải mã và ngược lại Trong một số hệ mã hoá đối xứng thì hai khoá này trùng nhau

Hình 2- 3: Mã hoá khoá đối xứng

Mặc dù các phương pháp mã hóa đối xứng thường có tốc độ cao và dễ cài đặt, nhưng chúng lại có nhiều yếu điểm Một nhược điểm chính đó là vì cả người gửi và người nhận đều sử dụng cùng một khoá mã hoá do đó cần phải có sự trao đổi thông tin thống nhất khóa thông qua một kênh mật Đây là một vấn đề khó trong an toàn và bảo mật

Các hệ thống bảo vệ thông tin ngày nay sử dụng các thuật toán mã hóa bất đối xứng (khoá mã hoá và khoá giải mã khác nhau) để cùng với hệ mã hoá đối xứng bảo

vệ thông tin

2.1.3 H ệ mã hóa khóa phi đối xứng

Trang 15

Hình 2- 4: Mã hoá khoá phi đối xứng

Hệ mã hóa khoá phi đối xứng có khoá mã hoá và khoá giải mã khác nhau, biết

được khoá này “khó” tính được khoá kia Các khóa này được xây dựng bằng hàm một

chiều có cửa sập (Trap-door)

Trong hai khóa đó, một khóa được chọn làm khóa bí mật và khóa còn lại được

chọn làm khóa công khai Khóa bí mật chỉ có một người là chủ nhân của nó nắm giữ

Khóa công khai được công bố rộng rãi cho bất cứ ai muốn trao đổi thông tin mật với

người sở hữu khóa Khóa công khai được sử dụng để mã hóa thông tin và khóa bí mật

được sử dụng để giải mã

Quá trình giao tiếp giữa hai đối tượng A và B có thể được mô tả như sau: B

sinh ra một cặp khóa bí mật và công khai, khóa bí mật được cất giữ một cách an toàn

và được bảo vệ bằng một mật mã còn khóa công khai được cung cấp rộng rãi A có

thể sử dụng khóa công khai (được phát hành bởi B) để mã hóa thông tin và gửi cho B

Lúc này, chỉ duy nhất B, người sở hữu khóa bí mật, có thể giải mã thông tin bằng khoá

bí mật

Ngoài ra, mã hoá khoá phi đối xứng còn được dùng trong các cơ chế xác thực

Tuy nhiên, một nhược điểm lớn của hệ mã hóa công khai này là quá trình giải mã cũng

như mã hóa mất nhiều thời gian

2.1.4 Ch ữ ký số

Những năm 80 của thế kỉ hai mươi, các nhà khoa học đã phát minh ra “chữ ký số”

để chứng thực một “tài liệu số” Đó là “bản mã” của xâu bít tài liệu [5]

Chữ ký được dùng để xác định tính hợp thức của văn bản trong quá trình giao dịch Do đó, chữ ký trên giấy là đặc trưng của từng cá nhân Chữ ký số là một hàm phụ thuộc vào thông tin mà nó ký Trong giao dịch trực tuyến, chữ ký số được coi là một thông tin gắn liền với giao dịch

Hình 2- 5: Ch ữ ký số và mã hóa công khai

Ký số trên tài liệu số là ký trên từng bít của tài liệu Kẻ gian khó có thể giả mạo chữ

ký số nếu nó không biết “khoá lập mã”

Để kiểm tra một chữ ký số thuộc về một tài liệu số, người ta dùng chìa khoá công khai và tài liệu đi kèm

Ký số thực hiện trên từng bít tài liệu nên độ dài của chữ ký số ít nhất bằng độ dài của tài liệu Do đó thay vì ký trên tài liệu dài, người ta thường dùng “hàm băm” để tạo

ra “đại diện” cho tài liệu, sau đó mới ký số lên “đại diện” này

2.1.5 Ch ứng chỉ số

Trang 16

Hình 2- 6: Ch ứng chỉ số

Chứng chỉ khoá công khai (gọi tắt là chứng chỉ số) là một văn bản điện tử xác

nhận khoá công khai được sở hữu bởi một người cụ thể Chứng chỉ số được cấp bởi

cơ quan có thẩm quyền gọi là Nhà cung cấp và quản lý chứng chỉ số

Ví dụ về giao dịch điện tử giữa hai chủ thể A và B, thông qua Nhà cung cấp và

quản lý chứng chỉ số S như sau:

Bước 1 Xin các chứng chỉ số:

Trước khi giao dịch, A gửi khoá công khai cho S và S sẽ cấp chứng chỉ số AC

Thông tin từ A có thể gồm M = [ZA, Tên, ] trong đó có ZA là khoá công khai của A

Tương tự B cũng sẽ được S cấp cho một chứng chỉ số BC

Bước 2: Giao dịch điện tử:

A tìm chứng chỉ số BC của B, kiểm định chữ ký số của S đã kí lên BC Nếu

chứng chỉ số BC đúng do S phát hành, A tách khoá công khai của B, để mã hoá thông

tin của mình và gửi cho B

Với việc sử dụng chứng chỉ số, quá trình chứng thực có sự liên quan của ba bên

A, B, S Quá trình kiểm chứng rất nghiêm ngặt, S phải chứng minh là người phát hành

các chứng chỉ số, các thông tin mà A gửi cho B cũng bảo đảm bí mật, bởi vì nó đã

được mã hóa bằng khóa công khai của B, chỉ có B mới có khóa bí mật để giải mã thông

+ Subject: tên của đối tượng xin cấp Nó được mã hoá theo định dạng tên định danh (Distinguished

Name) của đối tượng

+ Subject’s public key: bao gồm các thông tin về khoá và thuật toán sử dụng để sinh ra khoá

công khai đó

+ Issuer’s Subject: tên định danh của Nhà cung cấp và quản lý chứng chỉ số

+ Digital signature: chữ ký số sinh ra bởi khoá bí mật của Nhà cung cấp và quản lý chứng

chỉ số Chữ ký này có thể được kiểm định bằng khoá công khai của Nhà cung cấp và quản lý chứng chỉ số

+ Tên định danh (Distinguished Name - DN): gồm các cặp giá trị cách nhau bằng dấu phẩy

Ví dụ: "O=University of Technology, OU=Faculty of Information Technology, CN=HPC"

Trang 17

Tên định danh có nhiều trường, trong đó, có một số trường thông dụng là:

O: tên tổ chức (Organization)

OU: tên của đơn vị trong tổ chức đó (Organization Unit)

CN: tên đối tượng, thông thường là tên của người dùng (Common Name)

C: đất nước (Country)

Tên định danh cho phép ta xác định được định danh duy nhất của một đối tượng trong tổ

chức

2.1.6 Nhà cung c ấp và quản lý chứng chỉ số

Nhà cung cấp và quản lý chứng chỉ số cấp phát và quản lý khoá công khai dùng

trong mật mã Mỗi đối tượng tham gia giao tiếp có thể tin tưởng Nhà cung cấp và quản

lý chứng chỉ số khác nhau Trong trường hợp này, cấu trúc phân cấp Nhà cung cấp và

quản lý chứng chỉ số sẽ cho phép các bên tham gia tin tưởng các Nhà cung cấp và quản

lý chứng chỉ số khác nhau vẫn có thể thiết lập các mối quan hệ tin cậy trong giao tiếp

Trong hình 2-7, chứng chỉ số của Borja được ký bởi Nhà cung cấp và quản lý chứng

chỉ số FOO Ngược lại, chứng chỉ số của Nhà cung cấp và quản lý chứng chỉ số FOO được

ký bởi Nhà cung cấp và quản lý chứng chỉ số BAR Cuối cùng chứng chỉ số của BAR được

ký bởi chính nó

Nếu chúng ta nhận được chứng chỉ số của Borja mà không hoàn toàn tin tưởng

Nhà cung cấp và quản lý chứng chỉ số FOO, như vậy có nghĩa là chứng chỉ số của

Borja sẽ không được tin tưởng ngay Chúng ta có thể kiểm tra xem chứng chỉ số của

Nhà cung cấp và quản lý chứng chỉ số FOO có được cấp bởi một Nhà cung cấp và

quản lý chứng chỉ số mà ta tin tưởng hay không Nếu Nhà cung cấp và quản lý chứng

chỉ số BAR nằm trong danh sách tin tưởng của ta, khi đó chứng chỉ số của Borja được

2.2 C Ơ SỞ HẠ TẦNG AN TOÀN THÔNG TIN TRÊN LƯỚI

An toàn thông tin là một trong những nền tảng quan trọng nhất trong hệ thống lưới Cơ sở hạ tầng an toàn thông tin lưới (GSI) để giải quyết những vấn đề an toàn thông tin còn tồn tại trong tính toán lưới, mà nền tảng chính là những kiến thức về mã

Trang 18

mật đã nêu ra ở phần trên Trong phần này trình bày một số đặc điểm của GSI và cài

đặt ứng dụng của nó

2.2.1 C ơ sở hạ tầng mật mã khóa công khai

GSI được xây dựng dựa trên cơ sở hạ tầng mật mã khóa công khai (PKI) GSI

bao gồm tập các thực thể (người dùng và tài nguyên), được phân biệt bởi tên duy nhất

gọi là tên định danh Chứng thực trong GSI nghĩa là cho mỗi thực thể người dùng hoặc

tài nguyên một tên định danh duy nhất

Để mỗi thực thể có một định danh duy nhất, GSI đưa ra khái niệm giấy ủy nhiệm lưới,

là sự kết hợp của chứng chỉ lưới với một khoá bí mật tương ứng

Một điều quan trọng trong môi trường PKI của lưới, mỗi thực thể phải thực

hiện sự trao quyền để bảo đảm sự toàn vẹn của hệ thống trong các giao dịch đa phương

và đa tiến trình Để bảo đảm khóa bí mật không bị đánh cắp, có thể sử dụng một số

phương pháp:

- Lưu trữ khóa trong một file có quyền truy nhập hạn chế

- Lưu trữ khóa trong hệ thống file mà khoá mã hoá chỉ được biết bởi người sở hữu

nó Ví dụ máy chủ MyProxy để quản lý các giấy uỷ nhiệm lưới

- Lưu trữ khóa bí mật bằng các thiết bị phần cứng có mật khẩu Giải pháp phần cứng

cho ta tính an toàn cao, nhưng nó lại ít được sử dụng bởi thiếu sự phát triển của

phần cứng

- Sử dụng giấy ủy nhiệm trong một khoảng thời gian sống nhất định Điều này đòi

hỏi thường xuyên phải có cấp mới các giấy ủy nhiệm, bảo vệ khóa bí mật bằng

cách hạn chế sự lộ diện của nó

2.2.2 B ảo vệ thông tin mức thông điệp và mức giao vận

GSI cho phép chúng ta thực hiện bảo vệ thông tin ở hai mức: mức giao vận và mức thông điệp

An toàn thông tin mức giao vận cho phép toàn bộ truyền thông được mã hóa

An toàn thông tin mức thông điệp chỉ cho phép nội dung của thông điệp được mã hóa

Hình 2- 8: An toàn thông tin m ức giao vận

Hình 2- 9: An toàn thông tin m ức thông điệp

Hai mức bảo mật giao vận và thông điệp có thể đảm bảo tính toàn vẹn, riêng tư

và xác thực nhờ sử dụng các phương pháp mật mã Tuy nhiên, không phải tất cả truyền thông cần có cả ba đặc tính này Nói chung, hội thoại an toàn phải đảm bảo tối thiểu khả năng chứng thực

2.2.3 Gi ấy ủy nhiệm lưới

Trong môi trường lưới, người dùng cần sử dụng nhiều tài nguyên Mỗi lần yêu cầu cấp phép tài nguyên, người dùng cần phải chứng thực, và mỗi lần chứng thực người dùng cần nhập mật khẩu Việc sử dụng nhiều lần mật khẩu trong chứng thực đa phương gây bất tiện cho người dùng, đồng thời khoá bí mật rất dễ bị đánh cắp Một cách khác là sử dụng phần mềm để nhắc và lưu trữ mật khẩu người dùng một lần Tuy

nó rất thuận tiện cho người dùng, nó lại bất lợi trên quan điểm về an toàn thông tin, khi mà nó để lộ khóa bí mật trong một khoảng thời gian dài

Trang 19

GSI giải quyết vấn đề này với khái niệm giấy ủy nhiệm Mỗi giấy ủy nhiệm sẽ

hoạt động thay mặt người dùng trong một khoảng thời gian ủy quyền ngắn hạn Nói

cách khác, việc sử dụng giấy ủy nhiệm ngắn hạn thay thế cho các chứng chỉ số dài hạn

khi chứng thực người dùng

Giấy ủy nhiệm là sự kết hợp giữa chứng chỉ số dài hạn của người dùng với

khóa bí mật riêng của nó Giấy ủy nhiệm, theo một cách khác, là sự liên kết ngắn hạn

giữa tên định danh của người dùng với một khóa bí mật khác Chứng chỉ số thường

được lưu trữ sử dụng mã hóa trong hệ thống file địa phương, thường được bảo vệ bởi

quyền truy cập file trong hệ thống, có thể được sử dụng nhiều lần mà không có sự bất

tiện nào Còn giấy ủy nhiệm dễ bị tổn thương, nó có thời gian sống ngắn hạn hơn nhiều

so với các chứng chỉ số dài hạn của người dùng, thông thường là vài giờ

2.2.4 S ự ủy quyền

Đối với tính toán phức tạp và kéo dài liên quan tới nhiều tiến trình khác nhau,

người dùng không phải lúc nào cũng có mặt để chứng thực cho mỗi tiến trình GSI

giải quyết vấn đề này bằng cách cho phép người dùng ủy quyền giấy ủy nhiệm của

mình cho giao dịch các máy từ xa

Sự ủy quyền cũng tương tự như việc tạo ra các giấy ủy nhiệm, một tập chứng chỉ

số dài hạn sẽ được dùng để tạo ra tập các giấy ủy nhiệm mới, có thời gian sống ngắn

hơn Sự khác nhau là việc tạo ra các giấy ủy nhiệm xảy ra trong các phiên kết nối đòi

hỏi chứng thực GSI, khi các tiến trình từ xa đòi hỏi giấy ủy nhiệm của người dùng cho

chứng thực Một điều đáng chú ý nữa là sự ủy quyền có thể là một chuỗi, một người có

thể ủy quyền cho một máy A, sau đó tiến trình sử dụng trên máy A có thể ủy quyền cho

máy B và cứ tiếp tục như vậy

2.2.5 Ch ứng thực trong GSI

GSI sử dụng grid-mapfile để đưa ra danh sách điều khiển truy nhập dựa trên

danh sách người dùng được định nghĩa Việc chứng thực các định danh GSI sẽ chuyển

về chứng thực các định danh địa phương, cùng với việc đó, các chính sách đưa ra cũng nằm trong phạm vi cục bộ như: quyền truy nhập file, dung lượng đĩa, tốc độ CPU Gần đây GSI áp dụng chuẩn SAML [6] để định nghĩa các định dạng xác nhận bảo mật và giao thức để lấy xác nhận GSI sử dụng chứng thực SAML theo hai cách: Dịch vụ chứng thực cộng đồng CAS hoặc dịch vụ chứng thực của bên thứ ba như PERMIT

xa Globus Toolkit Gram hay Secure Shell (SSH) để kết nối tới các máy từ xa Ngoài

ra, tập các thư viện an toàn bảo mật GSI trong Java Cog Kit tạo điều kiện thuận lợi cho phát triển các ứng dụng lưới có hỗ trợ bảo mật

2.3 B Ộ CÔNG CỤ GLOBUS TOOLKIT 4.0

Bộ công cụ Globus Toolkit (GT) là sản phẩm của dự án Globus – dự án được

sự hợp tác của nhiều công ty, phòng thí nghiệm của Mỹ nhằm tìm ra giải pháp cho tính toán lưới Globus Toolkit là tập hợp các dịch vụ, phần mềm, các thư viện xây dựng theo kiến trúc mở

Có thể nói dự án Globus đã và đang đóng góp rất lớn vào sự phát triển của tính toán lưới Đã có hàng trăm dự án áp dụng tính toán lưới lớn, nhỏ trên toàn thế giới đang sử dụng bộ công cụ Globus Toolkit để xây dựng cơ sở hạ tầng và triển khai các ứng dụng của mình Phiên bản mới nhất hiện nay là phiên bản GT4, đây là phiên bản đầu tiên có hỗ trợ các thực thi Web Services trong nhiều thành phần của nó Tuy nhiên

Trang 20

vẫn có một số thành phần chưa sử dụng các thực thi Web Services và vì lý do tương

thích với các phiên bản cũ hơn

2.3.1 Thành ph ần chính của Globus Toolkit

GT4 gồm có 5 thành phần chính sau [4]:

− Thành phần thực thi cơ bản (Common runtime components)

− Thành phần bảo vệ thông tin (Security component)

− Thành phần quản lý dữ liệu (Data management component)

− Dịch vụ theo dõi và tìm kiếm (Monitoring and Discovery Services)

− Thành phần quản lý thực thi (Execution management)

1/ Thành ph ần thực thi cơ bản (Common runtime components)

Thành phần thực thi cơ bản bao gồm tập các thư viện và các công cụ cung cấp

môi trường xử lý cho cả hai mô hình dịch vụ: dịch vụ web và không phải là dịch vụ

web Đồng thời đây là thành phần nền tảng của Globus Toolkit phục vụ cho các dịch

vụ khác trong bộ công cụ này

2/ Thành ph ần bảo vệ thông tin (Security Component)

Thành phần bảo vệ thông tin nằm phía dưới tất cả các thành phần khác cung

cấp các chức năng an toàn thông tin, được xây dựng dựa trên mô hình mã hóa khóa

công khai, giao thức bảo mật SSL (Secure Socket Layer) và chứng chỉ số X.509 Thành

phần này cung cấp cơ chế xác thực một lần (single sign on), mã hóa trong truyền thông

và cơ chế ủy quyền Cần khẳng định rằng: bảo vệ thông tin trong tính toán lưới là một

vấn đề trung tâm Khi triển khai ở phạm vi lớn, lưới với cơ cấu phức tạp nếu không

được thiết kế gắn liền với an toàn thông tin thì hệ thống lưới rất dễ bị sụp đổ do truy

xuất trái phép, các loại sâu, các phương thức tấn công, cũng như các hacker

3/ Thành ph ần quản lý dữ liệu (Data management)

Globus Toolkit cung cấp các dịch vụ thao tác với dữ liệu:

• Dịch vụ truyền file trên lưới GridFTP

GridFTP là mở rộng của giao thức FTP truyền thống để cung cấp dịch vụ truyền file hiệu quả cao và được thực hiện trên nền bảo mật lưới chặt chẽ Ngoài ra, một tính năng quan trọng của giao thức GridFTP là cho phép truyền file theo mô hình third-party Trong mô hình truyền file truyền thống, việc truyền file chỉ thực hiện được giữa client và server Còn trong mô hình truyền file third-party, Client có

thể thực hiện truyền file giữa các server với nhau

Hình 2- 10: Truy ền file theo mô hình third-party

• Dịch vụ truyền file tin cậy RFT (Realiable File Transfer)

RFT sử dụng GridFTP để truyền file RFT cung cấp dịch vụ truyền file tin cậy dưới dạng dịch vụ web, đồng thời RFT cũng sử dụng cơ sở dữ liệu để có thể phục hồi việc truyền file nếu xảy ra sự cố

Trang 21

Hình 2- 11: D ịch vụ truyền file RFT

• Dịch vụ sao lưu dữ liệu trên lưới

Dịch vụ sao lưu dữ liệu DRS (Data Replication Service), dịch vụ định vị tệp

RLS (Replica Location Service)

4/ D ịch vụ theo dõi và tìm kiếm tài nguyên (Monitoring and Discovery

Services)

Dịch vụ theo dõi và tìm kiếm tài nguyên cung cấp kiến trúc thống nhất cho việc

theo dõi các thông tin về cấu hình hệ thống trên các nút lưới của toàn bộ hệ thống

Dịch vụ thông tin cung cấp thông tin vật lý như: hệ điều hành, năng lực xử lý, bộ nhớ

đồng thời cũng cung cấp các thông tin về các dịch vụ mà nút lưới đó cung cấp các dịch

vụ lưới

5/ Thành ph ần quản lý thực thi (Execution management)

Globus Tookit cung cấp các thành phần làm nhiệm vụ thực thi công việc, giám sát

công việc, và giao tiếp với bộ lập lịch địa phương Trong đó quan trọng nhất là thành

phần WS GRAM (Grid Resource Allocation and Management)

WS GRAM là một dịch vụ lưới được viết theo mô hình Web Services, cung cấp

khả năng thực hiện và quản lý trạng thái công việc từ xa Khi Client đệ trình công việc,

yêu cầu đó được gửi tới bằng thông điệp SOAP (Simple Object Access Protocol) [5]

và được xử lý bởi thành phần WS GRAM trên máy đó WS GRAM có khả năng chuyển các yêu cầu đó thành dạng mà các bộ lập lịch địa phương hiểu được và yêu cầu các bộ lập lịch địa phường thực hiện Trong quá trình thực thi công việc, WS GRAM còn kết hợp với dịch vụ RFT để thực hiện truyền, nhận các file đầu vào và các file kết quả Ngoài ra Globus Toolkit còn cung cấp các thành phần khác liên quan đến việc quả

lý thực thi công việc như: bộ siêu lập lịch Community Scheduler Framework 4 (CSF4), dịch vụ quản lý không gian làm việc Workspace Management Service (WMS) Tuy nhiên các thành phần này đang trong giai đoạn phát triển và chưa được hoàn thiện

2.3.2 An toàn b ảo mật trong Globus Toolkit

GT4 cung cấp một số dịch vụ về an toàn bảo mật:

- Credential processing service: là dịch vụ đảm nhận việc xử lý và kiểm tra các yêu cầu

về chứng thực

- Authorization service: dịch vụ này xác định quyền của các hoạt động dựa trên việc áp

dụng các quyền bảo mật đối với từng đối tượng yêu cầu hành động đó và cụ thể yêu cầu đó

- Credential Conversion service: là dịch vụ trung gian chuyển đổi giữa các cơ chế ủy

nhiệm địa phương và các tổ chức ảo

- Identity Mapping service: là dịch vụ ánh xạ tài khoản người dùng trong một miền tới

một tài khoản đối với một miền khác

- Audit: dịch vụ log lại các sự kiện

Môi tr ường trình chủ (Hosting environment)

Trình chủ là môi trường để nuôi sống và phát triển các dịch vụ Dịch vụ lưới cũng tương tự như các dịch vụ Web khác, được xây dựng trên các môi trường trình chủ như J2EE hay NET Những trình chủ này cung cấp mức độ cao của an toàn bảo mật và hầu hết các chức năng an toàn bảo mật đều được đặt trên trình chủ do đó sẽ

Trang 22

làm cho việc phát triển đơn giản hơn và cho phép các chức năng được nâng cấp hoàn

toàn độc lập với các ứng dụng

Hình dưới đây đưa ra một ví dụ đã được đơn giản hóa của cách thức hoạt động

của mô hình OGSA Một yêu cầu xuất phát từ một OGSA client tới một OGSA service

Cả client và service đều được chứa trong các trình chủ (để đơn giản một số các chi

tiết về quá trình bảo mật như auditing (kiểm định), quá trình chứng nhận client được

Client đầu tiên sẽ tạo một yêu cầu tới một dịch vụ OGSA và truyền yêu cầu đó tới

trình chủ xử lý Các bước sau dùng để xử lý yêu cầu từ client:

- Trình chủ chứa client kiểm tra các chính sách an toàn bảo mật của dịch vụ được yêu

cầu để xác định những cơ chế và ủy nhiệm nào cần phải tuân theo để có thể đệ trình

yêu cầu

- Nếu trình chủ bên phía client xác định được rằng các cơ chế ủy nhiệm cần thiết chưa

có, thì nó sẽ yêu cầu một dịch vụ Credential Conversion Service để chuyển các giấy

ủy nhiệm đã có thành dạng cần thiết (ví dụ CAS để chuyển các giấy ủy nhiệm cá nhân thành giấy ủy nhiệm của VO, và KCA để chuyển giữa chuẩn Kerberos và PKI – Public Key Infrastructure)

- Trình chủ phía client sử dụng Token Processing và Validate Service (dịch vụ xử lý và kiểm tra) để xử lý các yêu cầu chứng thực khi giao tiếp với dịch vụ yêu cầu Chính dịch vụ này đã làm cho ứng dụng và trình chủ không phải quan tâm nhiều đến các chi tiết cụ thể

- Về phía server, trình chủ cũng sử dụng một dịch vụ xử lý việc chứng thực của client Sau quá trình chứng thực client, trình chủ phía server chuyển yêu cầu và thông tin về client tới một dịch vụ chứng thực ví dụ PERMIS hay Akenti để quyết định các quyền hạn thực thi

Nếu tất cả các bước trên đều thành công thì trình chủ phía server sẽ chuyển các yêu cầu đã được cho phép tới dịch vụ được yêu cầu để xử lý Ứng dụng biết rằng trình chủ đã đảm nhận toàn bộ việc bảo mật do đó chỉ tập trung vào việc xử lý yêu cầu

2.3.3 Minh h ọa cài đặt cơ chế an toàn bảo mật cho dịch vụ GRAM

Tài nguyên lưới bao gồm các các máy chủ, máy trạm, các siêu máy tính, các thiết bị lưu trữ kết nối với một lưới dữ liệu thông qua mạng truyền thông để cùng thực hiện một mục tiêu chung

Dịch vụ định vị tài nguyên GRAM (Globus Resource Allocation Management)

là dịch vụ của GT cho phép client có thể khởi tạo, quản lý, theo dõi an toàn bảo mật các nhiệm vụ tính toán trên các máy ở xa Việc tiến hành đối với GRAM là một trong những công việc phức tạp nhất bởi vì nó liên quan nhiều đến cả cơ chế an toàn bảo mật địa phương và các client từ xa Phần này sẽ trình bày việc cài đặt an toàn bảo mật trong GRAM để minh họa cho việc cài đặt cho các dịch vụ

Trang 23

Để có thể thực hiện công việc nhờ GRAM, một client phải mô tả công việc, chỉ

rõ những chi tiết về thư mục thực thi, nơi lưu trữ các đầu ra và đầu vào Những mô tả

này được gửi tới tài nguyên và kết quả là một thực thể của dịch vụ quản lý công việc

MJS (Managed Job Service) Một MJS là một dịch vụ của lưới cho phép khởi tạo công

việc, điều khiển, theo dõi công việc

MJS được tạo bởi một dịch vụ sinh MJS Về lý thuyết thì sẽ có tương ứng với

mỗi tài khoản người dùng một dịch vụ sinh MJS, tuy nhiên trong thực tế để tránh lãng

phí, GT chỉ thực thi một trình chủ sinh MJS là Master Managed Job Factory Service

(MMJFS)

Mỗi MMJFS chạy trên mỗi tài nguyên và triệu gọi dịch vụ sinh MJS địa phương

LMJFS (Local Managed Job Factory Services) dùng khi cần thiết Dịch vụ điều hướng

(Proxy Router service) dẫn những yêu cầu từ người dùng tới LMJFS nếu có (hoặc

MMJFS nếu LMJFS của người dùng đó không tồn tại) Với MJS factory thì có thể có

một hay nhiều thể hiện của MJS chạy cùng một lúc trên môi trường trình chủ

2/ Dịch vụ điều hướng Proxy Router nhận yêu cầu và gửi tới LMJFS nếu có (nhảy tới bước 6) hoặc gửi tới MMJFS (thực hiện tiếp bước 3)

3/ MMJFS xác nhận chữ ký trên yêu cầu sau đó xác định tài khoản cục bộ mà công việc

sẽ thực hiện dựa trên tài khoản đó sử dụng grid-mapfile, một file nằm trên máy cục bộ chứa những thông tin ánh xạ từ GSI vào tài khoản cục bộ

4/ MMJFS triệu gọi quá trình Setuid Starter để khởi tạo LMJFS Setuid Starter là chương trình có đặc quyền (ví dụ như setuid-root) mà chức năng duy nhất của nó là khởi tạo một LMJFS đã được cấu hình sẵn cho một người dùng

5/ Khi LMJFS đã được tạo, nó cần nhận được giấy ủy nhiệm và phải tự đăng ký với dịch

vụ điều hướng Proxy Router để nó thể nhận được các yêu cầu khác trong tương lai LMJFS triệu gọi Grid Resource Identity Mapper (GRIM) để nhận được giấy ủy nhiệm GRIM là một chương trình có đặc quyền truy cập và sinh ra các giấy ủy nhiệm cho LMJFS Giấy ủy nhiệm này chứa trong nó định danh người dùng lưới, tên người dùng cục bộ … để giúp cho người yêu cầu có thể đảm bảo đây đúng là LMJFS cần thiết 6/ LMJFS nhận được yêu cầu công việc, LMJFS kiểm định chữ ký trên yêu cầu để đảm bảo là nó không bị giả mạo và kiểm tra xem người yêu cầu có được quyền truy cập tài khoản người dùng cục bộ mà LMJFS đang chạy LMJFS khởi tạo một MJS và trả lại tham chiếu dịch vụ đến người dùng

7/ Người yêu cầu kết nối tới MJS để bắt đầu công việc Người yêu cầu và MJS kiểm chứng lẫn nhau trước khi tiến hành quá trình giao dịch MJS kiểm định xem requestor

có đủ thẩm quyền để thực thi trong tài khoản cục bộ hay không còn requestor kiểm định xem MJS có giấy ủy nhiệm (GRIM credential) hợp lý từ máy chủ hay không, điều này cho phép client không chỉ xác định được là MJS chạy trên đúng máy chủ mà còn chạy trên đúng tài khoản

Trang 24

Ch ương 3 HỆ THỐNG QUẢN LÝ TỔ CHỨC ẢO

3.1 T Ổ CHỨC ẢO

3.1.1 Khái ni ệm tổ chức ảo

Các ứng dụng lưới hiện tại có thể khác nhau về số lượng người tham gia, thời gian

diễn ra & mức độ các hoạt động trao đổi thông tin, lượng tài nguyên chia sẻ Song,

chúng đều có các điểm tương đồng về các cơ chế chia sẻ và sử dụng tài nguyên:

1/ Ràng buộc tài nguyên chia sẻ: Những người cung cấp tài nguyên, xác định các ràng

buộc sử dụng trên chính tài nguyên họ cung cấp Họ có quyền quyết định khi nào,

tài nguyên nào sẽ được chia sẻ

2/ Quan hệ chia sẻ: Mối quan hệ giữa các bên tham gia chia sẻ và sử dụng tài nguyên

là mối quan hệ ngang hàng, chứ không theo mô hình khách chủ Các tổ chức tham

gia, vừa có thể là bên cung cấp, vừa có thể là bên sử dụng

3/ Chính sách chia sẻ động: Sở dĩ gọi là động vì chính sách chia sẻ có thể thay đổi

liên tục, phụ thuộc vào quyết định của bên cung cấp tài nguyên Các bên tham gia

cần cập nhật liên tục các chính sách này để có phương án sử dụng thích hợp

Nhóm các cá nhân, tổ chức cùng tuân theo các cơ chế chia sẻ và sử dụng tài nguyên

như vậy, được gọi là tổ chức ảo (VO – Virtual Organization)

Hình 3- 1: T ổ chức ảo

Trong hình 3-1 là ví dụ về 2 tổ chức ảo P và Q Tổ chức ảo Q (bên phải hình vẽ) thực hiện các nghiên cứu về tia, tài nguyên sử dụng là năng lực tính toán của các đơn

vị tham gia Tổ chức ảo P có thể sử dụng chương trình B, dữ liệu D của tổ chức thật 3; chương trình A của tổ chức thật 1 Tổ chức ảo Q có thể sử dụng chu kỳ tính toán rảnh rỗi của các tổ chức thật 1và 2 Một số tài nguyên của tổ chức thật có thể tham gia vào cùng nhiều tổ chức ảo như chương trình A và các tài nguyên tính toán trên máy chứa nó (tổ chức thật 2)

Như vậy, tổ chức ảo thực chất là nhóm các cá nhân, đơn vị có cùng phạm vi và chính sách chia sẻ tài nguyên Các thành viên trong cùng VO chỉ được sử dụng các tài nguyên lưới trong phạm vi mà bên cung cấp tài nguyên – Resource Provider (RP) quy định cho VO đó Do đó, khi xem xét dưới góc độ tài nguyên, có thể coi lưới là kết quả của sự hợp tác giữa bên sử dụng - VO và bên cung cấp - RP

3.1.2 T ổ chức ảo và tài nguyên lưới

Vì lưới có nhiều người dùng và nhiều loại tài nguyên nên kéo theo phải quản lý một lượng lớn các thông tin về người dùng và các quyền của họ với tài nguyên Các thông tin này còn được gọi là thông tin phân quyền Các thông tin về phân quyền được chia ra thành hai loại:

Thông tin v ề người dùng trong tổ chức ảo: Các thông tin về tổ chức ảo, nhóm của người dùng trong tổ chức, vai trò của họ trong nhóm và các quyền tương ứng người đó được phép thực hiện

Thông tin v ề các quyền của người dùng với RP:

Phụ thuộc vào thông tin của người dùng trong VO, các thông tin ở RP sẽ được ánh xạ tương đương

Nhóm các thông tin về người dùng trong tổ chức ảo được quản lý tập trung tại server của VO, nhóm thông tin về quyền của người dùng với RP được lưu tại các tài

Trang 25

nguyên được yêu cầu Nhóm thông tin thứ hai được RP tạo ra dựa trên các chính sách

sử dụng tài nguyên lưới cục bộ và các thỏa thuận cam kết tài nguyên với VO Các thông

tin này được lưu dưới dạng danh sách quản lý các truy cập (Access Control List - ACL),

quyết định việc truy cập tài nguyên có được phép hay không

Dù vai trò của VO và RP là khác nhau trong việc quản lý và sử dụng tài nguyên,

nhưng sự phối hợp giữa chúng sẽ quyết định tính nhất quán trong chính sách sử dụng tài

nguyên của toàn bộ lưới

Điều kiện đầu tiên cho một người dùng muốn tham gia lưới, họ phải là thành viên

của một VO nào đó Tổng quát, họ có thể là thành viên của nhiều VO khác nhau Trong

mỗi VO, người dùng lại có các vai trò khác nhau Yêu cầu được đặt ra là: ngay sau khi

người dùng đăng nhập, họ có quyền chọn các VO mà họ tham gia Các quyền tương ứng

với vai trò của họ trong VO đó phải được xác định ngay sau đó

Về phía RP, căn cứ vào vai trò người dùng lưới trong VO, sẽ ánh xạ họ vào các

người dùng địa phương trên máy cục bộ Các quyền của người dùng địa phương phải

đảm bảo cho người dùng lưới thực thi được các quyền của họ trong VO Do đó, đảm

bảo được tính nhất quán trong chính sách sử dụng tài nguyên của VO nói riêng và toàn

bộ lưới nói chung

Hình 3- 2: Ng ười dùng lưới với VO và RP

Mỗi nhóm có một hoặc nhiều người quản trị Có 2 cấp độ quản trị là quản lý nhóm

và quản trị toàn bộ VO Ở mức nhóm, các công việc quản trị là quản lý thành viên trong nhóm, xử lý các yêu cầu tham gia nhóm, gán các quyền quản trị cho thành viên trong nhóm Lên tới cấp độ toàn VO, người quản trị có thêm quyền xét duyệt đơn đăng ký tham gia vào VO

Trang 26

Mỗi nhóm được biểu diễn bởi một đỉnh của đồ thị (nút), mỗi quan hệ giữa hai

nhóm được biểu diễn bằng một cạnh có hướng VO ban đầu là nhóm gốc, là cha của

chính nó Ngoại trừ nhóm gốc, mỗi nhóm có thể có nhiều nhóm cha Tuy nhiên, một

nhóm không được phép là nhóm con của chính con nó, để đảm bảo không có chu trình

trong đồ thị

3.1.3.2 Thông tin ng ười dùng

Do cấu trúc tổ chức phân cấp của VO mà khi người dùng được phân vào nhóm

con, thì người đó cũng đồng thời là thành viên của nhóm cha Chính xác hơn, người

dùng đó là thành viên của tất cả các nhóm nằm trên đường nối từ nhóm con đến nút gốc

trên đồ thị

Người dùng trong nhóm được đặc trưng bởi vai trò và các quyền tương ứng với

vai trò đó Khi người dùng tham gia nhóm, họ sẽ giữ một vai trò nào đó, đơn giản có thể

là “Group Member”… hoặc cao nhất là VO-Admin Phạm vi của vai trò chỉ được giới

hạn trong nhóm Sự khác nhau giữa nhóm và vai trò thể hiện ở chỗ: các nhóm người

dùng tham gia luôn được chỉ rõ, còn vai trò của người dùng thì có thể được tùy chọn

trong danh sách các vai trò có sẵn

Có th ể bi ể u di ễ n c ấ u trúc c ủ a VO b ằ ng đồ th ị có h ướ ng không chu trình

Tương ứng với vai trò là các quyền họ được phép làm Vai trò và các quyền được kế thừa từ các nhóm cha của nhóm mà người dùng đang tham gia

Để kết luận, ta đưa ra mô hình:

Người dùng U là thành viên của nhóm {G1, G2… Gn} Quan hệ của người dùng

U với nhóm Gk, được đặc trưng bởi bộ ba (Gk, Rk, Ck) tương ứng với thông tin về thành viên nhóm, vai trò, quyền Các thông tin phân quyền đầy đủ về U sẽ là (G1, R1,

C1)… (Gn, Rn, Cn)

Bộ ba thuộc tính này phản ánh sự thỏa thuận giữa bên yêu cầu VO và bên thực thi

RP VO cung cấp các thông tin về quyền của người dùng, và RP có nhiệm vụ đảm bảo thực thi các quyền đó Lấy ví dụ như lưới dữ liệu CERN được coi như tổ chức ảo VO

có hai nhóm là sản xuất (production) và sao lưu (replicator) Các vai trò có thể trong nhóm là quản trị VO (VO-admin) và quản trị nhóm (Admin) Mỗi thành viên nhóm có các quyền thực thi lâu dài (long-job) hay là lưu trữ lớn (large-space)

3.1.3.3 Định dạng thông tin VO

Người dùng trong VO có 3 thuộc tính cơ bản là nhóm, vai trò và quyền Cả 3 thuộc tính này được gọi chung là “Tên thuộc tính đầy đủ” - “Fully Qualified Attribute Names” (FQAN)

Cú pháp: /VO[/group[/subgroup(s)]][/Role = role][/Capability = cap] Ví dụ:

Vai trò Administrator trong group AGP của VO hpcc.hut.edu.vn là:

/hpcc.hut.edu.vn/AGP/Role=Administrator

3.1.3.4 Thông tin v ề các quyền người dùng với RP

Ứng với các thông tin về người dùng trong VO, một cơ chế khác trên RP tự động thực hiện để luôn đảm bảo các quyền người dùng trên RP thực hiện nhất quán với chính sách tài nguyên của VO Cơ chế ánh xạ gridmap được sử dụng Nhiệm vụ của nó là ánh

xạ thông tin người dùng vào các tài khoản cục bộ trên máy thực thi

Trang 27

Tài khoản cục bộ có các quyền gì trên tài nguyên lưới, người dùng lưới sẽ có

các quyền như vậy Vậy làm thế nào để xác định được tài khoản nào sẽ được gán cho

người dùng lưới? Nếu cơ chế ánh xạ hoạt động sai lệch sẽ ảnh hường trực tiếp đến

tính đúng đắn cho chính sách sử dụng tài nguyên cũng như an toàn cho cả hệ thống

thực thi

Cơ chế ánh xạ dựa trên việc tự động thiết lập một kênh trao đổi thông tin an

toàn giữa VO và RP Phía RP sẽ định kỳ theo dõi các thông tin từ phía VO, cập nhật

các người dùng mới cũng như các quyền của họ Kết hợp với các chính sách tài nguyên

cục bộ cũng như các thỏa thuận đã ký với VO, RP chọn ra tài khoản phù hợp để ánh

xạ cho đúng

Như vậy, để quản lý thông tin về quyền của người dùng trong lưới, ta chia các

thông tin của họ theo phạm vi họ thuộc vào (bên sử dụng tài nguyên – VO) và bên cung

cấp tài nguyên cho họ (RP) Để quản lý các thông tin thành viên trên VO, chúng ta sẽ

sử dụng dịch vụ thành viên tổ chức ảo – Virtual Organization Membership Service

(VOMS) Các thông tin về quyền người dùng sẽ được quản lý bởi dịch vụ ánh xạ

EDG-MKGRIDMAP

3.2 H Ệ THỐNG QUẢN LÝ TỔ CHỨC ẢO

Dịch vụ thành viên tổ chức ảo VOMS là nỗ lực phát triển chung của hai dự án

Lưới dữ liệu Châu Âu - European DataGrid và Atlantic Trải qua hơn 10 năm phát

triển, ngày nay VOMS đã được tích hợp sẵn trong Glite và là thành phần không thể

tách rời trong mô hình quản lý người dùng lưới theo tổ chức ảo của cộng đồng lưới

này

VOMS cho phép quản lý thông tin phân quyền của người dùng trong VO theo

thời gian thực Các thông tin phân quyền được lưu bao gồm các thông tin chứng thực,

vai trò người dùng và các quyền của họ trong VO VOMS cung cấp thêm các thông tin

bổ sung vào giấy phép của người dùng RP sẽ căn cứ vào các thông tin này để phân

quyền

Hình 3- 4: Ki ến trúc VOMS

Hình 3-4 minh họa các tương tác giữa người dùng với VOMS 2 loại người dùng tương tác với hệ thống là người dùng lưới và người quản trị VO Người dùng lưới đăng ký và xin giấy phép hoạt động với VOMS Người quản trị quản lý VO và

xử lý các yêu cầu gia nhập

3.2.1 Ng ười dùng với VOMS

3.2.1.1 Ng ười dùng lưới với VOMS

Muốn sử dụng tài nguyên trong lưới, người dùng phải tham gia vào VO có quyền

sử dụng tài nguyên đó Việc đầu tiên người dùng cần làm là đăng ký thành viên với người quản trị VO Mỗi người dùng có thể đăng ký với nhiều VO khác nhau Sau khi được chấp nhận, người dùng xin chứng nhận tạm thời (proxy cerfiticate) để có quyền truy cập tài nguyên

Cụ thể, quy trình người dùng xin gia nhập VO như sau:

1/ Người dùng sở hữu chứng chỉ số của CA được VOMS Server tín nhiệm Người dùng truy cập web admin của VOMS Server, cung cấp một số thông tin cá nhân, đồng ý với các điều khoản sử dụng lưới của VO và nộp đơn xin gia nhập

Trang 28

2/ Một email được gửi tới hòm thư của người dùng Người dùng nhận được email, lựa

chọn đồng ý tiếp tục quá trình đăng ký

3/ Người dùng chờ quyết định từ VO-Admin xem xét đơn gia nhập VO Một email

thông báo sẽ được gửi tới người dùng khi có kết quả xét duyệt của người quản trị

VO

Hình 3- 5: Quy trình xin đăng ký dùng lưới tính toán

grid-proxy-init là công cụ để cấp phép chứng chỉ số tạm thời cho người dùng

lưới Thay vì sử dụng grid-proxy-init, ta sẽ sử dụng voms-proxy-init để xin cấp chứng

thực quyền thành viên Giống như công cụ grid-proxy-init, công cụ voms-proxy-init cũng

tạo ra chứng chỉ số tạm thời cho người dùng lưới, và gắn thêm các thông tin về phân

quyền của người dùng từ VOMS server

Các thông tin này bao gồm giấy ủy quyền của người dùng, của VOMS server và

thời hạn của chứng nhận tạm thời Tất cả các thông tin này sau đó đều được xác nhận

bằng chữ kỹ số của VOMS server Các chứng nhận do voms-proxy-init sinh ra đều hoạt

động tốt với các hệ thống cũ không hỗ trợ VO để đảm bảo tính tương thích ngược

Quy trình người dùng xin chứng chỉ số tạm thời như sau như sau:

1/ Người dùng và VOMS server xác thực lẫn nhau

2/ Người dùng gửi yêu cầu xin chứng thực đến VOMS server

3/ VOMS server xác nhận thành viên & vai trò của người dùng trong VO và kiểm tra lại

yêu cầu; sau đó cấp và trả lại cho người dùng các thông tin được yêu cầu

4/ Người dùng kiểm tra các thông tin nhận được

Hình 3- 6: Quy trình xin ch ứng nhận VOMS

Ngoài các thuộc tính cơ bản của chứng nhận lưới, chứng nhận tạm thời gắn thêm các thuộc tính nhận được từ VOMS server Ngoài ra, người dùng có thể tích hợp thêm các thuộc tính xác thực khác như phương pháp Kerberos, nhãn thời gian…

Sau khi có chứng nhận VO từ VOMS, người dùng gửi các chứng nhận này đến đến RP để sử dụng tài nguyên Để kiểm tra quyền, Gatekeeper bên phía thực thi sẽ tách các thuộc tính bổ sung từ VOMS, kiểm định và xác thực các thuộc tính phân quyền Các thuộc tính này, kết hợp với chính sách sử dụng tài nguyên trước đó giữa VO và

RP, sẽ quyết định các tài nguyên người dùng được phép sử dụng Các thuộc tính này là không bắt buộc, nên các chứng thực do VOMS sinh ra vẫn đảm bảo tính tương thích ngược, tức là làm việc được với các hệ thống không hỗ trợ kiểm tra các thuộc tính về phân quyền

Trang 29

3.2.1.2 Ng ười quản trị với VOMS

Người quản trị VOMS được chia ra 2 cấp độ quản trị Ở cấp độ quản lý nhóm,

họ quản lý quyền, thành viên của các nhóm con trong VO Ở cấp độ toàn VO, người

quản trị có thêm nhiệm vụ quản lý các đơn gia nhập VO

Cụ thể, người quản trị nhóm có các quyền sau:

Hình 3- 7: Ng ười quản trị nhóm với hệ thống

Người quản trị nhóm phụ trách quản lý người dùng (thêm, xóa, tìm kiếm), quản

lý nhóm (thêm, xóa, tìm kiếm, quản lý ACL cho nhóm), quản lý vai trò (thêm, xóa, tìm

kiếm), quản lý thành viên (thêm, bớt; gán, gỡ bỏ vai trò của các thành viên) Người

quản trị VO thừa kế các quyền quản lý của quản trị nhóm

Hình 3-8: Qu ản trị nhóm và quản trị VO

Ngoài ra, quản trị VO còn có thêm các quyền quản lý riêng ở cấp độ toàn tổ chức Đó

• Server quản trị: xử lý các yêu cầu từ phía máy khách, cập nhật, sửa đổi cơ sở dữ liệu

• Client quản trị: đóng vai trò người quản trị VO ( thêm người dùng, tạo, xóa nhóm, thay đổi vai trò…)

Phía người dùng bao gồm:

• Server người dùng: nhận các yêu cầu từ phía máy khách và trả lại các thông tin về người dùng

Ngày đăng: 13/08/2016, 10:42

HÌNH ẢNH LIÊN QUAN

Hình 2- 7: Cấu trúc phân cấp Nhà cung cấp và quản lý chứng chỉ số - Nghiên cứu việc đảm bảo an toàn thông tin Các chính sách bảo đảm an ninh cho hệ thống lưới
Hình 2 7: Cấu trúc phân cấp Nhà cung cấp và quản lý chứng chỉ số (Trang 17)
Hình 2- 13: Cơ chế thực hiện của GRAM - Nghiên cứu việc đảm bảo an toàn thông tin Các chính sách bảo đảm an ninh cho hệ thống lưới
Hình 2 13: Cơ chế thực hiện của GRAM (Trang 23)
Hình 3- 5: Quy trình xin đăng ký dùng lưới tính toán. - Nghiên cứu việc đảm bảo an toàn thông tin Các chính sách bảo đảm an ninh cho hệ thống lưới
Hình 3 5: Quy trình xin đăng ký dùng lưới tính toán (Trang 28)
Hình 3-8: Quản trị nhóm và quản trị VO. - Nghiên cứu việc đảm bảo an toàn thông tin Các chính sách bảo đảm an ninh cho hệ thống lưới
Hình 3 8: Quản trị nhóm và quản trị VO (Trang 29)
Hình 4- 3: Mô hình bảo mật cho GOODAS - Nghiên cứu việc đảm bảo an toàn thông tin Các chính sách bảo đảm an ninh cho hệ thống lưới
Hình 4 3: Mô hình bảo mật cho GOODAS (Trang 38)
Hình 4- 6: Email thông báo có người đăng ký lưới mới cho VO Admin. - Nghiên cứu việc đảm bảo an toàn thông tin Các chính sách bảo đảm an ninh cho hệ thống lưới
Hình 4 6: Email thông báo có người đăng ký lưới mới cho VO Admin (Trang 40)
Hình 4- 8: Quản lý email cá nhân và thông tin thành viên của người dùng - Nghiên cứu việc đảm bảo an toàn thông tin Các chính sách bảo đảm an ninh cho hệ thống lưới
Hình 4 8: Quản lý email cá nhân và thông tin thành viên của người dùng (Trang 41)
Hình 4- 10: Chi tiết nhóm - Nghiên cứu việc đảm bảo an toàn thông tin Các chính sách bảo đảm an ninh cho hệ thống lưới
Hình 4 10: Chi tiết nhóm (Trang 41)
Hình 4- 11: Tạo nhóm mới. - Nghiên cứu việc đảm bảo an toàn thông tin Các chính sách bảo đảm an ninh cho hệ thống lưới
Hình 4 11: Tạo nhóm mới (Trang 41)
Hình 4- 9: Liệt kê các nhóm trong VO. - Nghiên cứu việc đảm bảo an toàn thông tin Các chính sách bảo đảm an ninh cho hệ thống lưới
Hình 4 9: Liệt kê các nhóm trong VO (Trang 41)
Hình 4- 13: Tìm kiếm nhóm - Nghiên cứu việc đảm bảo an toàn thông tin Các chính sách bảo đảm an ninh cho hệ thống lưới
Hình 4 13: Tìm kiếm nhóm (Trang 42)
Hình 4- 16: Tìm kiếm chức năng. - Nghiên cứu việc đảm bảo an toàn thông tin Các chính sách bảo đảm an ninh cho hệ thống lưới
Hình 4 16: Tìm kiếm chức năng (Trang 43)
Hình 4- 19: Các đơn đăng ký đã duyệt - Nghiên cứu việc đảm bảo an toàn thông tin Các chính sách bảo đảm an ninh cho hệ thống lưới
Hình 4 19: Các đơn đăng ký đã duyệt (Trang 44)
Hình 4- 23: Đồng bộ VOMS và VOMRS - Nghiên cứu việc đảm bảo an toàn thông tin Các chính sách bảo đảm an ninh cho hệ thống lưới
Hình 4 23: Đồng bộ VOMS và VOMRS (Trang 52)
Hình 4- 24: Kiến trúc GUMS - Nghiên cứu việc đảm bảo an toàn thông tin Các chính sách bảo đảm an ninh cho hệ thống lưới
Hình 4 24: Kiến trúc GUMS (Trang 52)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w