Luận văn đã đạt được các kết quả như sau:
1. Trinh bày tổng quan về an toàn thông tin, hàm băm, chữ ký số
2. Trình bày chi tiết về công nghệ Sharepoint cùng với các ứng dụng của
Sharepoint trong việc xử lý văn bản và chia sẻ tài liệu.
3. Đưa ra các lỗ hổng bảo bật trong Sharepoint và các giải pháp khắc phục
cho từng lỗ hổng này
4. Đưa ra các giải pháp bảo mật, phân tích ưu nhược điểm của từng phương
pháp
5. Đề xuất giải pháp “tích hợp chữ ký số” để nâng cao tính bảo mật trong
Sharepoint.
6. Xây dựng thành công một ứng dụng chia sẻ và xử lý văn bản bằng
Sharepoint
7. Tích hợp được chức năng sử dụng chữ ký số vào Sharepoint
Các nội dụng được trình bày đã thể hiện được những mong muốn chính của
tác giả trong luận văn, cùng với đó mở ra một hướng nghiên cứu bảo mật mới
cho Sharepoint. Tuy nhiên, chương trình demo còn khá sơ sài, chưa áp dụng
được việc mã hóa, giải mã cho nhiều định dạng văn bản. Trong tương lai, tác giả
sẽ giải quyết vấn đề này và đưa ra một chương trình thân thiện với người sử
dụng hơn nữa, để có thể áp dụng vào thực tế một các thành công.
                
              
                                            
                                
            
 
            
                 73 trang
73 trang | 
Chia sẻ: yenxoi77 | Lượt xem: 1032 | Lượt tải: 0 
              
            Bạn đang xem trước 20 trang tài liệu Luận văn Nghiên cứu giải pháp tích hợp chữ ký số cho ứng dụng dựa trên công nghệ Sharepoint, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
load-balanced across from end Web server
Front-end Web Servers
stateless design
Back-end Database Server
store for lists and documents
Hình 10:WSS cần một CSDL cấu hình và một hoặc nhiều CSDL nội dung 
WSS làm việc thông qua 2 cơ sở dữ liệu SQL Server : CSDL cấu hình 
(configuration databases) và CSDL nội dung (content databases). CSDL cấu 
hình lưu trữ các thông tin cấu hình triển khai cho mỗi máy chủ Web, máy chủ ảo 
trong IIS và các WSS Web site còn CSDL nội dung lưu trữ dữ liệu liên quan đến 
các WSS Web sites. 
WSS chỉ có một CSDL cấu hình trong mỗi hệ thống triển khai, đối với một 
hệ thống triển khai đơn giản ta chỉ cần một máy tính chạy cả máy chủ Web và 
máy chủ CSDL SQL với một CSDL cấu hình và một CSDL nội dung. Hệ thống 
triển khai phức tạp hơn là một cụm máy chủ với nhiều máy chủ Web và một hay 
nhiều máy chủ CSDL SQL Server. Tuy nhiên trong tất cả các trường hợp này, 
chỉ có một CSDL cấu hình duy nhất. CSDL cấu hình là nơi cung cấp các thông 
tin giúp liên kết tất cả các máy chủ Web và máy chủ CSDL. 
Mỗi CSDL nội dung lưu trữ dữ liệu cho một hay nhiều WSS Web sites. Dữ 
liệu của WSS được lưu trữ trên các site cơ sở bao gồm các danh sách (list) và 
các tài liệu (documents) cũng như các thông tin gắn liền với tùy biến và cá nhân 
20 
hóa. Mọi thứ được lưu trữ trong CSDL làm cho việc sao lưu, phục hồi các Web 
sites trở nên rất dễ dàng đối với WSS. 
Nếu nhìn từ mức cao, kiến trúc hệ thống của WSS sẽ như sau: 
Hình 11: Khung nhìn mức cao về WSS 
Có ba loại thành phần máy chủ: 
 Một hay nhiều máy chủ Web (front-end Web servers) 
 Một cơ sở dữ liệu cấu hình 
 Một hay nhiều máy chủ cơ sở dữ liệu nội dung 
Ta có thể cài đặt cả ba thành phần này trên một máy tính, hoặc trên nhiều 
máy trong một cụm máy chủ (server farm). Tất cả các thông tin trạng thái được 
lưu trữ trong CSDL cấu hình và CSDL nội dung trong Microsoft SQL Server. 
Trong một cụm máy chủ chạy WSS, các máy chủ Web là các bản sao không 
trạng thái (stateless clone). Một yêu cầu có thể được gửi tới bất kỳ một máy chủ 
nào dứa trên hệ thống cân bằng tải (load balancing system), và bất kỳ site nào 
cũng có thể được phục vụ bởi bất kỳ máy chủ nào. Các máy chủ Web kết nối tới 
hệ thống máy chủ CSDL để lấy dữ liệu cho phép nó xây dựng và trả về các trang 
web tới máy khách. Khi một máy chủ web bị ngừng hoạt động, các yêu cầu lập 
tức được chuyển cho các máy chủ web khác, điều này giúp hệ thống vẫn hoạt 
động bình thường. 
Máy chủ CSDL nội dung chứa nội dung các site, bao gồm tài liệu, tệp trong 
thư viện tài liệu, dữ liệu dạng bảng (List), các thuộc tính của Webpart, tên người 
21 
dùng, quyền. Không giống máy chủ Web, các máy chủ CSDL nội dung là không 
giống nhau, tất cả dữ liệu của một site nào đó nằm trên một CSDL nội dung trên 
chỉ một máy tính. SQL Server cung cấp khả năng phục hồi để giúp hệ thống 
không bị ngưng trệ nếu CSDL bị hỏng. 
CSDL cấu hình lưu trữ tất cả các thông tin quản trị về mặt triển khai, chỉ dẫn 
các yêu cầu tới các CSDL nội dung phù hợp, và quản lý cân bằng tải cho các 
máy chủ CSDL. Khi một máy chủ web nhân một yêu cầu về một trang trên một 
site nào đó, nó sẽ kiểm tra CSDL cấu hình để xem xét xem CSDL nội dung nào 
chứa dữ liệu về site này. 
2.1.3. Cấu hình WSS 
WSS có thể được cấu hình theo hai hình thức: stand-alone và farm server 
2.1.3.1. Stand-alone Server 
Cấu hình theo kiểu một máy chủ có các đặc điểm sau: 
 Có một máy chủ chạy WSS 
 Các site và sub-site được nhóm lại trong tập hợp site (Site Collection) 
trong mỗi máy chủ ảo (Virtual Server) trong IIS. Một bộ lọc ISAPI 
(Internet Server Applications Program Interface) dựa vào các URL để chỉ 
ra site trên máy chủ ảo đó 
 Mỗi máy chủ ảo đều có riêng một tập hợp các CSDL nội dung trong SQL 
Server còn CSDL cấu hình sẽ kết nối mỗi máy chủ ảo tới CSDL nội dung 
tương ứng với một Web site cho sẵn.. 
2.1.3.2. Server farm 
Kiến trúc theo kiểu server farm có các đặc điểm sau: 
 Có nhiều máy chủ chạy Windows SharePoint Services và SQL server 
 Các site được nhóm vào trong các Site Collection trên mỗi máy chủ ảo 
trên IIS có Windows SharePoint Services. Bộ lọc ISAPI sử dụng các URL 
để định vị các site. 
 Mỗi máy chủ ảo có riêng một CSDL nội dung trong SQL Server. CSDL 
cấu hình sẽ kết nối mỗi máy chủ tới CSDL nội dung tương ứng với các 
Web site 
22 
 Hiệu năng và khả năng sẽ được nâng cao bằng cách thêm các máy chủ 
vào 
 Tải cân bằng sẽ đạt được bằng cách sử dụng các phần cứng chuyển mạch 
