自定义 HTML 登录表单
HCL Domino ®提供了一个默认的 HTML 登录表单,允许用户输入名称和密码,然后在整个用户会话期间使用该名称和密码。Web 浏览器使用服务器的字符集将用户名和密码发送到服务器。因此,用户可以使用 ASCII 或 Latin-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)
程序
- 从Domino ® Administrator 中选择 。
- 在服务器字段中输入 Web 服务器的名称。
- 选择“显示高级模板” 。
- 选择Domino ® Web 服务器配置模板 ( DOMCFG5.NTF )。
- 输入数据库的标题。
- 在文件名字段中,输入DOMCFG.NSF 。
重要提示:数据库的名称不是可选的,因为 Web 服务器已将此名称合并到其代码中。数据库的名称必须是DOMCFG.NSF 。
- 单击“确定” 。
- 将名为Anonymous 的条目添加到数据库 ACL,并授予该条目“读者”访问权限。
Creating a custom form
关于这个任务
创建定制登录表单的最简单方法是修改 $$LoginUserForm 的副本( Domino ®配置数据库中提供的示例登录表单)。您还可以创建一个新的登录表单。
程序
- 在Domino ® Designer 客户端中,打开Domino ®配置数据库 ( DOMCFG.NSF )。
- 展开 。
- 执行以下操作之一:
- 要使用 $$LoginUserForm 创建自定义表单,请复制 $$LoginUserForm,然后双击该副本将其打开。(如有必要,您可以重命名副本 - 例如,CustomLoginForm。)
- 单击“新建表单”以创建新表单。
- 完成自定义表单的设计后,保存并关闭它。
Specifying the custom form as the log-in form
程序
- 在Notes ®客户端中,打开Domino ®配置数据库 ( DOMCFG.NSF ),并打开“登录表单映射”视图。
- 单击添加映射。
- 在“站点信息”下,选择以下一项:
- 所有网站/整个服务器——对服务器上的所有网站或整个 Web 服务器使用自定义登录表单。
- 特定网站/虚拟服务器——将自定义登录表单映射到特定网站文档或虚拟服务器。如果选择此选项,则会出现一个新字段,您可以在其中指定网站文档或虚拟服务器的 IP 地址
- 选修的: 输入评论。
- 输入包含自定义表单的数据库的文件名。除非您将自定义表单存储在不同的数据库中,否则这应该是DOMCFG.NSF 。
- 输入自定义登录表单的名称。
- 保存并关闭文档。
Configuring error messages
关于这个任务
您可以启用基于会话的 Web 身份验证,以返回登录失败和会话超时的错误消息。这是通过在自定义登录表单上配置两个字段( reasontext和reasontype字段)来实现的。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 会话无效。