首页 资讯 电脑入门 操作系统 上网 办公 技巧 硬件 软件 网络 图像 多媒体 程序 数据库 网页网站 网游 安全 加密 企业

Internet上用ActiveX发布软件

巧巧电脑网络 2006-06-12 yesky Micronet   收藏此文 
介绍基于internet发布的软件1.1 基于Internet的软件发布模式:根据客户端和服务器端应用模式的不同,基于网络的软件可以分为C/S和B/S结构。(2)在客户端发布,通过访问企业网站。

  互连网的广泛应用使得基于网络的软件成为现今软件应用的主流,软件计算环境正在由主机计算、PC计算向网络计算过渡,真正的网络计算时代已经来临。为方便企业软件的发行,众多企业在建立网站的同时,将企业的功能软件集成其中,给用户以最大程度的快捷和便利来应用本企业的软件,这样的应用使得现今软件已成为一种基于网络的服务,也使得软件的人机界面更为互动。然而如何实现和推广这样的应用就成为亟待解决的问题。微软文档在这些方面有非常全面的细节描述,但由于比较分散,文字表述比较抽象,会花费软件开发人员比较多的时间进行理解,故本文系统的介绍这方面的相关知识和具体实现,以方便其他人的软件开发和研究工作。

  一、介绍基于Internet发布的软件

  1.1 基于Internet的软件发布模式:

  根据客户端和服务器端应用模式的不同,基于网络的软件可以分为C/S和B/S结构。

  对于C/S结构,发布者在服务器运行服务器端软件,并保持其状态,而使用者需安装软件发布商所提供的专用客户端,并按照发布商的说明完成客户机的设置工作。安装和运行过程有所不便。

  对于B/S结构,软件的发布可以有两种方式:

  (1)在服务器端发布,发布者制作组件并对组件注册,组件提供COM接口,供程序调用,如ASP就可以在网页中对组件进行调用,使客户端浏览者通过服务器完成计算或其他功能。

  (2)在客户端发布,通过访问企业网站,浏览者的浏览器自动下载已将ActiveX控件和需要的功能链接库打包的数据文件,检查并登记软件发行企业的数字签名,然后解开该压缩包,根据包内的配置文件完成功能部件和ActiveX控件的注册,最后,检查控件内脚本的安全性,自动完成客户端软件的安装和设置,并在网页的相应位置显示ActiveX控件(企业软件界面)供用户操作。

  以上B/S结构软件的两种发行方式可以混合使用,完成网络交互的复杂功能。

  1.2 数字签名介绍:

  用户同意下载并注册软件发布者提供的工具包,首先必须确保该包中控件的源代码是安全的,这就需要软件发布商以自己的身份标记该工具包。这个标记过程就是软件发布商对所发布软件的数字签名。

  1.3 软件出版商证书介绍:

  在签署文件之前,需要有一个软件出版商证明书。软件发布者必须向证书发放机构申请自己的证书。在申请过程中,必须生成一个密匙对,并向证书发放机构提供证明信息,如名字、地址以及公共密匙。证书发放机构在收到申请后生成一个符合工业标准X.509证书格式的软件出版商证书 。该证书确定并且包含公共密匙,以证书发放机构存档作为参考,并把一个拷贝以电子邮件的方式返回。收到该证书之后,软件发布者应在所有要发布的、用私人密匙签署的软件当中,包含一份该证书的拷贝。

  为方便软件的测试,也可以通过相关工具创建一个用于测试目的的测试证书,但是该证书不能用于发售代码。

  1.4 ActiveX控件的脚本安全介绍:

  代码签字可以向用户保证代码的可信度。但是运行一个ActiveX控件将带来新的安全性问题--控件被申明是可靠的,但如果使用不可信脚本代码访问就不能保证其安全性。

  为在网络上获得安全应用,表明所开发的控件有安全性的保障,ActiveX初始化和脚本操作都需要一个确定的安全性机制保证其安全性不被违背。

  IE具有三个安全性层次,当用户调用一个包含非安全性初始化和脚本操作的控件的网页时,IE分别给出下列基于当前安全级别的警告信息:

  低级:没有警告

  中级:提示用户潜在的风险

  高级:提示用户潜在的风险并且禁止控件运行

  大多数控件开发者都是将IE的安全性级别设置为最低以便于开发调试。但是控件被其他浏览者应用时,安全级别却设定为默认的高级。因此开发者必须在控件代码编写时提供安全性保障代码。

  有两种方法提供控件的脚本操作安全性保证。第一种是使用组件分组管理器在组件导入以后在注册表上面创建正确的入口,IE在脚本操作之前检查注册表确认安全性;第二种是实现一个 IObjectSafety 接口到控件,如果IE发现控件支持 IObjectSafety,就在导入控件之前调用 IObjectSafety::SetInterfaceSafetyOptions 方法来确保安全性脚本操作。

相关阅读:用ATL和MFC来创建ActiveX控件

如果你希望用C++来写activex®控件,有两个流行的框架,一个是Microsoft Foundation Classes (MFC),另一个是ATL。这使得如果有人希望远程控制你的控件实现的代码,你只要发布一个文件。一旦生成了基于ATL的DLL,你就可以开始添加COM类了。

本类最热图文
Google
巧巧电脑网络编辑信箱  告诉我们您想看的专题或文章