浅析使用ADO.NET COM组件

开发 后端
文章这里就程序集元数据导出到类型库并将托管组件注册为ADO.NET COM组件,COM互操作还可以使COM客户端访问托管代码做出了详细的介绍。

ADO.NET还是比较常用的,于是我研究了一下非托管代码,在这里拿出来和大家分享一下,希望对大家有用。在CLR外部运行的代码称为非托管代码。因此,安全机制(如CAS)不能应用于非托管代码。ADO.NET COM组件、ActiveX接口和Win32API函数都是非托管代码的示例。在执行非托管代码时应考虑特殊安全注意事项,以便不会危害应用程序的整体安全性。有关更多信息,请参见与非托管代码交互操作。

#T#.NETFramework可以通过COM互操作提供访问,因此还支持与现有ADO.NET COM组件的向后兼容。通过使用COM互操作工具导入相关的ADO.NET COM类型,可以将ADO.NET COM组件组件合并到.NETFramework应用程序中。一旦导入后,就可以使用COM类型了。通过将程序集元数据导出到类型库并将托管组件注册为ADO.NET COM组件,COM互操作还可以使COM客户端访问托管代码。有关更多信息。

代码访问安全性

当今高度连接的计算机系统经常会遇到出自各种来源(可能包括未知来源)的代码。代码可能由电子邮件附带、包含在文档中或通过 Internet 下载。遗憾的是,许多计算机用户都亲身体验过恶意移动代码(包括病毒和蠕虫)造成的后果,这些代码可能会损坏或毁坏数据,并会浪费时间和资金。

多数普通安全机制根据用户的登录凭据(通常为密码)赋予用户权限,并限制允许用户访问的资源(通常为目录和文件)。但是,这种方法无法解决以下几个问题:用户从许多来源获取代码,这些来源中有一些可能不可靠;代码可能包含 bug 或具有脆弱性,使它有可能被恶意代码利用;代码有时候会执行一些操作,而用户并不知道它会执行这些操作。

结果,当谨慎且可信的用户运行恶意软件或包含错误的软件时,计算机系统可能会损坏,私有数据可能会泄漏。多数操作系统安全机制要求每一段代码都必须完全受信任(Web 页的脚本可能除外),然后才可运行。因此,仍需要一种可广泛应用的安全机制,即使两个计算机系统之间没有信任关系,该机制也允许在一个计算机系统上生成的代码能够在另一系统上安全地执行。

为了帮助保护计算机系统免受恶意移动代码的危害,让来源不明的代码安全运行,防止受信任的代码有意或无意地危害安全,.NET Framework 提供了一种称为“代码访问安全性”的安全机制。代码访问安全性使代码可以根据它所来自的位置以及代码标识的其他方面,获得不同等级的受信度。代码访问安全性还实施不同级别的对代码的信任,从而最大限度地减少了必须完全信任才能运行的代码的数量。使用代码访问安全性,可以减小恶意代码或包含错误的代码滥用您的代码的可能性。

它可以减轻您的责任,因为您可以指定应该允许代码执行的一组操作,同时还可指定永远不允许代码执行的一组操作。代码访问安全性还有助于最大限度地减少由于代码中的安全脆弱性而造成的损害。

所有以公共语言运行库为目标的托管代码都会受益于代码访问安全性;即使托管代码不进行一次代码访问安全性调用,它也会受益。但是,正如代码访问安全性基础知识中所概述的那样,所有应用程序都应该进行代码访问请求。

 

责任编辑:田树 来源: 博客
相关推荐

2009-11-04 09:18:12

ADO.NET _Re

2009-11-12 10:06:01

ADO.NET读取数据

2009-09-14 13:37:25

LINQ ADO.NE

2009-11-04 10:48:02

ADO.NET Dat

2009-12-18 14:20:26

ADO.NET组件

2009-07-06 10:43:51

ADO.NET

2009-11-03 17:46:50

ADO.NET Sel

2009-12-31 11:11:42

ADO.NET组件

2009-11-11 09:54:34

ADO.NET Rec

2011-05-20 16:18:23

ADO.NET

2009-12-21 13:19:34

ADO.NET组件

2009-12-28 15:11:36

ADO.NET专家

2009-12-18 15:49:12

ADO.NET组件

2009-11-12 13:26:56

使用ADO.NET参数

2009-11-12 15:00:03

ADO.NET实体数据

2009-12-31 13:50:46

ADO.NET模型

2009-12-21 14:50:47

ADO.NET优化

2009-12-22 15:20:25

ADO.NET功能

2009-12-21 16:53:06

ADO.NET使用说明

2009-12-29 10:36:24

ADO.NET 工具
点赞
收藏

51CTO技术栈公众号