配置定制表单登录页面

Liberty 允许定义定制表单登录页面以便用户提交认证凭证。

关于此任务

可定制您自己的定制表单登录页面,但必须按 Servlet 3.0 规范中的指定,以基于表单的必需认证格式实现此页面。在所有表单中,针对 form 元素的操作必须为 j_security_check。在支持需要用户名和密码的认证方案的表单中,该操作必须使用 j_username 输入字段以获取用户名,并使用 j_password 输入字段以获取用户密码。定制表单登录页面必须作为未受保护的 Web 资源来提供。可在全局服务器级别设置此登录页面,此页面适用于部署至服务器的所有应用程序。或者,可对各个应用程序指定此登录页面。

注: 确保包含在 form-login 页面中的所有文件(如外部样式表或图像)都不受保护。

过程

  1. 在需要用户名和密码的表单登录页面中,指定以下表单元素。
    <FORM action="j_security_check" method="POST">
      User name: <INPUT type="text" name="j_username"><br>
      Password: <INPUT type="password" name="j_password"><br>
      <INPUT type="submit" name="action" value="Login">
    </FORM>
  2. 配置登录表单以供服务器上的应用程序使用。 有两个可能的配置在部署至服务器的应用程序中使用表单登录页面。可配置定制登录页面以在单个应用程序中使用,或者您可配置该页面作为将用于部署至服务器的所有应用程序的全局登录表单。
    1. 为单个应用程序配置登录表单。 可配置各个应用程序以将用户引导至特定表单登录页面(通过配置与应用程序一起打包的 web.xml 文件)。

      web.xml 文件中指定与应用程序一起打包的登录页面的路径;例如:

      <login-config>
         <auth-method>FORM/<auth-method>
         <realm-name>MyRealm/<realm-name>
         <form-login-config id="FormLoginConfig_1">
          <form-login-page>/login.jsp/<form-login-page>
          <form-error-page>/loginError.jsp/<form-error-page>
         </form-login-config>
      </login-config>

      要查看如何定制和打包表单登录页面,请参阅定制 Web 应用程序登录

    2. 配置全局登录表单。 可在与每个应用程序一起打包的 web.xml 文件中省略表单登录页面,改为在 server.xml 配置中指定登录表单在部署至服务器的应用程序中全局使用。
      server.xml 文件中,添加带有 loginFormURL 属性的 webAppSecurity 元素,该属性是使用登录表单页面的路径值指定的;例如:
      <webAppSecurity loginFormURL="myGlobalFormLogin/myLogin.jsp" />
      有关更多配置选项,请参阅 OpenID

      确保表单登录页面打包为部署至服务器的 Web 应用程序归档 (WAR) 文件。

      如果应用程序的 web.xml 文件中的 form-login-page 元素不存在,请使用服务器配置中指定的全局登录页面。

  3. 可选:为 OpenID 配置定制表单登录页面
  4. 可选: 为 OAuth 配置定制表单登录页面

用于指示主题类型的图标 任务主题



时间戳记图标 最近一次更新时间: Tuesday, 6 December 2016
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=twlp_config_custom_user_login_form
文件名:twlp_config_custom_user_login_form.html