và dẫn đường, hoặc dùng phần mềm Windows Network Load Balancing 
Service 
Hình 12: Server Farm 
2.1.4. Máy chủ ảo và Web IIS 
Cấu hình các Website WSS bắt đầu ở mức độ các Website IIS. Một Website 
mặc định của IIS tên là "Default Web Site" được cấu hình chạy trên cổng 80. Ta 
có thể sử dụng IIS để tạo thêm các Website chạy trên các cổng khác. Hình sau là 
23 
ví dụ của máy chủ IIS chạy máy chủ ảo được cấu hình cho phép người dùng truy 
cập. 
Hình 13: Mỗi Web site IIS có thể được cấu hình như là một máy chủ ảo chạy 
WSS 
Trong thuật ngữ của SharePoint, một Website IIS được coi như là một máy 
chủ ảo (virtual server). Máy chủ ảo phải được triển khai với WSS để chạy các 
Website WSS. Khi cài đặt WSS, một cách mặc định nó sẽ tự động triển khai 
máy chủ ảo chạy trên cổng 80. Ta cũng có thể triển khai WSS trên một máy chủ 
ảo khác bằng cách sử dụng SharePoint Central Administration. 
WSS không giống ASP.NET ở chỗ nó không cấu hình mỗi Website bằng 
cách dùng thư mục ảo của IIS. Thay vào đó, WSS theo dõi tất cả các thông tin 
cấu hình cho Website WSS bên trong cơ sở dữ liệu nội dung và cơ sở dữ liệu 
cấu hình. Điều này có nghĩa là một khi WSS triển khai trong máy chủ ảo và ta 
tạo ra các Website WSS thì toàn bộ chúng sẽ được tạo ra trong cơ sở dữ liệu cấu 
hình và cơ sở dữ liệu nội dung tương ứng. Trong thực tế, IIS không biết việc có 
hay không máy chủ ảo triển khai WSS chứa một Website WSS hay 10.000 
Website WSS, bởi vì WSS không cần cấu hình thư mục ảo IIS cho mỗi Website 
WSS, điều này làm tăng khả năng mở rộng và bảo trì. 
24 
Khi WSS chạy trong một máy chủ ảo, nó cài đặt một bộ lọc ISAPI được gọi 
là bộ lọc WSS nhằm chặn các yêu cầu tới máy chủ ảo và kiểm tra xem yêu cầu 
này là gửi tới IIS hay WSS. Để có được sự kiểm tra này, bộ lọc WSS xem xét 
URL của yêu cầu gửi đến và “hỏi” cơ sở dữ liệu cấu hình xem thành phần nào sẽ 
xử lý nó. 
Khi WSS triển khai lên một máy chủ ảo, nó tự động gắn file web.config vào 
thư mục gốc của máy chủ ảo chứa nó. File web.config cung cấp thiết lập cấu 
hình khởi tạo cho WSS và mã ASP.NET chạy bên trong máy chủ ảo này. Một 
cách mặc định, file cấu hình này chứa các thiết lập bảo mật cho Website. 
2.1.5. Site và Site Collection 
Trong máy chủ ảo, WSS sites được phân chia bằng cách sử dụng tập hợp site 
(Site Collection), là một tập hợp của một hay nhiều site tạo thành một đơn vị sở 
hữu. Một tập hợp site bao gồm một site mức trên cùng (top-level site) có cùng 
địa chỉ URL như tập hợp site. Tập hợp site có thể có nhiều các site con liên quan 
đến site mức trên cùng theo mối quan hệ cha – con. Mỗi site phải được tạo ra 
trong một tập hợp site nào đó và tất cả các site trong cùng một tập hợp site đều 
được chứa trong cùng một CSDL nội dung. 
Virtual Server
Site Collection
../
Site
../Site1
Site
../Site2
Site
../Site3
Site
../Site2A
Site
../Site2B
Top-level Site
../
Site Collection
../sites/Staff
Site
../Site1
Top-level Site
../
Site Collection
../sites/Sales
Top-level Site
../
Hình 14: Site collections 
Có thể hiểu một site WSS: 
25 
 Là một “thùng” chứa nội dung: nội dung site đơn thuần được chứa trong 
dạng danh sách (List), thư viện tài liệu (Document Library), và các site 
con. 
 Là một thực thể bảo mật trong đó nội dung của nó có thể truy cập và được 
cấu hình bởi người dùng phù hợp. Một site có thể tự định nghĩa các người 
dùng của nó hoặc kế thừa người dùng từ site ở mức trên. Mỗi người dùng 
site là một tài khoản Windows được định nghĩa trong vùng (domain) 
Active Directory hoặc CSDL tài khoản bảo mật cục bộ của Windows. 
Một site cũng chứa tập hợp nhóm và quyền để định nghĩa mức độ truy cập 
mà người dùng có để thao tác trên danh sách hoặc thư viện tài liệu. 
 Là một ứng dụng web với khả năng mở rộng và hỗ trợ rất sâu việc tùy 
biến giao diện người dùng. Người dùng sở hữu site hoặc người có quyền 
thiết kế web (Web designer) có thể tùy biến cách tổ chức và hiển thị của 
các trang trong site và chỉnh sửa cấu trúc truy cập đến site bằng cách sử 
dụng trình duyệt hoặc FrontPage. 
 Là một cơ sở để sử dụng Webpart. Người sở hữu site hoặc người xây 
dựng web có thể tùy biến các trang Webpart bằng cách thêm và cấu hình 
các Webpart chia sẻ. một người dùng có thể cá nhân hóa một trang 
Webpart bằng cách chỉnh sửa, thêm, xóa Webpart. Tất cả dữ liệu liên 
quan đến tùy biến và cá nhân hóa Webpart trên các trang Webpart được tự 
động lưu vào CSDL nội dung 
WSS hỗ trợ nhiều mẫu site khác nhau khi tạo ra các site ta gọi đó là các site 
template. Site template là một bản thiết kế định nghĩa tập hợp các bảng (list), thư 
viện tài liệu và Webparts tồn tại trong site mới. WSS có 8 loại mẫu: Team Site, 
Blank Site, Document Workspace, Basic Meeting Workspace, Blank Meeting 
Workspace, Decision Meeting Workspace, Social Meeting Workspace, và 
Multipage Meeting Workspace; ta cũng có thể tự mình thêm vào các mẫu site 
mới để thuận tiện cho việc sử dụng. Khi một trang được truy cập lần đầu sau khi 
khởi tạo, WSS nhắc người dùng chọn các mẫu site bằng cách sử dụng giao diện 
HTML. 
26 
2.2. Share point portal server (SPS) 
2.2.1. Tổng quan về SPS 
SPS là một sản phẩm dùng để xây dựng các portal quy mô xí nghiệp, được 
thiết kế để đáp ứng mục đích tích hợp (intergration), hợp tác (collaboration), 
tùy biến và cá nhân hóa (personalization & customization) trong các tổ chức 
doanh nghiệp có qui mô vừa và lớn. Nó cho phép tổ chức phát triển một cổng 
thông tin thông minh nhằm kết nối người dùng, nhóm, kiến thức vì thế mọi 
người lấy được các thông tin liên quan về công việc để giúp họ làm việc và hợp 
tác một cách hiệu quả hơn. 
SPS được xây dựng dựa trên nền Windows SharePoint Services (WSS), nó 
làm phong phú thêm WSS bằng cách đưa vào các đặc trưng thiết kế có khả năng 
điều khiển, nó cũng hỗ trợ thêm các chức năng để nâng cao các trang portal 
bằng cách sử dụng đánh chỉ mục, tìm kiếm, nhóm thảo luận và dịch vụ đăng 
nhập một lần Có một sự khác biệt cơ bản về vai trò của WSS và SPS: WSS 
được xây dựng để phục vụ cho mục đích cộng tác do vậy nó được thiết kế để lưu 
trữ và chia sẻ các dữ liệu dựa trên danh sách (list-based data) và các tài liệu 
(documents); trong khi đó SPS lại được xây dựng để phục vụ cho việc tổng hợp 
nội dung từ nhiều nguồn khác nhau. 
Thực chất WSS cung cấp cho ta một vị trí để đưa vào các nội dung còn SPS 
là phương tiện để định hướng và tìm kiếm các thông tin mà ta cần. Hai vai trò 
này bổ trợ cho nhau rất thuận lợi trong việc phát triển ứng dụng, chẳng hạn WSS 
cho phép một tổ chức quy mô xí nghiệp tạo ra và lưu trữ hàng ngàn trang Web 
site, trong khi đó một hoặc nhiều trang portal SPS cho phép người dùng tìm 
kiếm xuyên qua các nội dung đó và lọc ra những gì mà họ đang tìm kiếm. Cũng 
cần nói thêm rằng, SPS phụ thuộc vào WSS để có thể đưa ra các dịch vụ cần 
thiết, chẳng hạn: WSS cung cấp cho SPS khả năng theo dõi các thành viên cũng 
như các danh sách và tài liệu chia sẻ; hơn nữa, SPS không hỗ trợ việc sinh ra các 
đoạn mã chương trình để tạo giao diện cho một trang Portal, thay vào đó tác 
động đến WSS Smart Page và cơ sở hạ tầng Webpart bên dưới nhằm tạo ra giao 
diện người dùng. 
27 
 SharePoint Portal Server có thể tích hợp thông tin từ nhiều hệ thống khác 
