如何将证书添加到应用程序

本主题介绍如何使用命令行将证书添加到 BizTalk 应用程序。 此选项在 BizTalk Server 管理控制台中不可用。 将证书添加到 BizTalk 应用程序中,以便能随同应用程序一起,将证书从一个 BizTalk 组传输到另一个组。 使用证书来验证标识,并建立用于发送端口和接收位置的安全链接。 有关详细信息,请参阅如何向发送端口分配证书以及如何将证书分配给接收位置

将证书添加到应用程序时,请记住以下要点:

  • 将证书添加到应用程序时,证书将作为证书项目添加到 BizTalk 管理数据库。 安装应用程序时,证书会被导入到本地计算机上的“其他用户”证书存储中,因此,在将证书分配到发送端口或接收位置之前,你可能不需要额外步骤将其导入到此存储。 使用 BTSTask 添加证书时,证书必须存在于“其他人”证书存储中,并且必须指定其指纹。

    注释

    导出证书后,将删除私钥。 安装应用程序时,尽管证书已导入证书存储区,但它不能用于解密加密消息,尽管它可用于发送加密消息。 如果需要将证书用于以前的用途,则应在托管使用该证书的发送端口的计算机上的“其他人”证书存储中重新安装该证书。

  • 最佳做法是,如果发送端口或接收位置将证书用于两个或更多应用程序中,则应在单独的应用程序中部署证书,然后从需要使用证书的应用程序引用此应用程序。 这是因为 BizTalk 组中只有一个具有特定指纹的证书,因此无法在两个不同的应用程序中导入同一证书。 如果尝试导入两个使用相同证书的应用程序,则第一个导入将成功,第二个应用程序将不会成功。 在这种情况下,使用“覆盖导入”选项无法解决问题,因为要覆盖的现有证书包含在另一个应用程序中。

先决条件

若要执行本主题中的过程,必须使用属于 BizTalk Server 管理员组成员的帐户登录。 有关权限的详细信息,请参阅 部署和管理 BizTalk 应用程序所需的权限

将证书添加到应用程序

  1. 按如下所示打开命令提示符:单击“ 开始”,单击“ 运行”,键入 cmd,然后单击“ 确定”。

  2. 键入以下命令,替换相应的值,如下表所述:

    BTSTask AddResource [/ApplicationName:value] /Type:System.BizTalk:Certificate [/Overwrite] /Thumbprint:“value [/Server:value] [/Database:value]

    示例:

    BTSTask AddResource /ApplicationName:MyApplication /Type:System.BizTalk:Certificate /Overwrite /Thumbprint:“04 a2 8e 32 24 f9 36 b9 42 81 12 71 3a d2 ef db c7 9c 83 dc” /Server:MyDatabaseServer /Database:BizTalkMgmtDb

    参数 价值
    /ApplicationName 要向其添加证书的 BizTalk 应用程序的名称。 如果未指定应用程序名称,则使用组的默认 BizTalk 应用程序。 如果名称包含空格,则必须用双引号(“)将其括起来。
    /类型 System.BizTalk:Certificate (此值不区分大小写。
    /改写 更新现有证书的选项。 如果未指定,并且应用程序中已存在与要添加的证书相同的指纹属性的证书,则“添加”作将失败。 可以通过双击“证书”管理单元中的证书并单击“详细信息”选项卡来查看指纹属性。有关详细信息,请参阅证书管理单元文档中的“查看证书信息”。
    /指纹 证书的指纹属性( 指纹 是数据的摘要)。 此值必须用双引号()括起来。
    /服务器 托管 BizTalk 管理数据库的 SQL Server 实例的名称,格式为 ServerName\InstanceName,Port。

    仅当实例名称不同于服务器名称时,才需要实例名称。 仅当 SQL Server 使用默认值(1433)以外的端口号时,才需要端口。

    例子:

    Server=MyServer

    Server=MyServer\MySQLServer,1533

    如果未提供,则使用本地计算机上运行的 SQL Server 实例的名称。
    /数据库 BizTalk 管理数据库的名称。 如果未指定,将使用在本地 SQL Server 实例中运行的 BizTalk 管理数据库。

另请参阅

管理 .NET 程序集、证书和其他资源
AddResource 命令:证书
创建和修改 BizTalk 应用程序