本文共 9594 字,大约阅读时间需要 31 分钟。
名稱 | 說明 |
Security.Permissions.PublisherIdentityPermission | 以發行者為識別的權限管理。 |
Security.Permissions.SiteIdentityPermission | 以 Site 為識別的權限管理。 |
Security.Permissions.StrongNameIdentityPermission | 以 StrongName 為識別的權限管理。 |
Security.Permissions.UrlIdentityPermission | 以 Url 為識別的權限管理。 |
Security.Permissions.ZoneIdentityPermission | 以 Zone 為識別的權限管理。 |
名稱 | 說明 |
Data.Odbc.OdbcPermission | 使用 ADO.NET ODBC Provider 的權限。 |
Data.OleDb.OleDbPermission | 使用 ADO.NET OLE DB Provider 的權限。 |
Data.SqlClient.SqlClientPermission | 使用 ADO.NET SQL Client Provider 的權限。 |
Data.OracleClient.OraclePermission | 使用 ADO.NET Oracle Provider 的權限。 |
Drawing.Printing.PrintingPermission | 列印功能的權限控制。 |
Messaging.MessageQueuePermission | MSMQ 的權限控制。 |
Net.DnsPermission | 存取 DNS 的權限。 |
Net.SocketPermission | 使用 Socket 的權限。 |
Net.WebPermission | 存取 Web 的權限。 |
Security.Permissions.EnvironmentPermission | 存取環境變數的權限。 |
Security.Permissions.FileDialogPermission | 使用檔案對話框的權限。 |
Security.Permissions.FileIOPermission | 存取檔案的權限。 |
Security.Permissions.IsolatedStoragePermission | Isolated Storage 存取的權限。 |
Security.Permissions.ReflectionPermission | 使用 Reflection 的權限。 |
Security.Permissions.RegistryPermission | 存取 Registry 的權限。 |
Diagnostics.EventLogPermission | 存取事件記錄的權限。 |
Diagnostics.PerformanceCounterPermission | 存取效能計數器的權限。 |
DirectoryServices.DirectoryServicesPermission | 存取 Activate Directory 服務的權限。 |
ServiceProcess.ServiceControllerPermission | 控制服務 (Services) 的權限。 |
Security.Permissions.SecurityPermission | 一般性的安全權限,如 Reflection 、 Unmanaged Code 等等。 |
Security.Permissions.UIPermission | UI 的存取權限。 |
Web.AspNetHostingPermission | ASP.NET Host 的權限。 |
PrincipalPermission | 以 Windows 帳號為識別的權限管理。 |
PrintingPermission | 印表機的存取權限。 |
值 | 說明 | 可套用的地方 |
LinkDemand | 驗證僅發生於 JIT 編譯時,因此能得到較高的效率,但此一模式不適用於擁有介面的類別,因為直接由介面呼叫可以跨越此一限制。 | 類別、方法、屬性 |
InheritanceDemand | 要求繼承者必需擁有此權限。 | “ |
Demand | 向 CAS 要求此權限。 | “ |
Deny | 拒絕此權限。 | “ |
PermitOnly | 除此權限外,拒絕其它權限的要求。 | “ |
Assert | 這是一個特殊的權限,能在呼叫者未擁有對應權限時執行該權限所限制的動作,使用此一權限必須擁有 Assertion 權限。 | “ |
RequestMinimum | 只要求此一權限,其它的權限將被拒絕。 | Assembly |
RequestOptional | 與 RequestMinimum 搭配使用,也就是說, RequestMinmum 要求 FileIOPermission ,除了 FileIOPermission 之外的權限要求都會被拒絕,假如以 RequestOptional 要求一個 SocketPermission 的話,那麼這個 Assembly 就允許兩種權限, FileIOPermission 及 SocketPermission 。 | “ |
RequestRefuse | 拒絕此一權限的要求。 | “ |
public void OpenFile(string fileName) { System.IO.File.Delete(fileName); } |
[System.Security.Permissions.FileIOPermission(System.Security.Permissions.SecurityAction.PermitOnly, Read = @"D:/Temp")] private void OpenFile() { ClassLibrary6.Class1 c = new ClassLibrary6.Class1(); c.OpenFile(@"D:/Temp/0050.gif"); } |
[System.Net.WebPermission(SecurityAction.PermitOnly, ConnectPattern=@"http://www/.hinet/.net/")] private void TestWeb(string url) { System.Net.HttpWebRequest req = (System.Net.HttpWebRequest)System.Net.HttpWebRequest.Create(url); } |
[RegistryPermission(SecurityAction.Deny,Read = @"HKEY_LOCAL_MACHINE/Software")] private string TestRegistryPermission(string regPath,string key) { RegistryKey r = Registry.LocalMachine.OpenSubKey(regPath); return (string)r.GetValue(key); } |
[System.Security.Permissions.ReflectionPermission(SecurityAction.Deny, Flags = ReflectionPermissionFlag.TypeInformation)] private void TestReflectionPermission(object target) { MethodInfo m = target.GetType().GetMethod("GetHello", BindingFlags.Instance|BindingFlags.NonPublic|BindingFlags.IgnoreCase); m.Invoke(target,null); } |
[System.Net.SocketPermission(SecurityAction.PermitOnly, Access = "Connect", Host = "61.219.38.89",Port = "80", Transport = "All")] private void TestSocket(string ip) { System.Net.Sockets.Socket socket = new System.Net.Sockets.Socket( System.Net.Sockets.AddressFamily.InterNetwork, System.Net.Sockets.SocketType.Stream, System.Net.Sockets.ProtocolType.Tcp); socket.Connect(new System.Net.IPEndPoint(System.Net.IPAddress.Parse(ip),80)); } |
[System.Security.Permissions.FileIOPermission(System.Security.Permissions.SecurityAction.PermitOnly, Read = @"D:/Temp")] [SecurityPermissionAttribute(SecurityAction.Deny, UnmanagedCode = false)] private void OpenFile() { ClassLibrary6.Class1 c = new ClassLibrary6.Class1(); c.OpenFile(@"D:/Temp/0050.gif"); } |
[assembly: SecurityPermission(SecurityAction.RequestRefuse, UnmanagedCode = true)] |
[assembly: SecurityPermission(SecurityAction.RequestRefuse, UnmanagedCode = true , Assertion = true)] |
名稱 | 用途 |
SqlNotificationPermission | 管理使用 Sql Server 2005 所新增的 Notification 功能權限。 |
SmtpPermission | SMTP 權限控制。 |
NetworkInformationPermission | 管理使用 .NET B2 中新增的 NetworkInformation 中組件的權限。 |
GacIdentityPermission | 以 Gac 為識別的權限管理。 |
DataProtectedPermission | 使用 DDAPI 的權限。 |
Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1184631