nhau với các công cụ quản lý và triển khai linh động. Tổ chức doanh nghiệp có 
thể bắt đầu triển khai với một qui mô nhỏ bằng một máy chủ, sau đó xây dựng 
công thông tin cho mình bằng các phương pháp division-driven, bottom-up. Khi 
nhu cầu tăng lên, họ có thể nâng cấp hệ thống một cách đơn giản bằng cách 
thêm các máy chủ. Một sự lựa chọn khác là triển khai một cấu trúc cổng thông 
tin theo kiểu top-down, với các dịch vụ đáp ứng mọi yêu cầu, mọi qui mô của tổ 
chức, lựa chọn này được hoàn thành bằng cách cài đặt SharePoint Portal Server 
trên một cụm máy chủ (server farm) sử dụng kiến trúc đa tầng. 
Như đã nói ở trên, mục đích của SPS là : tích hợp, hợp tác, tùy biến và cá 
nhân hóa. Sau đây ta sẽ giải thích các vấn đề này. 
a. Khả năng tích hợp 
SharePoint Portal Server cung cấp một điểm truy cập đơn nhất tới nhiều hệ 
thống, ví dụ như hệ thống Microsoft Office, hệ thống quản lý dự án, và các ứng 
dụng doanh nghiệp. Portal này được xây dựng trên một kiến trúc khả chuyển, 
phân tán cao, với các công cụ triển khai và quản lý linh động, cho phép nó phát 
triển cùng nhu cầu của doanh nghiệp. Các đặc điểm tích hợp cho phép người 
dùng khai thác thông tin trong công ty một cách hiệu quả, họ có thể trích lược và 
tái sử dụng các thông tin liên quan từ nhiều hệ thống. Với khả năng tìm kiếm 
toàn diện, portal cho phép người dùng tổ chức tài liệu và thông tin theo chủ đề, 
giúp cho họ sử dụng dữ liệu một cách nhanh chóng và hiệu quả. 
b. Khả năng hợp tác 
SharePoint Portal Server cung cấp một môi trường hợp tác mạnh mẽ giữa các 
cá nhân, các nhóm, và các chi nhánh. Nó cho phép các tổ chức tụ hợp, sắp xếp, 
tìm kiếm các trang SharePoint trong toàn bộ tập đoàn. Các trang SharePoint 
dành cho nhóm, tài liệu, hội nghị cũng có thể được chia sẻ với khách hàng, đối 
tác, làm tăng thêm sự hiệu quả của các phương cách hợp tác. SPS đưa ra các tài 
liệu và công cụ hợp tác nội dung làm thuận lợi cho các hợp tác dây chuyền (end 
to end). 
c. Khả năng tùy biến và cá nhân hóa 
28 
SharePoint Portal Server cho phép người dùng thay đổi các trang portal theo 
cách riêng của mình. Các nội dung liên quan như các chương trình Microsoft 
Office, các dịch vụ Web, tin tức, dữ liệu công ty được đưa ra trong portal thông 
qua các Webpart. Người dùng trong tổ chức có thể sử dụng các thư viện 
Webpart để đăng tải các thông tin mà không cần nhiều kiến thức về Web. Họ 
cũng có thể cá nhân hóa các trang thuộc tổ chức hoặc chi nhánh trong các vùng 
bảo mật và portal sẽ nhớ các cách thể hiện đó và hiển thị chúng lên khi người 
dùng truy cập vào. 
Portal cũng cho phép người dùng tìm các thông tin liên quan nhanh chóng thông 
qua khả năng tùy biến và cá nhân hóa nội dung và cách thể hiện của portal, hoặc 
thông qua một công cụ gọi là Audience Targeting. Công cụ này sẽ thông báo 
cho người dùng các cập nhật mới về thông tin dựa trên vai trò của người dùng 
trong tổ chức, sự quan tâm, hoặc mối quan hệ nhóm. Người dùng có thể tạo và 
quản lý các site cá nhân (My Site) và thay đổi chúng dựa vào các Webpart và 
các liên kết (links). 
2.2.2. Kiến trúc của SPS 
Một trang SharePoint Portal Server có cơ sở là một tập hợp các trang 
Microsoft Windows SharePoint Services (Portal site) có thêm các chức năng để 
đưa vào các trang chủ đề (Topic), vùng (Area), và các trang cá nhân (Personal). 
Hình 15: Kiến trúc của một SPS 
29 
a. Portal site 
Portal site là một điểm truy cập tập trung cho phép tìm và quản lý thông tin. 
Nó cung cấp một khả năng truy cập vào các thông tin chứa trong hay ngoài tổ 
chức, cho phép tìm thông tin người dùng, các trang, tài liệu và các nội dung 
khác mà không cần quan tâm đến vị trí hay định dạng của thông tin. Ta có thể 
chỉnh sửa trang chủ của Portal site để hiển thị các thông tin mới hoặc các thông 
tin quan trọng. 
b. Topics và Areas 
Topics và Areas dùng để tổng hợp nội dung từ các nguồn khác.Topics cho 
phép liên kết đến các nội dung không nằm trong Portal như là các thư mục chia 
sẻ, các thư mục công cộng của Microsoft Exchange Server, các site của 
Windows SharePoint Services, các Web site công cộng, và Lotus Notes. Areas 
dùng để chứa các Topics và các Area con.Topics có thể được chứa trong các 
Area con hoặc ta có thể coi chúng là các Area ở mức trên cùng. 
Areas biến cấu trúc Microsoft Office SharePoint Portal Server thành một cây 
phân cấp đề có thể dễ dàng tổ chức và duyệt nội dung trong trang Portal. 
SharePoint Portal Server cung cấp một giao diện dựa trên HTML để làm việc 
với các Areas. Điều này cho phép người dùng dễ dàng sử dụng một trình duyệt 
để làm việc với cây phân cấp Areas. Người dùng với các quyền hợp pháp có thể 
xem tòan bộ cấu trúc của cây phân cấp này, họ cũng có thể thêm, chỉnh xửa, 
xóa, di chuyển các Areas để thay đổi cấu trúc của trang Portal. 
c. Trang cá nhân (Personal) 
Trang cá nhân là địa điểm mang tính chất cá nhân, nó cung cấp một vị trí để 
lưu trữ và chia sẻ công việc của mỗi người, một cách để tìm và kết nối với người 
khác trong tổ chức, và là một cách để cho phép người trong tổ chức quan sát 
công việc của bạn. Để vào trang cá nhân, click vào nút My Site trên thanh truy 
xuất của Portal. 
30 
2.3. Webpart 
2.3.1. Tổng quan về Webpart 
Webpart cung cấp cho các nhà phát triển một cách thức để tạo ra các giao 
diện người dùng với đặc điểm có thể tùy biến và cá nhân hóa. Người sở hữu site 
hoặc một thành viên của site với một quyền thích hợp có thể tùy biến các 
Webpart Page bằng cách sử dụng trình duyệt để đưa thêm vào hoặc cấu hình lại 
hay loại bỏ các Webpart. 
Thuật ngữ “tùy biến” (customization) ở đây có nghĩa là đưa đến sự thay đổi 
mà có thể được nhìn thấy bởi tất cả các thành viên của site. Một người dùng có 
thể cá nhân hóa cao độ các trang Webpart Page bằng cách thêm vào, cấu hình lại 
hoặc loại bỏ các Webpart. Thuật ngữ “cá nhân hóa” (personalization) ở đây có 
nghĩa là những thay đổi này chỉ có thể nhìn thấy bởi chính người tạo ra nó. Phát 
triển các Webpart cung cấp một cách đơn giản nhưng đầy sức mạnh để mở rộng 
các trang WSS. Sau đây là một vài trường hợp mà ta có thể sử dụng các 
Webpart: 
 Tạo ra một thuộc tính tùy biến để có thể hiển thị và chỉnh sửa giao diện 
người dùng 
 Một Webpart đã được biên dịch sẽ chạy nhanh hơn một đoạn mã Script, 
mặt khác với Webpart ta có thể không cần công bố mã nguồn 
 Bảo mật và điều khiển truy nhập đến nội dung bên trong Webpart 
 Thực hiện các Webpart có khả năng kết nối với nhau 
 Tương tác với các đối tượng được đưa ra bởi WSS (chẳng hạn ta có thể 
viết một Webpart để lưu trữ các tài liệu vào trong thư viện tài liệu của 
WSS) 
 Điều khiển lưu trữ cho Webpart bằng cách sử dụng các công cụ dựa trên 
lưu trữ (buit-in cache tools) 
 Sử dụng các tiện ích với môi trường phát triển phong phú cũng như chế 
độ gỡ lỗi trong Visual Studio .NET 
 Tạo ra một lớp cơ sở cho các Webpart khác kế thừa 
