当我们访问 Tomcat 中受保护的资源时,Tomcat 的容器管理的验证方法可以控制确认用户身份的方式。Tomcat 支持四种容器管理的安全防护,而每种类型都以不同的方式取得用户身份。
通过 HTTP 验证,用户密码需要使用 base64 编码的方式提供。当 web.xml 文件中的 <auth-method> 元素设置为 BASIC 时,表明应用使用的是基本验证。当每次浏览器请求受保护的 Web 应用资源时,Tomcat 都会使用 HTTP 基本验证向浏览器索取用户名和密码(浏览器以页面弹窗的方式提示用户输入用户名和密码)。
通过 HTTP 验证,用户密码需要使用摘要算法(如:MD5)进行编码。当 web.xml 文件中的 <auth-method> 元素设置为 DIGEST 时,表明应用使用的是摘要验证。
要求用户自己实现登录页面,要求用户提供用户名和密码。当 web.xml 文件中的 <auth-method> 元素设置为 FORM 时,表明应用使用的是表单验证。当用户请求 Web 应用程序受保护的资源时,表单验证会跳转至配置的登录页面。当登录失败时,表单验证会跳转至错误页面。
以客户端数字证书来确认用户的身份。当 web.xml 文件中的 <auth-method> 元素设置为 CLIENT-CERT 时,表明应用使用的是客户端证书验证。