officeba > 单独文章


为Office 2007宏项目进行数字签名

本文介绍如何使用证书 (证书:一种证明身份和真实性的数字方法。证书由证书颁发机构颁发,而且和驾驶执照一样,也可能过期或被吊销。)对文件或宏项目 (宏工程:组成宏的组件的集合,包括窗体、代码和类模块。在 Microsoft Visual Basic for Applications 中创建的宏工程可包含于加载宏以及大多数 Microsoft Office 程序中。)进行数字签名 (数字签名:宏或文档上电子的、基于加密的安全验证戳。此签名确认该宏或文档来自签发者且没有被篡改。)。如果您还没有数字证书,必须获取一个数字证书。要在您自己的计算机上测试宏项目,可以使用 Selfcert.exe 工具创建您自己的自签名证书。

 

获取数字证书以用于签名

可以从商业证书颁发机构 (CA) (证书颁发机构 (CA):一个商业组织,它颁发数字证书,跟踪被颁发证书的人员,对证书签名以验证其有效性,并跟踪被吊销或已过期的证书。) 或者从内部安全管理员或信息技术 (IT) 专业人员那里获取数字证书。

 

创建您自己的数字证书以用于自签名

由于您创建的数字证书不是由正规证书颁发机构颁发的,因此使用这样的证书签名的宏项目称为自签名项目。Microsoft Office 只在个人证书存储区中拥有自签名证书的计算机上信任该证书。

创建自签名证书

  1. 请执行下列操作之一:
    • 在 Microsoft Windows Vista 中,单击“开始”按钮,指向“所有程序”,依次单击“Microsoft Office”“Microsoft Office 工具”“VBA 项目的数字证书”。在“您的证书名称”框中,为该证书键入一个描述性名称。
    • 在 Microsoft Windows XP 中,单击“开始”按钮,依次指向“所有程序”“Microsoft Office”“Microsoft Office 工具”,然后单击“VBA 项目的数字证书”。在“您的证书名称”框中,为该证书键入一个描述性名称。
  2. 在出现证书确认消息时,请单击“确定”

要查看个人证书存储区中的证书,请执行以下操作:

  1. 打开 Windows Internet Explorer。
  2. “工具”菜单上,单击“Internet 选项”,然后单击“内容”选项卡。
  3. 单击“证书”,然后单击“个人”选项卡。

 

为宏项目进行数字签名

  1. 打开包含要签名的宏项目的文件。
  2. 请在以下 2007 Microsoft Office System 程序中执行下列操作:
    Word、Excel 或 PowerPoint
    • “开发人员”选项卡的“代码”组中,单击“Visual Basic”

      如果“开发工具”选项卡不可用,请单击“Microsoft Office 按钮”按钮图像,然后单击程序名 选项”(其中,程序名 是所使用的程序的名称,例如“Word 选项”)。单击“常用”,然后选中“在功能区显示‘开发工具’选项卡”复选框。

    Visio、Outlook 或 Publisher
    • “工具”菜单上,指向“宏”,然后单击“Visual Basic 编辑器”
  3. 在 Visual Basic 方案管理中,选择要签名的项目。
  4. “工具”菜单中,单击“数字签名”
  5. 请执行下列操作之一:
    • 如果以前未选择数字证书或想要使用另一个数字证书,请单击“选择”以选择证书,再单击两次“确定”
    • 要使用当前证书,请单击“确定”

 注释 

  • 仅在解决方案已经过测试并可以发布后,才能对宏进行签名,原因是:只要已签名的宏项目中的代码发生了任何更改,它的数字签名就会被删除。但如果您具有以前用于签署计算机上项目的有效数字证书,则会在保存宏项目时自动对其重新进行签名。
  • 要避免解决方案的用户因意外更改宏项目而使签名失效,可以在对宏项目进行签名之前将其锁定。您的数字签名仅表示在您签署之后该项目未被篡改,但不能保证这就是您所编写的项目。因此,锁定宏项目并不能防止其他用户使用其他签名替换您的数字签名。企业管理员可以重新签署模板 (模板:是指一个或多个文件,其中所包含的结构和工具构成了已完成文件的样式和页面布局等元素。例如,Word 模板能够生成单个文档,而 FrontPage 模板可以形成整个网站。)加载项 (加载项:为 Microsoft Office 提供自定义命令或自定义功能的补充程序。),以便精确控制可以在他们的计算机上运行的用户。
  • 如果创建将代码添加到宏项目的加载项,则代码应当确定该项目是否已经过数字签名,并在用户继续操作之前告知用户更改已签名项目的后果。
  • 对宏进行数字签名时,必须获取时间戳,这样即使在用于签名的证书已过期后,其他用户也可以验证您的签名。如果在对宏进行签名时未使用时间戳,则签名只在证书的有效期内有效。

 


声明:欢迎各大网站转载本站文章,还请保留一条能直接指向本站的超级链接,谢谢!

时间:2007-07-10 03:23:02,点击:65824


【OfficeBa论坛】:阅读本文时遇到了什么问题,可以到论坛进行交流!Excel专家邮件:342327115@qq.com(大家在Excel使用中遇到什么问题,可以咨询此邮箱)。

【声明】:以上文章或资料除注明为Office自创或编辑整理外,均为各方收集或网友推荐所得。其中摘录的内容以共享、研究为目的,不存在任何商业考虑。如有任何异议,请与本站联系,本站确认后将立即撤下。谢谢您的支持与理解!


相关评论

我要评论

评论内容