31 
2.3.2. Kiến trúc 
Webpart cung cấp các site dưới dạng giao diện người dùng dựa trên HTML, 
hay con được gọi là Webpart page. Người dùng có thể cá nhân hóa chúng bằng 
cách chỉnh sửa các Webpart đã có. Vậy sự khác nhau giữa Webpart page và các 
trang ASP.NET chuẩn là gì? Một trang ASP.NET được lưu trữ như là một tệp 
văn bản trên tệp hệ thống. Còn các phần tạo nên một trang Webpart được lưu trữ 
ở nhiều bảng trong CSDL nội dung của SharePoint. WSS xây dựng các đối 
tượng Webpart Page bằng cách lấy dữ liệu trong CSDL. Khía cạnh này trong 
kiến trúc Webpart đã làm cho các Webpart có thể được tùy biến và cá nhân hóa. 
Để tùy biến một Webpart, ta phải bật lựa chọn "Design this Page". Ta cũng 
có thể thêm một Webpart mới vào bằng cách sử dụng menu Add Webpart. Nếu 
đang làm việc với Webpart trong khung nhìn chia sẻ, sự tùy biến áp dụng vào 
các Webparts sẽ được nhìn bởi mọi người dùng. Còn nếu trong khung nhìn cá 
nhân, sự tùy biến sẽ chỉ ảnh hưởng đến ta. WSS đủ thông minh để chứa các dữ 
liệu chia sẻ và dữ liệu cá nhân một cách độc lập với nhau trong CSDL. 
Phải là người sở hữu trang hoặc là người có quyền thiết kế thì mới chỉnh sửa 
được Webpart Page trong khung nhìn chia sẻ. Khi một Webpart Page được tạo 
ra cho một người dùng không là sở hữu site đó hoặc là người thiết kế web, người 
dùng đó sẽ không được cho phép chuyển qua chế độ khung nhìn chia sẻ. Thay 
vào đó, trang này chỉ cung cấp một thực đơn "Modify My Page". Tuy nhiên, 
người dùng này vẫn có thể dùng lựa chọn "Design this Page" và chỉnh sửa 
Webparts. Bất kỳ các tùy biến nào sẽ được lưu trữ như là dữ liệu cá nhân trong 
CSDL 
Một Webpart Page có các Webpart Zone. Ta thêm một Webpart vào Webpart 
Page bằng cách đặt nó vào một Webpart Zone. WSS cho phép người sở hữu 
trang tạo một Webpart Pages mới với một mẫu cho sẵn. Đối với trình duyệt, có 
thể chọn một trong các mẫu Webpart Page để tạo một Webpart Page với các 
vùng định sẵn. Nếu dùng Microsoft Office FrontPage để tạo và thiết kế Webpart 
Page thì ta còn linh động hơn bởi vì ta có thể thêm, xóa, chứa các vùng trên 
Webpart Page bằng cách sử dụng công cụ thiết kế trang của FrontPage. 
WSS cung cấp một bộ máy hiển thị các Webpart Page bằng cách mở rộng 
ASP.NET. WSS định hướng các yêu cầu Webpart Page tới một đối tượng của 
32 
lớp SharePointHandler — một điều khiển ASP.NET. Điều khiển này định nghĩa 
trong không gian tên Microsoft.SharePoint.ApplicationRuntime. Với mỗi yêu 
cầu Webpart Page, đối tượng SharePointHandler có trách nhiệm lấy về tất cả dữ 
liệu cần thiết từ CSDL nội dung. Đối tượng SharePointHandler cũng phải lấy dữ 
liệu từ các bảng khác để xét xem các Webparts có được tùy biến và cá nhân hóa 
không. 
Hình 16: Webpart Page 
2.3.3. Tùy biến và cá nhân hóa Webpart 
Một trong những khía cạnh mạnh mẽ của Webpart là khả năng sử dụng dữ 
liệu tùy biến và cá nhân hóa. Ta chỉ cần thêm các thuộc tính vào lớp Webpart và 
gắn các thuộc tính này với các thuộc tính đặc biệt được định nghĩa trong WSS. 
Kỹ thuật này là một ví dụ tiêu biểu cho sức mạnh lập trình mô tả của .NET 
Framework. 
Webpart là rất mạnh mẽ bởi vì nó cung cấp các thuận lợi đặc biệt để sử dụng 
các dữ liệu tùy biến và cá nhân hóa. Web site của ta có thể dược tùy biến và cá 
nhân hóa bởi nhiều người dùng bằng nhiều cách khác nhau. Ta không phải viết 
code để quản lý mối quan hệ người dùng, hoặc để lưu trữ và sử dụng các dữ liệu 
cá nhân trong CSDL nội dung, do vậy sẽ có nhiều thời gian hơn tập trung vào 
công việc chính của mình. 
2.4. Bảo mật trong Sharepoint 
Sharepoint mang đến khả năng thu thập dữ liệu từ nhiều nguồn khác nhau và 
công bố các dữ liệu này trên một địa điểm tập trung để người dùng có thể truy 
33 
cập. Tuy nhiên các quản trị viên SharePoint cần phải xem xét để bảo đảm các 
thông tin quan trọng đó không bị tiết lộ rộng rãi đối với tất cả mọi người. 
Khi mạng nội bộ phát triển, các nhà thiết kế và các nhà cung cấp nội dung 
phải học cách để sử dụng SharePoint cho việc cộng tác nhóm, việc quản lý tài 
liệu và các báo cáo động. Nội dung này cũng được hiện sẵn cho các nhân viên 
khác và đây là câu hỏi chính cho vấn đề này: Những thông tin gì họ được phép 
tìm kiếm và đọc? SharePoint đặt tất cả các thông tin và có một cấu trúc tập trung 
thực sự hỗ trợ tốt cho các nhân viên và các quá trình làm việc nhóm nhưng lại 
cũng có thể là một lỗ hổng bảo mật lớn nếu nó không được bảo vệ đúng cách. 
Cơ sở hạ tầng SharePoint có một tính năng rất hữu hiệu: “Mọi người dùng 
không thể xem nội dung bị hạn chế”. Tuy nhiên cách dữ liệu được lấy hết ra 
khỏi SharePoint như thế nào và nó được sử dụng ở đâu? Rõ ràng một bản dự 
phòng(backup) của SharePoint chứa đựng rất nhiều thông tin, chính vì vậy giữ 
các thông tin này ở một địa điểm nào đó không cho phép người dùng truy cập 
bừa bãi. Tuy nhiên nếu người dùng có quyền truy cập và đọc nội dung thì họ 
hoàn toàn có thể thực hiện quyền của họ ở đây. 
Hình dưới đây sẽ cho ta thấy những nơi cần bảo mật trong Sharepoint. 
34 
Hình 17: Những nơi cần bảo mật trong Sharepoint 
Người dùng cuối: Con người luôn là yếu tố khó khăn nhất trong bảo mật. Khi 
người dùng được quyền truy cập vào các site trong sharepoint, và được sử dụng 
toàn bộ dữ liệu được chia sẻ trên site. Vì vậy đây là vị trí có lỗ hổng bảo mật lớn 
nhất trong Sharepoint. 
Các trang web được tùy biến bởi người dùng: Sharepoint cho phép người dùng 
tùy biến các site và sub-site để phù hợp với nhu cầu và mang tính cá nhân. 
Nhưng đây cũng là vấn đề gây ra nguy cơ mất an toàn thông tin trong 
sharepoint. Người dùng có thể chỉnh sử, cài mã độc, các phần mềm gián điệp để 
xâm nhập vào hệ thống. 
Dữ liệu trong Sharepoint được lưu trữ bởi các danh sách, các thư viện tài liệu: 
Dữ liệu được lưu trữ trong Sharepoint có thể được sử dụng bởi nhiều người 
dùng chung, vì vậy nếu không có cơ chế kiểm soát việc truy cập các dữ liệu này, 
khả năng mất an toàn bảo mật thông tin là rất cao. 
35 
Cách thức tìm kiếm: Sharepoint cung cấp cho người dùng một công cụ tìm kiếm 
rất mạnh mẽ, người dùng có thể tìm kiếm thông tin trong toàn bộ hệ thống. Vì 
vậy các trang không có cơ chế bảo mật tốt sẽ tiềm ẩn mối nguy hiểm rất lớn. 
Truy cập vào dữ liệu BDC (Business Data Connectivity): ta có thể truy cập vào 
cơ sở dữ liệu của Sharepoint nếu không có cơ chế xác thực, thẩm định an toàn. 
Các nguồn dữ liệu ngoài: Sharepoint có một tính năng cực kỳ mạnh mẽ, đó là 
khả năng tích hợp với các hệ thống khác bên ngoài. Chính bởi vậy có thể tương 
tác với các nguồn dữ liệu lớn, khi đó rủi ro là khó tránh khỏi. 
Các tài khoản dịch vụ: Các tài khoản dịch vụ được truy cập vào hệ thống sẽ 
mang theo nhiều rủi ro, bởi các dịch vụ có thể được sử dụng ở nhiều nơi, nhiều 
hệ thống khác nhau, nếu không có cơ chế bảo mật phù hợp, dữ liệu rất dễ bị một 
bên thứ ba xâm phạm. 
Các máy chủ WSS và máy chủ Cơ sở dữ liệu: Máy chủ là trái tim của hệ thống, 
đây là nơi có tầm quan trọng bậc nhât nhưng lại chịu rất nhiều tác động từ bên 
ngoài như virus, malware, các tác động vật lývv, nếu các máy chủ không 
được bảo vệ an toàn, rủi ro không chỉ về dữ liệu mà còn rủi ro cho cả hệ thống. 
Kết chương: Chương I đã trình bày những vấn đề cơ bản trong An toàn bảo mật 
thông tin, các nguy cơ mất an toàn thông tin, hệ mã hóa, hàm băm, chữ ký số. 
Tiếp theo là luận văn trình bài về văn phòng điện tử và một số hệ thống văn 
phòng điện tử. Luận văn cũng đưa ra các vấn đề cần nghiên cứu trong công nghệ 
Sharepoint, các thành phần chính của Sharepoint, các lỗ hổng bảo mật của 
Sharepoint và cơ chế bảo mật hiện có. Chương tiếp theo sẽ trình bày về các 
phương pháp bảo mật được đề xuất cho Sharepoint và lựa chọn giải pháp bảo 
mật hiệu quả. 
36 
CHƯƠNG II: NGHIÊN CỨU GIẢI PHÁP TÍCH HỢP CHỮ KÝ 
SỐ CHO CÔNG NGHỆ SHAREPOINT 
1. Các giải pháp bảo mật thông tin cho Sharepoint 
1.1. Công nghệ phát hiện và ngăn chặn xâm nhập mạng IDS/IPS 
1.1.1. Khái quát chung 
Hệ thống phát hiện xâm nhập (Intrusion Detect System - IDS): Phát hiện tấn 
công, và có thể khởi tạo các hành động để ngăn chặn tấn công. IDS phát hiện tấn 
công bằng cách phân tích bản sao của lưu lượng mạng và cung cấp thông tin về 
chúng. Tuy nhiên IDS không tự động cấm hoặc ngăn chặn các cuộc tấn công. 
Hệ thống ngăn chặn xâm nhập(Intrusion Prevent System-IPS): Chặn sự xâm 
nhập trước khi nó tấn công vào bên trong mạng, cung cấp khả năng bảo vệ mạng 
dựa vào định danh, phân loại và ngăn chặn mối đe dọa. IPS làm giảm bớt những 
mối đe dọa tấn công bằng việc loại bỏ các lưu lượng mạng bất hợp pháp. 
Do Sharepoint có thể được phát trên hệ thống mạng Intranet, Extranet hoặc 
Internet nên có ba lý do để ta xem xét sử dụng công nghệ này làm giải pháp bảo 
mật cho Sharepoint: 
 Cung cấp khả năng điều khiển truy cập mạng 
 Tăng mức độ kiểm soát những gì đang chạy trên mạng 
 Cảnh báo các nguy cơ về tấn công và ngăn chặn chúng 
