適用於 Managed 程式碼的安全性規則規則集
您應包含「Microsoft 安全性規則」規則集,讓回報的潛在安全性問題數目達到最大。
規則 |
描述 |
---|---|
必須檢視 SQL 查詢中是否有安全性弱點 |
|
在一般處理常式中攔截非 CLSCompliant 的例外狀況 |
|
必須檢視命令式安全性 |
|
不要宣告唯讀的可變動參考型別 |
|
陣列欄位不應為唯讀 |
|
保護判斷提示 |
|
必須檢視 Deny 和 Permit Only 的使用方式 |
|
必須檢查實值型別上的宣告式安全性 |
|
必須檢視可見的事件處理常式 |
|
指標不應該為可見的 |
|
受保護型別不應公開欄位 |
|
方法安全性應該是型別的超集合 |
|
使用原生資源時必須呼叫 GC.KeepAlive |
|
APTCA 方法應該只呼叫 APTCA 方法 |
|
APTCA 型別應該只擴充 APTCA 基底型別 |
|
必須檢視 SuppressUnmanagedCodeSecurityAttribute 使用方法 |
|
密封方法以滿足私用介面的要求 |
|
必須保護序列化建構函式 |
|
靜態建構函式應為私用 |
|
不要間接公開具有連結要求的方法 |
|
覆寫連結要求應該與基底相同 |
|
必須將有弱點的 finally 子句包裝在外層 try 中 |
|
必須同時具有型別連結要求和繼承要求 |
|
安全性關鍵常數應該是透明的 |
|
安全性關鍵型別可能未參與型別等價 |
|
預設建構函式至少必須和基底型別的預設建構函式一樣關鍵 |
|
委派必須繫結至透明度一致的方法 |
|
覆寫基底方法時,方法必須保持一致的透明度 |
|
層級 2 組件不應該包含 LinkDemand |
|
成員不應該具有衝突的透明度附註 |
|
透明方法必須只包含可驗證的 IL |
|
透明方法不可以使用 SuppressUnmanagedCodeSecurity 屬性呼叫方法 |
|
透明方法不能使用 HandleProcessCorruptingExceptions 屬性 |
|
透明程式碼不可以參考安全性關鍵項目 |
|
透明方法不可以滿足 LinkDemand |
|
透明程式碼不可以使用 LinkDemand 加以保護 |
|
透明方法不可以使用安全性要求 |
|
透明程式碼不可以從位元組陣列載入組件 |
|
透明方法不可以使用 SuppressUnmanagedCodeSecurityAttribute 來裝飾 |
|
型別至少必須和基底型別與介面一樣關鍵 |
|
透明的方法不可以使用安全性判斷提示 |
|
透明方法不可以呼叫機器碼 |
|
組件應包含有效的強式名稱 |