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

543

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

// Một yêu cầu bảo mật khai báo dựa-trên-vai-trò: principal hiện tại

// mô tả một định danh với tên là "nnbphuong81", các vai trò của

// principal là không quan trọng.

[PrincipalPermission(SecurityAction.Demand,

Name = @"MACHINE\nnbphuong81")]

public static void ProtectedMethod1() { /*...*/}

// Một yêu cầu bảo mật khai báo dựa-trên-vai-trò: principal hiện tại

// là một thành viên của vai trò "Managers" hay "Developers". Bạn chỉ

// có thể diễn tả mối quan hệ OR (không thể diễn tả mối quan hệ AND).

// Tên của định danh là không quan trọng.

[PrincipalPermission(SecurityAction.Demand,

Role = @"MACHINE\Managers")]

[PrincipalPermission(SecurityAction.Demand,

Role = @"MACHINE\Developers")]

public static void ProtectedMethod2() { /*...*/}

// Một yêu cầu bảo mật khai báo dựa-trên-vai-trò: principal hiện tại

// mô tả một định danh với tên là "nnbphuong81" và là một thành viên

// của vai trò "Managers".

[PrincipalPermission(SecurityAction.Demand,

Name = @"MACHINE\nnbphuong81",

Role = @"MACHINE\Managers")]

public static void ProtectedMethod3() { /*...*/}

15.

15.

Gi nh n ng

i dùng Windows

ả ậ

ườ

Gi nh n ng

i dùng Windows

ả ậ

ườ

Bạn muốn mã lệnh của bạn chạy trong ngữ cảnh của một người dùng Windows
nào đó chứ không phải tài khoản người dùng hiện đang tích cực.

Thu lấy đối tượng

System.Security.Principal.WindowsIdentity

mô tả người

dùng Windows mà bạn cần giả nhận, rồi gọi phương thức

Impersonate

của đối

tượng

WindowsIdentity

.

Mỗi tiểu trình Windows đều có một access token kết giao—mô tả tài khoản Windows mà tiểu
trình hiện đang chạy trên danh nghĩa của tài khoản này. Hệ điều hành Windows sử dụng
access token để xác định một tiểu trình có các quyền thích đáng để thực hiện các thao tác
được-bảo-vệ trên danh nghĩa của tài khoản này hay không, như đọc/ghi file, khởi động lại hệ
thống, và thay đổi thời gian hệ thống.
Theo mặc định, một ứng dụng được-quản-lý chạy trong ngữ cảnh của tài khoản Windows đã
thực thi ứng dụng. Điều này là hoàn toàn bình thường, nhưng đôi lúc bạn muốn chạy ứng

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.