1.1.2. Hoạt động 
Các hệ thống IDS/IPS được triển khai dưới dạng các gateway để phát triển và 
ngăn chặn một cách hiệu quả các cuộc tấn công mạng, giảm thời gian chết và 
các yếu tố ảnh hưởng đến hoạt động của mạng. Chúng được triển khai ngoài vị 
trí kiểm soát của tường lửa, phân tích lưu lượng mạng để xác định xem đó có 
phải là một kết nối an toàn hay không, từ đó chúng sẽ đưa ra cảnh báo cho người 
quản trị để có những hành động kịp thời. Ngoài ra, những phân tích sẽ cho người 
quản trị biết những gì đang diễn ra trên mạng. 
37 
Có nhiều hệ thống phát hiện và ngăn chặn xâm nhập mạng có thể được cài 
đặt ở chế độ thụ động thu nhận và phân tích gói tin nhưng chúng cũng có thể 
chuyển sang chế độ chủ động nếu người quản trị xác định có nguy cơ bị tấn 
công. 
IDS/IPS có thể hoạt động dưới hai dạng: 
 Hoạt động theo dạng nhận dạng gói tin: nó sẽ so trùng gói tin với các mẫu 
tấn công mà nó có, nếu trùng thì sẽ xác định là tấn công và ngăn chặn. 
Kiểu này có thể xác định chính xác tấn công nhưng chỉ đối với những 
kiểu tấn công cũ mà không nhận biết được những loại tấn công mới. 
 Hoạt động theo dạng khám phá(heuristic): IDS sẽ giám sát các thông tin 
truyền trên mạng và xác định xem phải tấn công không. Tuy nhiên dạng 
này có thể xác định nhận các cuộc tấn công. 
Công nghệ này ba module chính: 
Module phân tích gói: module này sẽ phân tích cấu trúc các gói tin, các gói tin 
đi qua chúng đều được sao chép lại và gửi đến tầng tiếp theo. 
Module phát hiện tấn công: Module này sẽ giúp phát hiện ra các sự xâm nhập 
trái phép trên mạng. 
Module phản ứng: Khi hệ thống bị xâm nhập trái phép, module phát hiện tấn 
công sẽ gửi thông báo đến module phản ứng. Module phản ứng sẽ kích hoạt 
tường lửa để ngăn chặn, đồng thời đưa ra cảnh báo với người quản trị. 
1.1.3. Hạn chế 
IDS/IPS có thể phát hiện và ngăn chặn tấn công tương đối tốt, tuy nhiên nó 
vẫn có những hạn chế: 
 Khó phát hiện các tấn công dạng mới 
 Không thể nhận biết được trạng thái các tầng ứng dụng mà chỉ nhận biết 
được thông tin truyền trên mạng nên các tấng công vào tầng ứng dụng sẽ 
không bị phát hiện 
38 
1.2. Mạng riêng ảo (VPN) 
1.2.1. Khái quát chung 
VPN là một hệ thống mạng có khả năng tạo ra một mạng kết nối dựa trên 
một nhà cung cấp mạng nào đó. Mạng kết nối này được bảo vệ sự lưu thông trên 
mạng và cung cấp sự riêng tư, sự chứng thực và toàn vẹn thông tin qua các thuật 
toán mã hóa. 
Các dạng kết nối trong VPN bao gồm: 
 Site to site: loại này thường được áp dụng cho các tổ chức có nhiều chi 
nhánh con và giữa các chi nhánh cần trao đỏi thông tin với nhau. 
 Remote access: loại này áp dụng cho các tổ chức, cá nhân muốn truy cập 
vào mạng riêng từ một địa điểm ở xa. 
 Intranet/Internet VPN: loại này áp dụng cho một số tổ chức mà quá trình 
