TIBCO Spotfire® Business Author 和 Consumer 用户指南

管理信任

许多 Spotfire 用户希望以不同的方式扩展 Spotfire 环境。如果允许自定义代码在分析中运行,则考虑安全性这一点非常重要。怀揣恶意的人员创建的任何自定义项目都可能会执行意外或不受欢迎的操作。因此,Spotfire 使用不同的信任机制来保证系统安全。

在内部部署环境中,管理员可以控制能够生成自定义内容、并通过许可证和组归属验证的用户,还可以预定义信任。如果没有预定义的信任,使用自定义项目时会收到警告。

注: 用户可以在“文件” > “管理信任”下检查分析中需要某种信任的所有自定义项目。仅应信任您确定来源可靠的项目。

Spotfire 图表 Mod

拥有足够权限的任何用户都可以创建 Spotfire 图表 mod 并将其上传到 Spotfire 库。内部部署 Spotfire 管理员拥有多种工具,可确保仅允许受信任的开发人员添加和执行代码。有关详细信息,请参见《Spotfire Server 和环境 – 安装和管理》指南。

作为最终用户,您可能有不同的选项来信任自己的图表 mod,具体取决于您在环境中的角色。

已签名 mod

创建图表 mod 或将其添加到 Spotfire 环境的任何用户都可以对其进行签名。该签名会告知其他用户 mod 的来源信息,帮助用户对于是否信任该 mod 做出正确决定。通过已签名 mod,可以验证代码的真实性、完整性和发布者。

用户可以通过证书颁发机构 (CA) 创建的证书,或使用将 mod 项目加载到分析文件的人员的 Spotfire 帐户来进行签名。当您处于离线状态时,只能使用 CA 证书对 mod 进行签名,而无法使用 Spotfire 帐户。有关使用证书对 mod 进行签名的详细信息,请参见 Spotfire 开发人员文档 > TIBCO Spotfire 包生成程序

信任 mod 或签名者

当 mod 经过签名后,更易于决定是否对其信任。也就是说,您将信任建立在签名该 mod 的公司或个人身上。您可以选择信任某个人添加的所有 mod,即信任签名者,也可以仅信任特定的 mod。

如果您信任某个特定的 mod 版本,则该 mod 在其所在的所有分析中都会视为受信任,但是,如果以后对 mod 做出任何更改,就需要重新信任。如果您决定信任签名者,而不是某个特定的 mod,则将自动信任该签名者所有未来的 mod 或新版 mod。

信任操作可以由有权信任 mod 的最终用户在个人级别上执行,不过,管理员也可以在 Spotfire 环境中为一组用户定义信任。

不受信任的 mod

无论是否对 mod 进行了签名,尝试向分析中添加不受信任的 mod 都会引发一个问题,即是否应该信任该 mod(也就是说,如果您没有信任权限,就无法添加 mod)。仅应信任您确定来源可靠的 mod。

撤销信任

如果您有权信任签名者和项目,则还可以使用“文件” > “管理信任”对话框,撤销已添加到分析中的信任。单击对话框中的“查看所有受信任的签名者”按钮,可转到服务器上的“我的帐户”页面,在该页面中,用户可以查看所有受信任的签名者和项目的概览,并撤销管理员尚未分配的信任。请注意,管理员可以随时撤销对您已信任内容的信任,或使用户的签名作废。

使签名无效

如果您的用户帐户已被用于对您不想支持的项目签名,您可以使您的所有签名从特定时间到目前为止无效。此操作在“我的帐户”页面完成(如果有签名)。

管理员还可以撤销签名者的证书,使签名无效,或者阻止签名者或特定的 mod,以防止用户添加 mod。

脚本和数据函数信任

Spotfire 脚本和数据函数不支持签名,因此这些项目始终显示在“管理信任”对话框的“未签名项目”下。而 Spotfire 会使用一种信任机制,在这种机制中,通过许可证和组成员关系验证的名为“脚本作者”的用户是唯一能够使脚本受组织中的任何人信任的用户。

在 Web 客户端中,不可能将信任分配给脚本。如果您遇到具有不受信脚本的分析,则必须在保存文件之前在 Spotfire Analyst 中打开分析并信任脚本,或者联系脚本作者为您执行此操作。有关脚本和数据函数信任的更多信息,请参见《Spotfire Analyst 用户指南》

用 R 编写的数据函数

TIBCO 有自己的 R 语言实现,即 TIBCO Enterprise Runtime for R (TERR),它包含在 Spotfire 应用程序中。TERR 带有受限模式,该模式用于在使用数据函数时提供安全的环境。如果数据函数受信,那么可以在不受任何限制的情况下执行数据函数。如果基于 TERR 的数据函数不受信,Spotfire 将尝试在受限模式下运行数据函数。如果脚本使用在受限模式下不可用的语句,则数据函数将被阻止运行,直到它被信任。