Problema com SpringSecurity

Ola boa tarde estou desenvolvendo um projeto já peguei o banco de dados pronto pela empresa no applicationContex-security.xml quero saber como fazer para ser dinâmico o atributo access segue abaixo o xml:

applicationContex-security.xml

<?xml version="1.0" encoding="UTF-8"?>
<b:beans xmlns="http://www.springframework.org/schema/security"
    xmlns:b="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.springframework.org/schema/beans 
    http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
              http://www.springframework.org/schema/security 
  http://www.springframework.org/schema/security/spring-security-3.1.xsd">
 
  <http>
  	<intercept-url pattern="/restrito/**" access="Colocar dados vindo do banco de dados"/>
  	<form-login login-page="/publico/login.jsf"
  	always-use-default-target="true"
  	default-target-url="/restrito/principal.jsf"
  	authentication-failure-url="/publico/login.jsf?login_error=1"/>
  	<logout/>
  	<remember-me/>
  </http>
  <authentication-manager>
  	<authentication-provider>
  		<jdbc-user-service data-source-ref="mensageriaDataSource"
  		authorities-by-username-query="SELECT u.nme_funcionario, u.pwd_funcionario
  		FROM tb_funcionario u WHERE u.nem_funcionario=?"
  		users-by-username-query="SELECT nme_funcionario,pwd_funcionario FROM tb_funcionario 
  		WHERE nme_funcionario=?"/>
   	</authentication-provider>
  </authentication-manager>
  </b:beans>

Se alguém tiver alguma solução para esse problema ou alguma outra solução com SpringSecutiry que consiga trazer dados dinâmicos para autenticação eu agradeceria muito.

as roles (não tem como ser dinâmicas) pelo menos nunca vi em Spring Security… Mas as ações sim tem como ser dinâmicas

Exemplo :
role: papel 1 (com permissão de gravar e editar) isso poderia ser dinâmico tirar ou incluir ações