truyền dữ liệu giữa một số bộ phận cần đảm bảo tính riêng tư. Đây là dạng 
kết nối cần thiết để đảm bảo an toàn thông tin cho Sharepoint. 
1.2.2. Các giao thức thường dùng trong VPN 
Để bảo mật dữ liệu trong VPN, có một vài giao thức phổ biến sau: 
1.2.2.1. IP security(IPSec) 
Được dùng để bảo mật các giao tiếp trên internet, các gói tin được truyền trên 
mạng đi qua IPSec sẽ được dùng chủ yếu bởi các transport mode4 hoặc tunnel5 
để mã hóa dữ liệu trong VPN. 
1.2.2.2. Secure Sockets Layer (SSL) và Transport Layer Security (TLS) 
Tương tự như IPSec nhưng SSL và TLS còn sử dụng thêm chế độ xác thực 
tài khoản giữa máy khách(client) và máy chủ(server). Một kết nối được coi là 
thành công thì quá trình xác thực của chế độ này sẽ dùng đến một chứng 
thư(certificate), là các khóa xác thực tài khoản được lưu trữ trên cả client và 
server 
4 Là chế độ chỉ có nhiệm vụ mã hóa dữ liệu bên trong các gói tin 
5 Là chế độ sẽ mã hóa toàn bộ gói tin khi được truyền trên mạng 
39 
1.2.3. Ưu nhược điểm của VPN 
1.2.3.1. Ưu điểm 
Để xây dựng một hệ thống mạng riêng, mạng cá nhân ảo thì dùng VPN là 
giải pháp tương đối ít tốn kém. Môi trường Internet là cầu nối, giao tiếp chính để 
truyền tải dữ liệu, nên xét về mặt chi phí thì nó hoàn toàn hợp lý so với việc trả 
tiền để thiết lập một đường kết nối riêng với giá thành cao. Bên cạnh đó, việc 
phải sử dụng hệ thống phần mềm và phần cứng nhằm hỗ trợ cho quá trình xác 
thực tài khoản cũng không phải là rẻ. Với tiện lợi mà VPN mang lại để thiết lập 
một hệ thống như ý muốn, rõ ràng VPN chiếm ưu thế hơn hẳn. 
VPN có các cơ chế bảo mật dữ liệu khá tốt, chính bởi vậy khi phát triển 
Sharepoint trên hệ thống VPN sẽ đáp ứng được phần nào nhu cầu bảo mật dữ 
liệu cần chia sẻ. 
1.2.3.2. Nhược điểm 
Nhược điểm lớn nhất của VPN là nó không có khả năng quản lý chất lượng 
dịch vụ qua môi trường internet, chính bởi vậy các gói tin vẫn có thể bị thất lạc, 
điều này là một rủi ro tiềm ẩn cho Sharepoint, nếu như hệ thống bị tấn công. 
1.3. Bảo mật thông tin bằng thuật toán 
Như đã trình bày ở mục 1.1, bảo mật thông tin bằng thuật toán là một trong 
những phương pháp bảo mật thông tin có thể áp dụng cho Sharepoint, và nó rất 
an toàn. Thay vì việc ta tìm cách hạn chế việc xâm phạm trái phép các thông tin 
được lưu chuyển trên đường truyền mạng, ta sẽ sử dụng các thuật toán mật mã 
để mã hóa dữ liệu chuyển đi kết hợp với các giải pháp xác thực để nếu có bị 
đánh cắp, kẻ lấy được thông tin cũng không biết được nội dung là gì. 
Trong luận văn, tác giả đề xuất sử dụng kết hợp hai thuật toán AES và RSA 
đã được trình bày ở chương trước để tích hợp vào Sharepoint. 
1.3.1. Ưu điểm 
 Bảo đảm an toàn gần như tuyệt đối nếu kết hợp các thuật toán hợp lý 
 Có thể tích hợp trực tiếp vào Sharepoint mà không cần dựa vào đường 
truyền trên mạng 
40 
 Chi phí rẻ: So với việc can thiệp vào hệ thống mạng thì việc xây dựng 
một phần mềm thực thi các thuật toán để tích hợp vào Sharepoint sẽ rẻ 
hơn 
 Giữ nguyên hiện trạng mạng, không làm ảnh hưởng đến các thành phần 
khác trong mạng 
 Có thể hoạt động độc lập mà không cần phụ thuộc vào bên thứ 3 
 Người dùng có thể kiểm soát trực tiếp độ an toàn mà không cần sự trợ 
giúp của người quản trị mạng 
1.3.2. Nhược điểm 
Nhược điểm của giải pháp này là phụ thuộc vào con người. Mỗi người sẽ giữ 
cho mình một khóa để xác thực thông tin, nếu khóa này bị lộ, thông tin sẽ không 
còn được an toàn nữa. 
2. Lựa chọn giải pháp bảo mật cho ứng dụng văn phòng điện tử dựa trên 
công nghệ Sharepoint 
Từ những phân tích về các giải pháp bảo mật cho Sharepoint ở trên, tác giả 
lựa chọn giải pháp “bảo vệ thông tin bằng thuật toán” để ứng dụng cho 
Sharepoint. 
Dựa vào độ an toàn cũng như khả năng triển khai của các thuật toán, tác giả 
lựa chọn mã hóa dữ liệu bằng thuật toán AES, và sử dụng chữ ký số, từ đó xây 
dựng nên ứng dụng tích hợp vào Sharepoint. 
2.1. Lý do lựa chọn 
Như đã trình bày ở mục 1.5, chữ ký số sẽ đảm bảo tính xác thực, tính trách 
nhiệm và tính bí mật của thông tin khi được chia sẻ trên Sharepoint. 
Việc kết hợp mã hóa, ký số, xác thực, giải mã sẽ mang lại độ an toàn gần như 
tuyệt đối cho dữ liệu 
Giải pháp này sẽ mang lại sự thống nhất và an toàn cho hệ thống hiện tại vì 
chỉ phải can thiệp vào một ứng dụng Sharepoint và không làm thay đổi các 
thành phần khác đang hoạt động tốt. 
41 
2.2. Tính khả thi của giải pháp 
Nhờ những ưu điểm đã được phân tích bên trên, tác giả đánh giá giải pháp này 
có tính khả thi cao. 
 Người quản trị của Sharepoint không cần am hiểu về lập trình, vẫn có thể 
tích hợp được ứng dụng chữ ký số vào hệ thống 
 Chỉ phải bỏ ra chi phí một lần, có thể tái sử dụng ứng dụng nhiều lần. 
 Hiện nay ở Việt Nam đã có đơn vị cung cấp dịch vụ chứng thực số, thủ 
tục nhanh gọn, giá thành rẻ. Điều này giúp cho việc các cơ quan, doanh 
nghiệp hoặc cá nhân có thể đăng ký sử dụng nhanh chóng, dễ dàng. 
 Chữ ký số của mỗi người là duy nhất trong một khoảng thời gian, và được 
pháp luật bảo vệ, chính bởi vậy người sở hữu chữ ký không thế chối bỏ 
trách nhiệm của mình, đảm bảo tính an toàn thông tin rất cao. 
 Cơ quan, doanh nghiệp chỉ cần tích hợp ứng dụng ký số vào Sharepoint, 
còn người sử dụng chỉ cần một thiết bị nhỏ gọn duy nhất là usb token, 
thuận tiện cho việc sử dụng 
 Việc kết hợp chữ ký số và mã hóa thông tin, tạo nên 2 tầng bảo mật. Để 
vượt qua hai tầng bảo mật này là điều chưa thể xảy ra trong thời điểm 
hiện tại, chính bởi vậy có thể coi giải pháp này là an toàn tuyệt đối hiện 
nay. 
Để tích hợp chữ ký số vào Sharepoint, cần một usb token lưu trữ chứng thư của 
người ký. 
Kết chương: Trong chương này, tác giả đã đưa ra các giải pháp bảo mật cho 
Sharepoint, bao gồm: công nghệ phát hiện và ngăn chặn xâm nhập mạng 
IDS/IPS, mạng riêng ảo VPN, bảo mật thông tin bằng thuật toán. IDS/IPS là 
công nghệ đã có từ lâu, tuy vẫn được áp dụng nhưng bộc lộ khá nhiều hạn chế; 
VPN là giải pháp bảo mật khá tốt, nhưng phụ thuộc rất nhiều vào an ninh mạng, 
các gói tin truyền đi có thể bị đánh cắp hoặc thay đổi; bảo mật thông tin bằng 
thuật toán là phương án có nhiều điểm tích cực, trong đó sử dụng chữ ký số để 
đảm bảo tính chính xác của thông tin là tối ưu, kết hợp với việc mã hóa thông tin 
bằng thuật toán sẽ mang lại hiệu quả lớn về mặt an toàn thông tin. Từ những 
42 
phân tích ưu nhược điểm của mỗi giải pháp, luận văn đưa ra lựa chọn giải pháp 
thích hợp nhất, là bảo mật thông tin bằng thuật toán, và cụ thể là tích hợp chữ ký 
số vào Sharepoint. Chương sau, tác giả sẽ đi sâu phân tích và xây dựng ứng 
dụng demo cho giải pháp được lựa chọn. 
43 
CHƯƠNG III: XÂY DỰNG ỨNG DỤNG TÍCH HỢP CHỮ KÝ 
SỐ CHO ỨNG DỤNG HỆ ĐIỀU HÀNH TÁC NGHIỆP VĂN 
PHÒNG ĐIỂN TỬ DỰA TRÊN SHAREPOINT 
1. Phân tích thiết kế 
1.1. Xây dựng bài toán 
Một hệ điều hành tác nghiệp văn phòng điện tử hướng đến việc giải quyết 
các công việc văn phòng, thủ tục hành chính của đơn vị như xử lý công văn đến, 
công văn đi và các giấy tờ văn bản khác. Hệ thống giúp việc chia sẻ thông tin 
trong nội bộ trở nên dễ dàng, thuận tiện hơn, nâng cao chất lượng cũng như năng 
suất làm việc, kiểm soát chặt chẽ quá trình giải quyết công việc. Nhưng vấn đề 
đặt ra là làm sao đảm bảo an toàn thông tin cho các văn bản được truyền đi trên 
mạng? Giải pháp đưa ra là trong quá trình chia sẻ tài liệu văn bản, văn bản đó 
phải được tích hợp việc mã hóa và ký số để đảm bảo các tiêu chí về an ninh an 
toàn thông tin. 
1.2. Phân tích thiết kế 
Hệ thống tượng trưng cho một đơn vị sự nghiệp gồm các phòng ban được 
phân cấp. Người dùng trong hệ thống được cấp quyền truy cập khác nhau, mỗi 
người dùng có username và password để đăng nhập vào hệ thống và được cấp 
một chữ ký số riêng biệt. Khi chia sẻ tài liệu lên hệ thống, luồng công việc sẽ 
được thực hiện như sau: 
 User đăng nhập vào hệ thống bằng tài khoản được cấp 
 Trước khi upload tài liệu lên, user cần mã hóa và ký số vào tài liệu dựa 
