3 安全功能

要避免潜在的安全威胁,必须考虑由系统对操作 DIVAnet 的用户进行验证和授权。

通过正确配置以及遵循附录 A中的安装后核对表,可最大程度地减少这些安全威胁。

安全模型

针对安全威胁提供保护的关键安全功能包括:

  • 验证-确保仅为已授权的个人授予对系统和数据的访问权限。

  • 授权-对系统特权和数据的访问控制。此功能基于验证,用于确保个人只获取相应的访问权限。

验证

DIVAnet 服务可以使用以下几种方法来执行验证:

  • SSL/TLS 证书-当 DIVAnet 创建到远程 DIVAnet 服务的出站连接时,DIVAnet 会参照证书信任库。这有助于确保 DIVAnet 连接到真正的 DIVAnet 服务。要创建从 DIVAnet ClientAdapter 到 DIVArchive 实例的安全连接,必须使用标识为 WebServicesConnectionType 通过 ManagerAdapter 进行连接。

  • 访问规则-虽然在技术上为访问控制的一种形式,但是访问规则可以基于入站 IP 地址来过滤入站连接。对于帮助确保只有经批准的系统才具有对 DIVAnet 服务的相应访问权限,此功能很有必要。

警告:

DIVAnet 服务将数据库密码用作其配置的一部分。在安装后必须立即更改密码,且之后每 180 天(最少)更改一次。进行更改后,必须将密码存储在一个安全的脱机位置,这样在需要时使其可供 Oracle 技术支持使用。

访问控制

可以创建访问规则,以限制某些用户或系统可以在分布式归档系统中执行的操作。可以通过以下方式运行访问规则:

  • ClientAdapter/MultiDiva 模式-限制可以执行的 DIVAnet 请求类型。

  • ManagerAdapter-限制可以执行以满足 DIVAnet 请求(可能由远程系统请求)的 DIVArchive 请求类型。

访问规则可以影响从 DIVAnetUI 或者从 API 套接字连接(可能由 MAM 或自动化系统启动)启动的请求。

DIVAnet 请求可以具有在 DIVAnet 级别或 DIVArchive 级别上对其执行的访问规则。在 DIVAnet 级别上,ClientAdapter 处理在其中接收请求的请求。在 DIVArchive 级别上,远程 ManagerAdapter 处理发出的 DIVArchive 请求以满足 DIVAnet 请求。

Oracle 建议您创建满足应用程序要求的、限制性最强的规则集合。例如,如果只有管理员才需要执行全局删除,请确保拒绝他人访问该功能。如果一组系统用户仅需要访问源和目标的有限列表,请确保那些用户只能对那些特定的源和目标发出请求。

另请考虑用于满足请求的站点。例如,如果本地站点上的用户无理由执行其中源和目标站点都不是本地站点的副本(这可能会使用 DIVAnet),则在 ClientAdapter 配置中配置这些规则。

最后,请考虑您要全面排除的请求中的特定构造。例如,如果不需要仅具有对象名称(没有类别)的地址对象,则排除具有空白类别的所有请求。

此外,每个 ClientAdapter WorkflowProfile 都包含可以由分配给 WorkflowProfile 的请求处理的有效消息的列表。在 MultiDiva 模式下,这提供了一种将特定消息排除在处理之外的方法(包括信息性消息)。

Oracle 建议从 AccessRules.xml.ini 文件中定义的默认规则开始,即使您未定义自己的访问规则也是如此。有关 DIVAnet 访问控制功能的更多信息,请参阅《Oracle DIVAnet 安装、配置和操作指南》,网址为:

https://docs.oracle.com/en/storage/#csm

配置 SSL/TLS

DIVAnet 在以下两个位置中包含证书数据:专用密钥库(用于在本地系统上托管的 Web 服务)和公共密钥库(用于验证远程调用的 Web 服务)。可以使用 Java Keytool 实用程序更改密钥库密码以及添加和删除证书。

有关创建密钥库的更多信息,请参阅以下内容:

http://docs.oracle.com/javase/8/docs/technotes/guides/security/jsse/JSSERefGuide.html#CreateKeystore

只有 DIVAnet Web 服务连接才使用 SSL/TLS。在此发行版中,使用 DIVArchive API 套接字连接来连接到 DIVArchive 或 DIVAnet 将不使用 SSL/TLS

专用密钥库

DIVAnet 私钥证书数据存储在以下位置中:

$DIVANET_HOME/Program/divanet/lib/diva129.jks

恰好一个证书必须出现在此密钥库中。此证书用于从此 $DIVANET_HOME 目录运行的服务所托管的 Web 服务。建议将附带的证书替换为新证书,并将不同的证书用于网络中的每个 DIVAnet 站点。

必须更改此密钥库的密码。将密码信息存储在名为 $DIVANET_HOME/Program/divanet/lib/diva129.properties 的新文件中,并使此文件对 DIVAnet 服务可读(在 Linux 中,此用户为 divanetsvc),但是对系统的临时用户不可读(例如,Linux 中的 diva 用户)。对文件使用以下格式:

keystorePassword=newpassword

公共密钥库

有时称为信任库,此数据位于以下位置:

$DIVANET_HOME/Java/lib/security/cacerts2

此证书数据在出站 Web 服务调用(包括 DIVAnetUI)中使用。可以将多个公钥装入到此密钥库中。

如果已将新的自签名证书添加到 DIVAnet 专用密钥库中,请使用 keytool 实用程序导出证书。然后,调用此站点上 WebServices 的所有应用程序(DIVAnet 服务、DIVAnetUI 等)应该将已导出的证书添加到自身的公共密钥库。