Hình 18: Quản lý dữ liệu tĩnh cấp cục Hinh 19: Thống kê báo cáo

Một phần của tài liệu Xây dựng ứng dụng web ASP.NET an toàn (Trang 63 - 66)

Hinh 19: Thống kê báo cáo

4.2. Thiết kế Web site an toàn.

4.2.1 Vấn đề an toàn mà Web site đã làm được.

+ ASP.NET tự xác định được các hành động tấn công XSS.

+ Mã hoá mật khẩu của người dùng trước khi lưu vào cơ sở dữ liệu + Sử dụng Store Procedure ( tránh được kiểu tấn công SQL Injection).

4.2.2. Tăng cường an ninh.

a. Đặt mã truy nhập tài nguyên trong một gói assembly riêng

Dataaccess.dll: Các lớp truy xuất dữ liệu đặt trong thư viện . Utilities.dll: Các lớp tiện ích đặt trong thư viện.

Security.dll: Các lớp dùng để tăng cường an ninh đặt trong thư viện.

1.6.5 Theo biện pháp sử dụng 1.6.4 Theo tiến độ

1.6.3 Theo bộ ngành 1.6.2 Theo sở môi trường 1.6.1 Theo loại cơ sở 1.6 Thống kê – Báo cáo

b. Mã hoá xâu kết nối cơ sở dữ liệu.

Sử dụng hàm Encrypt() trong thư viện Encyption.dll để mã hoá xâu kết nối cơ sở dữ liệu, lưu xâu mã hoá vào trong Web.config hoặc trong Registry.

Trong Web.config:

- Mã hóa dựa trên thuật toán mã hóa 1 chiều MD5,

- Sau khi mã hóa, sử dụng thuật toán encode Base64 để lưu dưới dạng Text //Giai ma xau ket noi

publicstaticstring DecryptConfig() {

string appSettingValue = ConfigurationSettings.AppSettings ["connectionString"];

return Decrypt(appSettingValue); }

Trong Registry:

//Ghi xâu mã hoá vào Registry.

privatevoid btnWriteRegistryData_Click(object sender, System.EventArgs e) {

// tao registry key va values

RegistryKey rk = Registry.LocalMachine.OpenSubKey("Software",true); rk = rk.CreateSubKey("WebUI");

rk.SetValue("connectionString",txtEncryptedString.Text.Trim().ToString()); MessageBox.Show("The data has been successfully written to the registry"); }

//Giai ma xau ket noi lay tu Registry publicstaticstring GetConnectionString() {

RegistryKey rk = Registry.LocalMachine.

string EncryptedString =

(string)rk.GetValue("connectionString"); return Decrypt(EncryptedString);

}

TÀI LIỆU THAM KHẢO (adsbygoogle = window.adsbygoogle || []).push({});

[1] J.D.Meier, Alex Mackman, Content Master,Srinath Vasireddy, Michael

Dunner, Ray Escamilla Anandha Murukan Improving Web Application Security – Microsoft Corporation , Satyam Computer Services

[2] J.D.Meier, Alex Mackman, Michael Dunner, Srinath Vasireddy – Building Secure

Microsoft ASP.NET Applications: Authentication, Authorization, and Secure Communication

[3] Nguyễn thu Hải, Nguyễn thuý Hằng – Phần mềm quản lý và cập nhật thông tin về

Một phần của tài liệu Xây dựng ứng dụng web ASP.NET an toàn (Trang 63 - 66)