vào ứng dụng trên hệ thống 
 Để ký số lên tài liệu, người dùng cắm usb token vào để chọn chứng thư số 
 Nhập mã pin của token, nếu đúng mã pin, chương trình sẽ thực hiện ký 
vào văn bản. 
 Hệ thống gửi thông báo ký số thành công 
 Người quản trị duyệt tài liệu gửi lên, chỉ những người được cấp quyền 
mới có thể nhìn thấy tài liệu trên hệ thống. 
44 
 Để có thể xem văn bản, người dùng được phân quyền truy cập văn bản sẽ 
cần xác thực chữ ký của văn bản bằng cách chọn chứng thư từ token 
 Sau đó giải mã văn bản để xem nội dung bản rõ 
1.2.1. Quy trình xử lý văn bản đến 
Khi người dùng hoặc phòng ban nhận được văn bản đến, bước đầu tiên là xác 
thực chữ ký của người, đơn vị gửi. Nếu xác thực đúng người gửi, trưởng phòng 
hay người có thẩm quyền sẽ xem xét và giao việc cho người giải quyết. Trong 
quá trình giải quyết công việc, người được giao việc sẽ cập nhật tiến độ vào báo 
cáo được chia sẻ trên Sharepoint. 
1.2.2 Quy trình xử lý văn bản đi 
Để gửi văn bản đi từ Sharepoint, người dùng cần sử dụng chức năng ký số đã 
được tích hợp để thực hiện việc ký lên văn bản. Sau khi ký, văn bản sẽ được tải 
lên Sharepoint, đồng thời phân quyền cho những người được phép xem trong hệ 
thống. 
Quá trình chia sẻ và xử lý văn bản được mô tả như hình dưới đây. 
Hình 18: Luồng công việc xử lý mã hóa, ký số và upload 
45 
Hình 19: Xác thực và giải mã 
1.3. Xây dựng giải pháp 
1.3.1. Môi trường cài đặt 
Hệ thống được xây dựng dựa trên công nghệ Share Point của Microsoft, 
Windowserver 2012, Microsoft SQL 2012, Office 2013, hệ thống mã hóa RSA, 
usb token ký số. Các yêu cầu về hệ thống cụ thể như sau: 
1. Windows Server 2012 R2 
2. Microsoft Sharepoint Server 2013 
3. Active Directory Domain Services 
4. Microsoft SQL Server 2012 
5. Microsoft .NET Framework version 4.5 
6. Windows Management Framework 3.0 
7. Application Server Role, Web Server (IIS) Role 
8. Windows Identity Foundation (KB974405) 
9. Microsoft Sync Framework Runtime v1.0 SP1 (x64) 
10. Windows Identity Extensions 
46 
11. Microsoft Information Protection and Control Client 
12. Microsoft WCF Data Services 5.0 
13. Windows Server AppFabric 
14. Cumulative Update Package 1 for Microsoft AppFabric 1.1 for Windows 
Server (KB 2671763) 
1.3.2 Thiết bị ký số 
Thiết bị ký số là thiết bị phần cứng để tạo ra cặp khóa công khai và bí mật cũng 
như lưu giữ khóa bí mật của người ký, được gọi là usb token. 
 Khóa công khai (Public Key): đây là các thông tin công cộng của người 
ký. 
 Khóa riêng (Private Key): đây là thông tin bí mật, được dùng để tạo ra 
chữ ký số. Bản chất của việc sử dụng thiết bị USB Token là để lưu trữ và 
bảo vệ an toàn khóa riêng này. 
Dung lượng của USB token chỉ khoảng 1.06MB nhưng nó có khả năng lưu 
trữ lớn, tốc độ xử lý cao (32 bit) và lưu giữ khóa bí mật bằng một mã nhận dạng 
cá nhân gọi là mã pin. Mã pin này có thể gồm chữ và số, độ dài từ 8 đến 64 kí tự 
Một USB token về mặt kỹ thuật có thể lưu trữ và bảo vệ nhiều Chứng thư số 
và các cặp khóa tương ứng, nhưng USB token chỉ có duy nhất một mật khẩu bảo 
vệ. Chứng thư số về mặt pháp lý được coi như là con dấu của một người. “Con 
dấu - chứng thư số” nên được sử dụng duy nhất cho người đó để tránh sai sót 
nhầm lẫn cho dữ liệu và USB token là thiết bị lưu trữ rất quan trọng trong việc 
sử dụng chữ ký số. 
1.3.3. Quá trình ký số 
Việc xây dựng modul chữ ký số sử dụng thuật toán RSA làm khóa bí mật tạo 
chữ ký số, khóa công khai nhằm xác thực thông tin, và sử dụng thuật toán hàm 
băm SHA-1 để băm dữ liệu ban đầu. Đồng thời sử dụng phân phối khóa công 
khai để phân phối khóa 
Đầu tiên thông điệp được tính toán bởi một hàm băm, hàm này tính toán 
thông điệp và trả về một bản tóm tắt của thông điệp, hàm băm một chiều đảm 
47 
bảo rằng bản tóm tắt của thông điệp này là duy nhất và bất kỳ một sửa đổi nào 
dù là nhỏ nhất trên thông điệp cũng gây ra thay đổi cho bản tóm tắt này. Sau đó 
người gửi sẽ dùng khóa riêng của mình để mã hóa bản tóm tắt này. Nội dung sau 
khi mã hóa chính là chữ ký điện tử cửa thông điệp đó đƣợc ký bởi người gửi. 
Sơ đồ ký số được sử dụng trong chương trình: 
Các bước của quá trình ký số trong chương trình sẽ được thực hiện như sau: 
Bước 1: Đọc nội dung văn bản từ tài liệu muốn chia sẻ trên Sharepoint 
Bước 2: Mã hóa văn bản 
Bước 3: Đưa văn bản đã mã hóa qua hàm băm, để thu được đại diện văn bản 
Bước 4: Lựa chọn chứng thư số từ usb token 
Bước 5: Nhập mã pin để truy xuất vào token, lấy ra khóa bí mật của người dùng 
Bước 6: Mã hóa đại diện văn bản ở trên bằng khóa bí mật để thu được chữ ký 
Bước 7: Gắn chữ ký vào văn bản đã mã hóa 
Bước 8: Lưu lại văn bản đã ký và chia sẻ lên Sharpoint 
48 
1.3.4. Quá trình xác thực 
 Khi tài liệu được chia sẻ lên Sharepoint, người sử dụng muốn xem được nội 
