queensami308

New Member

Download miễn phí Bảo mật với ASP.NET MVC Application





Table of Contents
1 Authentication (Xác thực người dùng) . 2
1.1 Tạo người dùng mặc định với ASP.NET MVC Application . 2
1.2 Quản lý người dùng với công cụ Website Administration Tool . 3
1.3 Roles (Phân quyền nhóm người dùng) . 4
2 Cấu hình xác thực người dùng . 7
2.1 Sử dụng SQL Server 2005 . 8
2.2 Cấu hình truy nhập database trong SQL Server . 9
3 Câu hoi ôn tâ ̣ p . 10
4 Tài liệu tham khảo . 10



Để tải bản Đầy Đủ của tài liệu, xin Trả lời bài viết này, Mods sẽ gửi Link download cho bạn sớm nhất qua hòm tin nhắn.
Ai cần download tài liệu gì mà không tìm thấy ở đây, thì đăng yêu cầu down tại đây nhé:
Nhận download tài liệu miễn phí

Tóm tắt nội dung tài liệu:

Bài số 6
Bảo mật với ASP.NET MVC Application
Table of Contents
1 Authentication (Xác thực người dùng) ................................................................................ 2
1.1 Tạo người dùng mặc định với ASP.NET MVC Application ............................................. 2
1.2 Quản lý người dùng với công cụ Website Administration Tool ........................................ 3
1.3 Roles (Phân quyền nhóm người dùng) .................................................................................. 4
2 Cấu hình xác thực người dùng ............................................................................................. 7
2.1 Sử dụng SQL Server 2005 ...................................................................................................... 8
2.2 Cấu hình truy nhập database trong SQL Server ................................................................... 9
3 Câu hỏi ôn tâp̣ ...................................................................................................................... 10
4 Tài liệu tham khảo ............................................................................................................... 10
Microsoft Vietnam – DPE team | Bài số 6: Bảo mật với ASP.NET MVC Application 2
1 Authentication (Xác thực người dùng)
Có nhiều phương pháp xác thực người dùng như Windows Authentication, Forms Authentication. Ở phần này chỉ
giới thiêụ phương pháp xác thưc̣ người dùng dưạ trên Forms (dùng C#). Mục đích của hướng dẫn này là giảng
giải cách dùng Forms Authentication để yêu cầu bảo mâṭ bằng password cho các Views . Sử duṇg Website
Administration Tool taọ người dùng và phân quyền nhóm người dùng, ngăn chăṇ những người dùng trái phép.
1.1 Tạo người dùng mặc định với ASP.NET MVC Application
Mặc định khi ứng dụng được tạo sẽ có sẵn một Controllers có tên là AccountController.cs và có sẵn các Views
tương ứng ChangePassword.aspx, ChangePasswordSuccess.aspx, Login.aspx, Register.aspx (Figure 1)
Figure 1. Controllers và Views có sẵn để tạo người dùng
Views thể hiện việc register một người dùng mới như sau. (Figure 2)
Figure 2. Tạo người dùng sử dụng công cụ của ASP.NET MVC Application
Microsoft Vietnam – DPE team | Bài số 6: Bảo mật với ASP.NET MVC Application 3
1.2 Quản lý người dùng với công cụ Website Administration Tool
Chọn menu Projects  ASP.NET Configuration. Xuất hiêṇ công cu ̣Website Administration Tool  Chọn tab
Security (Figure 3)
Figure 3. Công cu ̣Website Administration Tool
Click vào link Create User để tạo người dùng. Chẳng hạn tạo người dùng tên Lan (Figure 4)
Figure 4. Tạo người dùng với Website Administration Tool
Microsoft Vietnam – DPE team | Bài số 6: Bảo mật với ASP.NET MVC Application 4
1.3 Roles (Phân quyền nhóm người dùng)
Để tạo role trước hết cần phải enable role bằng cách click vào link Enable roles sau đó click vào link Create and
Manage roles  tạo role có tên Administrators (Figure 5)
Figure 5. Tạo role cho người dùng
Tiếp theo tạo một người dùng mới kết hợp với role đã có (Figure 6)
Microsoft Vietnam – DPE team | Bài số 6: Bảo mật với ASP.NET MVC Application 5
Figure 6. Tạo người dùng với role Administrators
Bây giờ ta có 2 người dùng mới, người dùng Lan không thuộc roles và người dùng Trang thuộc roles
Administrators.
Xây dựng một controllers xem tin tức được bảo mật. Yêu cầu người dùng phải đăng nhập mới có quyền xem. Tùy
thuộc đối tượng người dùng nào sẽ được vào các vùng tin tức nào.
BanHang\Controllers\TinTucController.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Web.Mvc.Ajax;
namespace BanHang.Controllers
{
public class TinTucController : Controller
{
public ActionResult Index()
{
return View();
}
[Authorize]
public ActionResult NguoiDung()
{
return View();
}
[Authorize(Users="Lan")]
public ActionResult NguoiDungCuThe()
{
return View();
}
[Authorize(Roles = "Administrators")]
public ActionResult NhomNguoiDung()
{
return View();
Microsoft Vietnam – DPE team | Bài số 6: Bảo mật với ASP.NET MVC Application 6
}
}
}
Tạo ra các Views tương ứng với các cách của TinTucController.cs: Index.aspx dành cho tất cả người
dùng (kể cả người dùng không được xác thực), NguoiDung.aspx chỉ dành cho những người dùng đã được xác
thực, NguoiDungCuThe.aspx dành cho người dùng đặc biệt tên là Lan, NhomNguoiDung.aspx dành cho nhóm
người dùng thuộc roles Administrators. (Figure 7)
Figure 7. Các Views tương ứng với TinTucController.cs
Microsoft Vietnam – DPE team | Bài số 6: Bảo mật với ASP.NET MVC Application 7
Thêm một tab Tin Tức bằng cách tạo một Html.ActionLink trong Views\Shared\Site.Master. (Figure 8)
Figure 8. Views Index trong Controllers\TinTucController.cs
2 Cấu hình xác thực người dùng
Thông tin về người dùng và quyền truy nhập cho nhóm người dùng được lưu trong cơ sở dữ liệu. Trong ví dụ này
thông tin được lưu trữ trong một SQL Express database (RAUN) tên là ASPNETDB.mdf trong folder App_Data
của ứng dụng MVC. Database ASPNETDB.mdf được sinh tự động bởi ASP.NET Framework khi sử dụng
membership. Mặc định ASPNETDB.mdf bị ẩn, vào Solution Explorer, chọn Show All Files sẽ thấy
ASPNETDB.mdf nằm cùng với Database.mdf ở dùng một thư mục App_Data (Figure 9)
Figure 9. Xem ASPNETDB.MDF bị ẩn bằng Show All Files
Microsoft Vietnam – DPE team | Bài số 6: Bảo mật với ASP.NET MVC Application 8
Thông thường các ứng dụng thực tế, hầu hết các nhà phát triển đều ít khi dùng database nằm trong SQL Express
mà thường sử dụng SQL Server để lưu trữ database. Có thể thay đổi để SQL Server lưu trữ thông tin người dùng
bằng hai bước sau:
 Thêm một đối tượng database Application Services trong hệ quản trị cơ sở dữ liệu (SQL Server)
 Thay đổi connectionstring trong web.config trỏ đến database đã được tạo
2.1 Sử dụng SQL Server 2005
Tạo một database mới trong SQL Server 2005 (hướng dẫn này sử dùng phiên bản Developer). (Figure 10)
Figure 10. Tạo database BanHang trong SQL Server 2005
Thêm tất cả các table và stored procedure vào database mới. Sử dụng công cụ ASP.NET SQL Server Setup
Wizard để sửa đổi thông tin trong database BanHang:
Vào Start  All Programs  Visual Studio 2008 Visual Studio Tools  Visual Studio 2008 Command
Prompt rồi đánh vào aspnet_regsql (Figure 11)
Figure 11. Thực thi aspnet_regsql từ Visual Studio 2008 Command Prompt
Thực hiện tuần tự các bước đơn giản để sửa đổi cơ sở dữ liệu BanHang lưu thông tin về người dùng và
membership. Database này có thể nằm trong mạng không nhất thiết phải nằm ở máy cục bộ. (Figure 12)
Microsoft Vietnam – DPE team | Bài số 6: Bảo mật với ASP.NET MVC Application 9
Figure 12. Cập nhật database BanHang để lưu thông tin người dùng
Sửa đổi file cấu hình web.config trong ứng dụng ASP.NET MVC Application để chuyển lưu trữ thông tin người
dùng vào database BanHang trong SQL Server 2005 thay vì sử dụng database ASPNETDB.MDF có sẵn của
Visual Studio 2008 trong folder App_Data.
Trong file web.config sử dụng ASPNETDB.MDF mặc định để lưu thông tin người dùng
providerName="System.Data.SqlClient"/>
Sửa đổi web.config sử dụng database BanHang trong SQL Server để lưu thông tin người dùng.
 

Các chủ đề có liên quan khác

Top