本部分描述安全性功能,包括执行控制列表、标识和 SSL。
每个 .NSF 数据库都有一个访问控制列表 (ACL) 用于指定用户和服务器对该数据库的访问权限。尽管用户和服务器的访问权限的名称是一样的,但是指定给用户的级别决定用户在数据库中所能执行的任务,而指定给服务器的级别则决定服务器可以复制数据库中的哪些信息。只有具有“管理者”访问权限的用户才能创建或修改 ACL。
设置数据库访问权限时,必须对因特网用户进行特殊设置。有关更多信息,请参阅相关主题。
设置组织的安全性是一项很关键的重要任务。要保护组织的 IT 资源和资产,安全性基础结构是十分关键的。作为管理员,在设置任何服务器或用户之前,应仔细考虑组织的安全性需求。提前规划可使日后危及安全性的风险降至最小。
为了控制用户和服务器对其他服务器的访问权,Domino® 使用在“服务器”文档的安全性选项卡上指定的设置以及验证和认证规则。如果服务器验证并认证了 Notes® 用户、因特网用户或服务器,并且“服务器”文档中的设置允许访问,那么该用户或服务器就可以访问该服务器。
缺省访问控制表包含一组缺省条目。
有关在访问控制表 (ACL) 中生成的任何条目的详细信息,请参阅本主题。
在向数据库 ACL 中添加用户、组或服务器之前,先针对应用程序规划数据库访问权。在将名称添加到 ACL 中后,应为该名称指定访问级别。尽管指定用户类型是可选的操作,但它可以提供附加的安全级别。如果应用程序需要,请添加访问级别和角色。
在数据库 ACL 中分配给用户的访问级别能够控制用户在数据库中可以执行哪些任务。访问级别特权增强或限制了授予 ACL.中每个名称的访问级别。对于 ACL 中的每个用户、组或服务器,可以选择基本的访问级别和用户类型。要进一步优化访问权,可以选择一系列访问权。如果应用程序设计者创建了角色,请将其分配给相应的用户、组或服务器。
在为每个用户、组和服务器分配了访问级别之后,就可以在某个访问级别内选择或取消选择某些特权。
用户类型表明 ACL 中的名称所属的类型(个人、服务器或组)。为名称指定用户类型即指定用此名称访问数据库所需的标识类型。用户类型有“个人”、“服务器”、“混合组”、“个人组”、“服务器组”和“未指定”。ACL 中的 -Default- 组总是被分配以“未指定”作为用户类型。如果将“Anonymous”添加到 ACL 中,那么它应该具有“未指定”用户类型。
数据库设计者可以通过创建角色为数据库设计元素和数据库函数分配特殊的访问权限。角色定义了用户和/或服务器集合。它们类似于可在 Domino® 目录中设置的组。不过,与组不同,角色仅在创建它们的数据库中有效。
作为 Domino® 管理员,可以使用以下任一方法来管理数据库 ACL。
为了保证数据库的最佳安全性,必须注意不断更新 ACL。可以使用服务器管理进程完成这项工作。管理进程是服务器程序,可以自动重命名或删除组、服务器、用户、个人视图、个人文件夹以及私有代理程序,然后更新 Domino® 目录以及指定运行管理进程的服务器作为其管理服务器的任何数据库 ACL。此程序还对数据库中的所有文档的“读者”和“作者”字段进行更新。
要使用 Administration Process 更新和管理 ACL 中以及“读者”和“作者”字段中的名称,请为数据库指定管理服务器。使用以下方法为多个数据库指定管理服务器。
Web Administrator 是一个打包为 Notes® 数据库 (WEBADMIN.NSF) 的实用程序应用程序。Web Administrator 可以添加、删除和修改数据库 ACL 条目、更改角色以及查看服务器上所有数据库的 ACL 日志。
作为 Domino® 管理员,您可以对多个数据库 ACL 中的条目进行更改。要编辑数据库 ACL 中的条目,必须对该 ACL 具有“管理者”访问权。还可以使用 Web Administrator 对数据库 ACL 进行管理。
通过用户名、访问权限或数据库可以查看所有数据库的 ACL。
可以按时间顺序显示数据库 ACL 的更改历史记录。列表中的每个条目显示更改发生的时间、执行更改的人以及更改的内容。日志只存储 20 行的更改记录,而不是完整的历史记录。
您既可以确保为服务器上所有数据库副本中的 ACL 保持一致,又可以确保用户在工作站或便携式电脑上生成的所有本地副本的访问控制表保持一致。
缺省情况下,管理进程检查数据库中的所有文档以查找和更新“读者”和“作者”字段,并更新个人文件夹/视图和私有代理。当管理进程处理“重命名个人”或“删除个人”请求时,将编辑或删除所有的“读者”和“作者”字段、个人文件夹/视图以及私有代理中的名称。如果只希望更新选定文档中的“读者”和“作者”字段,请在数据库中创建特定的视图然后更新该视图。
如果您设计的数据库应用程序要让用户用浏览器来访问,那么您可能要限制浏览器用户使用 URL 命令(该命令会在您的应用程序中打开表单和视图)。例如,您可以设计您的应用程序,使得使用表单和视图的 servlet 仅使用 URL 命令来使用表单和视图。如果设置了不允许 URL 打开属性,浏览器用户将不可能使用 Domino® URL 命令来操纵这些应用程序组件。
Notes® 不能通过识别 Notes 用户的相同方法来识别有权通过因特网或内部网浏览器访问数据库的用户。请使用因特网名称和密码的最大访问权设置来控制因特网或内部网浏览器用户对数据库的最大访问权类型。此列表包含 Notes 用户的标准访问级别。
安全套接字层 (SSL) 是一种安全协议,它为通过 TCP/IP 运行的 Domino® 服务器任务提供通信保密和认证。可以要求用户使用安全的 SSL 连接来访问数据库。还可以选择要求通过 SSL 方式连接到服务器上的单个数据库或所有数据库。
Domino® 使用标识文件来标识用户并控制对服务器的访问。每个 Domino 服务器、Notes® 验证者和 Notes 用户都必须具有一个标识。
使用执行控制列表 (ECL) 可设置工作站数据的安全性。ECL 保护用户工作站不受未知或可疑的活动内容的攻击,也可以进行相应的配置以限制在工作站上运行的任何活动内容的操作。
您可以将使用服务器“CA 进程”任务的 Domino® 验证者设置为管理和处理证书请求。CA 进程是在 Domino 服务器上运行的进程,用于发布证书。设置了 Notes® 或因特网验证者后,应将其链接到服务器上的 CA 进程,以利用 CA 进程活动。CA 进程中只有一个实例可以运行在服务器上,但是此进程可以链接到多个验证者。
安全套接字层 (SSL) 是一种安全协议,它为通过 TCP/IP 运行的 Domino® 服务器任务提供通信保密和认证。
客户机可以使用 Domino® 认证中心 (CA) 应用程序或第三方 CA 获取证书,以进行安全的 SSL 和 S/MIME 通信。
加密可以保护数据不受到未经授权的访问。
名称和密码认证(也称为基本密码认证)使用基本的提问/应答协议来向用户询问其名称和密码,然后通过将密码与存储在 Domino® 目录中“个人”文档内的密码安全散列进行检查,从而验证密码的准确性。
基于会话的多服务器认证(也称单点登录 (SSO))允许 Web 用户只需登录到 Domino® 或 WebSphere® 服务器一次,然后不必再次登录即可访问同一 DNS 域中启用了单点登录 (SSO) 的其他任何 Domino 或 WebSphere 服务器。
联合身份是实现单点登录,为用户提供方便并帮助减少管理成本的方式。在 Domino®和 Notes® 中,用户认证的联合身份使用来自 OASIS 的安全性断言标记语言 (SAML) 标准。
在此发行版中,现场 Domino®服务器可以使用凭证存储应用程序 (credstore.nsf)。凭证存储是文档加密密钥以及 Notes®客户机用户授予对使用 OAuth(开放授权)协议的应用程序的访问权所需的其他标记的安全存储库。OAuth 允许用户凭证与兼容应用程序进行共享,以便用户避免遇到过多密码提示。