dung văn bản, sẽ sử dụng ứng dụng ký số đã được tích hợp trong Sharepoint để 
xác thực chữ ký và giải mã văn bản. 
Tài liệu đã ký đến tay người nhận, người nhận tính toán làm sao để tách văn bản 
và chữ ký thành hai phần độc lập. Để kiểm tra tính hợp lệ của chữ ký điện tử, 
người ta dùng khóa công khai của người gửi để giải mã chữ ký điện tử. Kết quả 
của quá trình giải mã chữ ký điện tử chính là bảng tóm tắt thông điệp đã gửi đi. 
Sau đó người nhận dùng hàm băm một chiều để tính toán ra bảng tóm tắt qua 
nội dung của thông điệp. Rồi lấy kết quả so sánh với bản tóm tắt vừa được giải 
mã ở trên, nếu kết quả giống nhau thì quá trình kiểm tra thành công. Ngược lại 
có thể kết luận đây là một thông điệp đã bị giả mạo hoặc thông tin bị thay đổi 
trong quá trình gửi đi. 
Sơ đồ quá trình xác thực trong chương trình như sau: 
Bước 1: Mở ứng dụng ký số trên Sharepoint 
Bước 2: Đọc nội dung văn bản muốn xác thực 
Bước 3: Chọn chứng thư số để xác thực văn bản 
Bước 4: Nếu xác thực thành công, người dụng sẽ nhận được thống báo xác thực 
thành công 
Bước 5: Mở màn hình giải mã, để giải mã và xem nội dung bản rõ. 
49 
2. Cài đặt thử nghiệm chương trình demo 
2.1. Cấu hình Sharepoint Server 2013 
Bước 1: Đăng nhập vào Window server 2012 với tài khoản Administrator và cài 
đặt Sharepoint server 2013 
Bước 2:Sau khi cài đặt hoàn tất, ta sẽ cấu hình Sharepoint Product Configuration 
Bước 3: Tạo mới một server farm 
50 
Bước 4: Nhập các thông tin: 
 Databaseserver – Tên server SQL Server 2012 R2 
 Database Name – Tên database của SQL Server 
 Username – Tên đăng nhập vào Domain windowserver 
 Password – Mật khẩu đăng nhập Domain windowserver 
51 
Bước 5: Nhập mật khẩu của database trên SQL Server 
Bước 6: Cài đặt mật khẩu và bảo mật cho Sharepoint Site 
52 
Bước 7: Điền các thông tin về Sharepoint Central Admin site 
Sau khi hoàn thành việc cấu hình, ta sẽ thấy trang quản trị của Sharepoint: 
Tiếp theo, ta sẽ tạo một Sites Collection như sau: 
53 
2.2. Tích hợp ứng dụng vào Sharepoint 
Bước 1: Đăng nhập vào Sharepoint với quyền được cung cấp 
Lần đầu đăng nhập vào Sharepoint, hệ thống sẽ yêu cầu đăng nhập bằng tài 
khoản người dùng 
54 
Hình 20: Trang chủ Sharepoint 
Bước 2: Chọn chức năng ký số để thực hiện mã hóa và ký vào văn bản muốn tải 
lên Sharepoint 
Click vào “Redirect” để mở màn hình bảo mật 
Hình 21: Màn hình bảo mật 
Bước 3: Click “Chọn tệp” để mở file dữ liệu muốn tải lên Sharepoint 
55 
Hình 22: Mở file muốn tải lên Sharepoint 
Sau khi chọn file muốn tải lên, người dùng click vào nút “Đọc nội dung” để 
mở nội dung văn bản. 
Bước 4: Chọn menu “Mã hóa” để mở màn hình mã hóa thông tin 
Hình 23: Chọn menu Mã hóa 
Sau khi chọn menu Mã hóa, người dùng click nút “Mã hóa” để mã hóa nội 
dung đã được đọc ra ở bước trước. 
56 
Hình 24: Kết quả mã hóa 
Bước 5: Chọn menu “Ký số” dể thực hiện ký vào văn bản 
Hình 25: Màn hình ký số 
Bước 6: Chọn chứng thư số từ token 
57 
Hình 26: Chọn chứng thư số từ token 
Bước 7: Nhập mã pin của token 
Hình 27: Nhập mã PIN để ký số 
Nếu nhập đúng mã pin, chương trình sẽ thông báo việc ký số thành công. 
58 
Hình 28: Ký số thành công 
Sau khi ký số thành công, ta sẽ lưu lại văn bản được ký số, chọn menu “Quay 
lại trang chủ” để tải tài liệu lên Sharepoint. 
Hình 29: Tải tài liệu lên Sharepoint 
59 
Hình 30: Danh sách các tài liệu được chia sẻ 
Người dùng trong hệ thống muốn xem tài liệu, sẽ click vào để tải về máy cá 
nhân. 
Để có thể xem được nội dung văn bản, người dùng sử dụng chức năng Xác 
Thực và Giải Mã trên Sharepoint. 
Hình 31: Chọn chứng thư số từ token để xác thực 
60 
Hình 32: Xác thực thành công 
Nếu xác thực thành công, ta sẽ có thể giải mã để xem nội dung bản rõ. 
Hình 33: Chức năng giải mã 
61 
Hình 34: Kết quả giải mã 
Kết chương: Chương này tập trung phân tích thiết kế, xây dựng giải pháp và lập 
trình thành công một ứng dụng thực thi việc mã hóa, ký số, xác thực, giải mã để 
tích hợp vào Sharepoint. Mục 2.1 hướng dẫn chi tiết việc cấu hình cho 
Sharepoint, cũng như thống kê thông phần cứng cần có để có thể cài đặt. Mục 
2.2 thể hiện luồng làm việc với chức năng mới được tích hợp. Người dùng trước 
khi tải tài liệu lên Sharepoint sẽ sử dụng chức năng đã được tích để thực hiện mã 
hóa và ký lên tài liệu. Người dùng khác khác tải tài liệu xuống, muốn đọc được 
thông tin phải xác thực chữ ký, nếu đúng chữ ký sẽ được phép giải mã để xem 
nội dung bản rõ. 
62 
KẾT LUẬN 
Luận văn đã đạt được các kết quả như sau: 
1. Trinh bày tổng quan về an toàn thông tin, hàm băm, chữ ký số 
2. Trình bày chi tiết về công nghệ Sharepoint cùng với các ứng dụng của 
Sharepoint trong việc xử lý văn bản và chia sẻ tài liệu. 
3. Đưa ra các lỗ hổng bảo bật trong Sharepoint và các giải pháp khắc phục 
cho từng lỗ hổng này 
4. Đưa ra các giải pháp bảo mật, phân tích ưu nhược điểm của từng phương 
pháp 
5. Đề xuất giải pháp “tích hợp chữ ký số” để nâng cao tính bảo mật trong 
Sharepoint. 
6. Xây dựng thành công một ứng dụng chia sẻ và xử lý văn bản bằng 
Sharepoint 
7. Tích hợp được chức năng sử dụng chữ ký số vào Sharepoint 
Các nội dụng được trình bày đã thể hiện được những mong muốn chính của 
tác giả trong luận văn, cùng với đó mở ra một hướng nghiên cứu bảo mật mới 
cho Sharepoint. Tuy nhiên, chương trình demo còn khá sơ sài, chưa áp dụng 
được việc mã hóa, giải mã cho nhiều định dạng văn bản. Trong tương lai, tác giả 
sẽ giải quyết vấn đề này và đưa ra một chương trình thân thiện với người sử 
dụng hơn nữa, để có thể áp dụng vào thực tế một các thành công. 
63 
TÀI LIỆU THAM KHẢO 
Tiếng Việt 
[1] Hồ Văn Hương, Đào Thị Ngọc Thùy, Cơ sở hạ tầng khóa công khai sinh 
trắc BioPKI, Tạp chí An toàn thông tin, 03/07/2009. 
[2] Hồ Văn Hương, Đào Thị Ngọc Thùy, Một số ứng dụng của Cơ sở hạ tầng 
khóa công khai sinh trắc, Tạp chí An toàn thông tin, 04/01/2010. 
[3] Hồ Văn Hương, Hoàng Chiến Thắng, Ký số và xác thực trên nền tảng web, 
Tạp chí An toàn thông tin, 04/10/2013. 
[4] Hồ Văn Hương, Nguyễn Quốc Uy, Giải pháp bảo mật cơ sở dữ liệu ứng 
dụng mã nguồn mở, Tạp chí An toàn thông tin, 20/02/2014. 
[5] Hồ Văn Hương, Hoàng Vĩnh Hà, Ngô Thị Linh, Trịnh Văn Anh, Hộ chiếu 
điện tử và ứng dụng chữ ký số cho hộ chiếu điện tử, Tạp chí An toàn thông tin, 
25/04/2015. 
[6] Giáo trình An toàn và bảo mật thông tin, Đại học Bách Khoa Hà Nội 
Tiếng Anh 
[7]Carlisle Adams - Steve Lloyd, Understanding PKI, Concepts, Standards and 
Deployment Considerations, 2003. 
[8]William Stallings, Cryptography and Network Security Principles and 
Practices, Fourth Edition, 2005. 
[9]Wiley, Pki Implementation & Design: Practice and Experience, 2008. 
[10]Microsoft, Deployment guide for Microsoft SharePoint 2013. 
Internet 
[11] https://voer.edu.vn 
[12] https://www.microsoft.com 
[13]  
[14]  
            Các file đính kèm theo tài liệu này:
 luan_van_nghien_cuu_giai_phap_tich_hop_chu_ky_so_cho_ung_dun.pdf luan_van_nghien_cuu_giai_phap_tich_hop_chu_ky_so_cho_ung_dun.pdf