主要在tomcat的conf/server.xml文件和web应用程序中的web-inf/web.xml文件中的<security-constraint>配置
tomcat含有可插入式的领域架构,并具备几种有用的领域实现:UserDatabaseRealm,JDBCRealm,JNDIRealm和JAASRealm。要指定用哪种,则需在server.xml文件中用<Realm>标签插入,calssName属性设定使用领域。
- UserDatabaseRealm与文件tomcat-users.xml文件有关。
- JDBCRealm是从数据库中读取存储的用户,密码以及角色等。
- JNDIRealm从LDAP目录取得用户名,密码,角色。
- JAASRealm是经由JAAS(Java Authentication and Authorization Service, Java验证与授权服务)验证用户的一种领域实现。
容器管理的安全防护
主要用于访问受保护的资源时控制确认用户身份的方式。tomcat支持四种容器管理的安全防护,而每种类型都以不同的方式取得身份:
- 基本验证
- 摘要验证
- 表单验证
- Client-cert验证
单次签名
让用户只需严明身份一次,就可访问虚拟主机上加载的所有web应用程序,方法是在server.xml文件中加入SingleSignOn value元素。
控制会话
- tomcat具备可插入式session Managers(会话管理器),可控制处理会话的逻辑,并且有session Store以储存及加载会话。方法是在server.xml文件中用Manager元素,还有些需要在web应用程序的web.xml中设定。
- 会话持续性是指在关闭服务器时将HTTP会话保存于硬盘中,以及当重启服务器时对应重载的机制。
- 两种Manager实现:StandardManager和PersistentManager。
- tomcat有两种Store的实现:FileStore和JDBCStore。