關(guān)于ADO.NET權(quán)限集拓展
我們之前介紹了關(guān)于ADO.NET程序集,這里我們來看看ADO.NET權(quán)限集是怎么回事,本文先初步的讓大家了解一些關(guān)于權(quán)限集的基本用法。希望大家在以后的工作中能積累這方面的知識。.NET Framework 提供基于角色的安全性和代碼訪問安全性 (CAS),這兩種安全性都可以通過公共語言運(yùn)行庫 (CLR) 提供的公共基礎(chǔ)結(jié)構(gòu)實現(xiàn)。 對于非托管代碼,大多數(shù)應(yīng)用程序都可以使用用戶或主體權(quán)限執(zhí)行。因此,當(dāng)擁有提升權(quán)限的用戶運(yùn)行惡意軟件或包含錯誤的軟件時,計算機(jī)系統(tǒng)可能會受到損壞并危及私有數(shù)據(jù)。
#T#啟用具有自定義權(quán)限集的部分信任
要對特定區(qū)域啟用System.Data.SqlClient權(quán)限,系統(tǒng)管理員必須創(chuàng)建自定義的權(quán)限集,并將其設(shè)置為特定區(qū)域的權(quán)限集。不能修改默認(rèn)權(quán)限集(如LocalIntranet)。例如,要對Zone為LocalIntranet的代碼加入System.Data.SqlClient權(quán)限,系統(tǒng)管理員可以復(fù)制LocalIntranet的權(quán)限集,將其重命名為“CustomLocalIntranet”,添加System.Data.SqlClient權(quán)限,再使用代碼訪問安全策略工具(Caspol.exe)導(dǎo)入CustomLocalIntranet權(quán)限集,然后將LocalIntranet_Zone權(quán)限集設(shè)置為CustomLocalIntranet。
示例ADO.NET權(quán)限集
下面是在部分受信任方案中,SQLServer.NETFramework數(shù)據(jù)提供程序的示例權(quán)限集。有關(guān)創(chuàng)建自定義權(quán)限集的信息,請參見使用Caspol.exe配置權(quán)限集。
- <PermissionSetclassPermissionSetclass="System.Security.NamedPermissionSet"
 - version="1"
 - Name="CustomLocalIntranet"
 - Description="Custompermissionsetgiventoapplicationson
 - thelocalintranet">
 - <IPermissionclassIPermissionclass="System.Data.SqlClient.SqlClientPermission,System.Data,Version=2.0.0000.0,Culture=neutral,PublicKeyToken=b77a5c561934e089"
 - version="1"
 - AllowBlankPassword="False">
 - <addConnectionStringaddConnectionString="DataSource=(local);IntegratedSecurity=true;"
 - KeyRestrictions="InitialCatalog=;ConnectionTimeout=;
 - Encrypt=;PacketSize=;"
 - KeyRestrictionBehavior="AllowOnly"/>
 - </IPermission>
 - </PermissionSet>
 
 















 
 
 
 
 
 
 