Segurança no context.xml: a tag Realm

Tava procurando alguma coisa que resolvesse minha dúvida, mas não achei nada no fórum. Se alguém conhece algum tópico, que possa me redirecionar.
Uma das maneiras de implementar segurança na nossa aplicação é através da form-based authentication. A gente cria um form que tem action=“j_security_check” e os campos input com name=“j_username” e name=“j_password”, para o nome do usuário e seu password, respectivamente. Os valores de login e senha, inseridos na página, são validados com base no tomcat-users.xml. Isso funciona blz. Mas tava vendo uma outra forma de validação, porém não estou conseguindo implementar. É aí que peço ajuda de alguém. Essa forma utiliza a tag Realm do context.xml, do servlet container, no caso Tomcat. Já tentei várias formas de implementar isso. Criei uma tabela de usuários, com seus logins e senhas e uma tabela com as “roles”, bem como uma outra que associa as duas. Como é que isso deve ser feito realmente? Se alguém souber me responder eu agradeço. Senão, um artigo ou tutorial cairia bem. No caso estou usando o conector do postgres. O context.xml começaria assim:

<Realm	className			= "org.apache.catalina.realm.JDBCRealm"
		driverName		= "org.postgresql.Driver"
		connectionName		= "postgres"
		connectionPassword	= "postgres" 
		connectionURL		= "jdbc:postgresql://localhost:5432;DatabaseName=my_database;SelectMethod=direct" 
		roleNameCol	        = "user_role"
		userCredCol		= "password"
		userNameCol		= "name"
		userRoleTable		= "role_users"
		userTable			= "users"
/>