自定义 HTML 登录表单

HCL Domino ®提供了一个默认的 HTML 登录表单,允许用户输入名称和密码,然后在整个用户会话期间使用该名称和密码。Web 浏览器使用服务器的字符集将用户名和密码发送到服务器。因此,用户可以使用 ASCII 或 Latin-1 以外的字符集输入名称和密码。

关于这个任务

术语“登录”和“登陆”可互换使用。

对于基本身份验证和基于会话的身份验证,可用于用户名的字符集是不同的。

1 .姓名验证可用的字符

认证类型

用户名

密码

基本身份验证

ISO-8859-1 中的任何可打印字符

US-ASCII 中的任何可打印字符

HTTP 会话身份验证

Unicode 中的任何可打印字符

US-ASCII 中的任何可打印字符

此表单是在Domino ® Web 服务器配置数据库 ( DOMCFG.NSF ) 中创建和配置的。您可以自定义表单以包含更多信息。为此,必须将Domino ® Web 服务器设置为正在运行。

要创建和使用自定义登录表单,您必须完成以下步骤:

  • 创建Domino ® Web 服务器配置数据库。如果您不创建数据库, Domino ®将使用通用登录表单。
  • 创建自定义表单。
  • 指定自定义表单作为登录表单。如果 Web 服务器上存在Domino ® Web 服务器配置数据库,但您尚未创建和指定定制登录表单,则 Domino ®将使用表单 $$LoginUserForm。

Creating the Domino® Web Server Configuration database (DOMCFG.NSF)

程序

  1. Domino ® Administrator 中选择文件 > 应用 > 新的
  2. 服务器字段中输入 Web 服务器的名称。
  3. 选择“显示高级模板”
  4. 选择Domino ® Web 服务器配置模板 ( DOMCFG5.NTF )。
  5. 输入数据库的标题。
  6. 文件名字段中,输入DOMCFG.NSF
    重要提示:数据库的名称不是可选的,因为 Web 服务器已将此名称合并到其代码中。数据库的名称必须是DOMCFG.NSF
  7. 单击“确定”
  8. 将名为Anonymous 的条目添加到数据库 ACL,并授予该条目“读者”访问权限。

Creating a custom form

关于这个任务

创建定制登录表单的最简单方法是修改 $$LoginUserForm 的副本( Domino ®配置数据库中提供的示例登录表单)。您还可以创建一个新的登录表单。

程序

  1. Domino ® Designer 客户端中,打开Domino ®配置数据库 ( DOMCFG.NSF )。
  2. 展开表单
  3. 执行以下操作之一:
    • 要使用 $$LoginUserForm 创建自定义表单,请复制 $$LoginUserForm,然后双击该副本将其打开。(如有必要,您可以重命名副本 - 例如,CustomLoginForm。)
    • 单击“新建表单”以创建新表单。
  4. 完成自定义表单的设计后,保存并关闭它。

Specifying the custom form as the log-in form

程序

  1. Notes ®客户端中,打开Domino ®配置数据库 ( DOMCFG.NSF ),并打开“登录表单映射”视图。
  2. 单击添加映射
  3. “站点信息”下,选择以下一项:
    • 所有网站/整个服务器——对服务器上的所有网站或整个 Web 服务器使用自定义登录表单。
    • 特定网站/虚拟服务器——将自定义登录表单映射到特定网站文档或虚拟服务器。如果选择此选项,则会出现一个新字段,您可以在其中指定网站文档或虚拟服务器的 IP 地址
  4. 选修的: 输入评论。
  5. 输入包含自定义表单的数据库的文件名。除非您将自定义表单存储在不同的数据库中,否则这应该是DOMCFG.NSF
  6. 输入自定义登录表单的名称。
  7. 保存并关闭文档。

Configuring error messages

关于这个任务

您可以启用基于会话的 Web 身份验证,以返回登录失败和会话超时的错误消息。这是通过在自定义登录表单上配置两个字段( reasontextreasontype字段)来实现的。DOMCFG5.NTF在提供的默认表单 $$LoginUserForm 中包含这两个字段。(要获取更改,必须刷新或用最新的DOMCFG5.NTF替换DOMCFG.NSF的设计)。

导致登录表单出现的五种情况被编码在字段reasontype中,包括:

  • 提示用户登录,此时不会显示任何错误消息。
  • User Name, you are not authorized to access application.nsf. Please sign in with a name which has sufficient access rights. 例如,用户已通过服务器的正确凭据进行身份验证,但无权访问数据库或文件。
  • You provided an Invalid username or password. Please sign in again. 用户给出了错误的姓名或密码。
  • Your connection has expired. Please sign in again. 当浏览器未在服务器文档中配置的给定时间内向服务器发送请求(默认值为 30 分钟)时,就会发生这种情况。如果会话超时,他们将丢失尚未保存的内容。如果这种情况经常发生,管理员应该将服务器的会话超时时间延长至一个工作日的长度。
  • User Name, your login has been invalidated due to a timing issue with the login server. (The servers may need to have their clocks synchronized to resolve this.) Please sign in again. 当配置了多服务器会话身份验证并且启用了空闲会话超时时,会发生这种情况。此消息表明 SSO 服务器不同意当前时间,这可能会使用户的 SSO 会话无效。