域搜索的安全性
用户对 Domino® 数据库执行域搜索时,域搜索会根据已在其中找到结果的数据库 ACL 来检查每个结果,以验证用户是否有权读取文档。为了执行该检查,域目录将包含一个包括每个数据库的 ACL 的所有数据库列表。为了使 Domino® 在用户的结果集中包含结果文档的链接,用户必须具有读取文档所需的访问权,即对包含此文档的数据库至少具有“读者”访问权,并且如果此文档有“读者”字段,那么用户应包含在此字段中。
安全性检查按如下步骤执行:
- Domino® 检查数据库访问控制表中的 -Default- 条目。
- 如果 -Default- 条目具有“读者”或更高的访问权,那么用户可以读取文档,并且 Domino® 将在结果集中返回结果。
- 如果 -Default- 条目的访问权低于“读者”,Domino® 将检查用户在 ACL 中是否具有“读者”或更高的访问权。如果检查结果为否,Domino® 不会将此文档包含在结果集中,因为用户无权读取此文档。
- 如果用户具有“读者”或更高的访问权,Domino® 将检查结果文档是否具有“读者”字段。
- 如果结果文档没有“读者”字段,那么用户可以读取文档,并且 Domino® 将在结果集中返回结果。
- 如果结果文档具有“读者”字段,Domino® 将检查用户是否包含在“读者”字段中。如果检查结果为否,Domino® 不会将此文档包含在结果集中,因为用户无权读取此文档。
- 如果用户包含在“读者”字段中,那么用户可以读取文档,并且 Domino® 将在结果集中返回结果。
搜索安全性和服务器访问列表
如果使用域内的服务器访问控制表来限制信息访问权,可能需要检查这些服务器上的数据库的 ACL,以确保对结果进行过滤。否则,搜索可能会将结果返回给无权访问该结果文档的用户。在某些情况下,用户可能从搜索结果中获得机密信息。
例如,Renovations 公司有两个应用程序服务器:App-E/East/Renovations 和 App-W/West/Renovations。Renovations 用户已通过以下两个组织单元验证者之一进行验证:/East/Renovations 或 /West/Renovations。App-E/East/Renovations 不允许使用 /West/Renovations 证书的任何用户进行访问。此服务器上的数据库将其 ACL 中的 -Default- 设置设为“读者”,以确保 /West/Renovations 用户无法访问这些数据库。
Renovations 实施域搜索时,查询域搜索的 /West/Renovations 用户可能会收到包含 App-E/East/Renovations 上数据库中文档的链接和摘要,因为这些数据库的 ACL 并未禁止 /West/Renovations 用户查看这些结果。(在 Microsoft™ Windows™ 系统上,如果用户选择“详细结果”选项,搜索结果将包含文档摘要。)在此环境中,服务器访问列表会继续维护数据库安全性,因为 /West/Renovations 用户不能通过这些链接访问文档,但虽然仅提供了链接和摘要,也仍有可能会向 /West/Renovations 用户泄露机密信息。
为避免出现这一问题,请检查受服务器访问列表保护的数据库的 ACL,以确保他们被设置为可以正确进行过滤。要进行该操作,请假定服务器访问列表不存在。更改 ACL,以便在没有服务器访问列表的情况下也能够正确地保护数据库。这样可确保域搜索检查数据库的 ACL 时能将用户不能访问的结果过滤掉。
如果要在 Windows™ 上运行 Domino®,但不确定能否正确维护数据库 ACL,那么您可能希望通过将索引服务器的 NOTES.INI 变量设置为 FTG_No_Summary=1
来阻止任何人查看文档摘要。