Keystore é um arquivinho onde ficam armazenadas as chaves e certificados. No caso do Tomcat é legal especificar um lugar fixo - não deixar o default, que fica no seu diretório de usuário, algo como “\Documents and Settings\Thingol.keystore” no caso do Windows, e ~/.keystore no caso do Unix, mas obviamente não deve ficar em um lugar que pode ser lido por qualquer usuário (ou seja, no diretório onde você deixa os arquivos .html, .gif e .jsp. Talvez deixando em um diretório dentro de WEB-INF seja mais seguro).
No caso de Form-Based Login, procure páginas de exemplo contendo a action “j_security_check”. Você precisa definir essa pseudo-ação numa página de login (ela deve ser acessível diretamente, como um index.jsp ou um login.jsp, não pode ser um action do Struts), e mexer no seu web.xml (procure na documentação o que deve ser alterado no web.xml). Um exemplo de form para form-based login (sem enfeite nenhum, só com os campos de entrada)
<form name="formLogin" method="POST" action="j_security_check" >
<input type="text" name="j_username" />
<input type="password" name="j_password" />
</form>
Você precisa mexer no seu web.xml, e incluir algo parecido com:
<security-constraint>
<web-resource-collection>
<web-resource-name>Home</web-resource-name>
<url-pattern>/aplicacao1/*</url-pattern>
<url-pattern>/aplicacao2/*</url-pattern>
<url-pattern>/aplicacao3/*</url-pattern>
<http-method>GET</http-method>
<http-method>POST</http-method>
</web-resource-collection>
<auth-constraint>
<role-name>OPERADOR</role-name>
<role-name>ADMINISTRADOR</role-name>
</auth-constraint>
<user-data-constraint>
<transport-guarantee>NONE</transport-guarantee>
</user-data-constraint>
</security-constraint>
<!-- Define qual a pagina de login -->
<login-config>
<auth-method>FORM</auth-method>
<realm-name></realm-name>
<form-login-config>
<form-login-page>/login.jsp</form-login-page>
<form-error-page>/erro/erro_usuario.do</form-error-page>
</form-login-config>
</login-config>
<security-role>
<description>Usuario Administrador</description>
<role-name>ADMINISTRADOR</role-name>
</security-role>
<security-role>
<description>Usuario Operador</description>
<role-name>OPERADOR</role-name>
</security-role>
Para cadastrar os usuários, você precisa ver a documentação do Tomcat (aqui estou mostrando só o que não varia entre os diversos servidores J2EE.