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

515

Chương 13: Bảo mật

mật quan trọng. Đoạn mã dưới đây trình bày cách sử dụng thuộc tính

SecurityEnabled

để vô

hiệu và kích hoạt CAS:

// Vô hiệu CAS.

System.Security.SecurityManager.SecurityEnabled = false;

// Lưu cấu hình.

System.Security.SecurityManager.SavePolicy();

// Kích hoạt CAS.

System.Security.SecurityManager.SecurityEnabled = true;

// Lưu cấu hình.

System.Security.SecurityManager.SavePolicy();

Để vô hiệu CAS, mã lệnh của bạn phải có phần tử

ControlPolicy

của

System.Security.Permissions.SecurityPermission

. Để kích hoạt CAS, bạn không cần phải

có quyền cụ thể nào.
Thay đổi

SecurityEnabled

sẽ không ảnh hưởng đến hoạt động của CAS trong các tiến trình

hiện có, và cũng không ảnh hưởng đến các tiến trình mới cho đến khi bạn gọi phương thức

SavePolicy

để lưu trạng thái của

SecurityEnabled

vào Windows Registry. Đáng tiếc, .NET

Framework không bảo đảm những thay đổi của

SecurityEnabled

sẽ tác động đúng đến hoạt

động của CAS trong tiến trình hiện hành. Do đó, bạn phải thay đổi

SecurityEnabled

rồi mở

một tiến trình mới để có được hoạt động đúng như mong muốn.

Hình 13.1 Registry Editor (CAS đã bị vô hiệu)

Trạng thái hiện hành của CAS (on/off) được lưu trong khóa HKEY_
LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\Security\Policy
của
Windows Registry
. Nếu khóa này không tồn tại, mặc định CASon.

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.