以角色為基礎的安全性檢查
一旦定義了識別和主體物件,便即可以根據它們以下列方式之一執行安全性檢查:
使用命令式安全性檢查
使用宣告式安全性檢查
直接存取主體物件
Managed 程式碼可以使用命令式或宣告式安全性檢查,來判斷特定主體物件是否為已知角色的成員、擁有已知的識別,或代表扮演角色的已知識別。 若要使用命令式或宣告式安全性來讓安全性檢查執行,必須建立適當建構 PrincipalPermission 物件的安全性要求。 在安全性檢查期間,Common Language Runtime 檢查呼叫端的主體物件來判斷它的識別和角色是否符合指定的 PrincipalPermission 所代表的識別和角色。 如果主體物件不符合,將擲回 SecurityException (只有目前執行緒的主體物件被檢查;PrincipalPermission 類別不像程式碼存取使用權限會產生堆疊查核行程)。
此外,您可以直接存取主體物件的值,並且不需 PrincipalPermission 物件即可進行檢查。 這個案例中,您只是讀取目前執行緒主體的值,或使用 IsInRole 方法進行授權。