CÁC GIẢI PHÁP LẬP TRÌNH C# - Trang 284

284
Chương 7: ASP.NET và Web Form

17.

17.

Thay đ i quy n đã c p cho mã ASP.NET

Thay đ i quy n đã c p cho mã ASP.NET

Bạn cần cấp cho phần mã của trang web hoặc dịch vụ Web của bạn nhiều đặc
quyền Windows
hơn (như các quyền cho file, thiết lập Registry, cơ sở dữ liệu, và
các tài nguyên khác), hoặc bạn cần hạn chế các đặc quyền hiện có.

Bạn có thể gán trực tiếp các đặc quyền cho tài khoản ASPNET cục bộ, hoặc có
thể cấu hình mã ASP.NET
của bạn để sử dụng một tài khoản hoàn toàn khác
bằng cách chỉnh sửa thẻ

<processModel>

trong file machine.config. Bạn cũng có

thể sử dụng kỹ thuật giả nhận (impersonation) để một đoạn mã thực thi với các
quyền của người dùng đã được IIS
xác thực.

ASP.NET không chạy dưới tài khoản người dùng đã được IIS xác thực hoặc tài khoản nặc
danh IUSR_[ServerName]. Một phần lý do là tài khoản này thường không có đủ đặc quyền
đối với mã ASP.NET (có thể tạo và xóa các file tạm để quản lý tiến trình biên dịch trang web).
Theo mặc định, các trang ASP.NET chạy bằng tài khoản ASPNET cục bộ, tài khoản này có
một tập các đặc quyền bị giới hạn. Nếu cần mã ASP.NET của bạn thực hiện điều gì đó không
được phép theo mặc định đối với tài khoản cục bộ (chẳng hạn, ghi ra ổ đĩa cứng trên server),
bạn có thể cấp các quyền này cho tiến trình ASPNET. Bạn cũng có thể thay đổi thiết lập này
bằng cách mở file machine.config (nằm trong thư mục <Windows directory>\Microsoft.NET\
Framework\<version>\CONFIG\
) và chỉnh sửa thẻ

<processModel>

.

Hình 7.15 File machine.config

Bạn có thể thiết lập các đặc tính

userName

password

cho một người dùng bất kỳ, hoặc bạn

có thể đưa vào sử dụng tiến trình ASPNET cục bộ (thiết lập

userName

machine

password

AutoGenerate

) hoặc tài khoản hệ thống cục bộ (thiết lập

userName

SYSTEM

password

AutoGenerate

). Vì tài khoản hệ thống cục bộ có có đầy đủ quyền trên máy tính nên đừng bao

giờ sử dụng tài khoản này ngoại trừ mục đích thử nghiệm. Các thiết lập về tài khoản ASP.NET
là toàn cục và tất cả các ứng dụng Web sẽ chia sẻ tài khoản mà bạn chỉ định.

Liên Kết Chia Sẽ

** Đây là liên kết chia sẻ bới cộng đồng người dùng, chúng tôi không chịu trách nhiệm gì về nội dung của các thông tin này. Nếu có liên kết nào không phù hợp xin hãy báo cho admin.