Java 为匿名用户动态添加主体/权限
我使用的是SpringSecurity2.x(+spring+struts2),希望在用户提交表单后能够动态地向用户添加权限 我有一个受保护的目录(/protected/dir/),它受角色\用户的保护Java 为匿名用户动态添加主体/权限,java,spring,struts2,spring-security,Java,Spring,Struts2,Spring Security,我使用的是SpringSecurity2.x(+spring+struts2),希望在用户提交表单后能够动态地向用户添加权限 我有一个受保护的目录(/protected/dir/),它受角色\用户的保护 <sec:intercept-url pattern="/protected/dir/**" access="ROLE_USER, ROLE_ADMIN" /> 哪个用户登录后可以访问 我想通过向主体添加一个临时角色(可能不存在,因为用户尚未登录,所以我可能也必须将其添加到se
<sec:intercept-url pattern="/protected/dir/**" access="ROLE_USER, ROLE_ADMIN" />
哪个用户登录后可以访问
我想通过向主体添加一个临时角色(可能不存在,因为用户尚未登录,所以我可能也必须将其添加到securityContext),使提交表单(未登录)的用户可以访问此文件
我已尝试访问SecurityContext并在控制器/操作类中添加新主体。但我无法获取SecurityContext。(我认为SecurityContext只在它自己的线程上运行,你不能传递它,这就是我得到NPE的原因)
那么,最好的方法是什么呢
请告知
谢谢支持匿名用户的一种方法是添加此筛选器:
/**
* Detects if there is no Authentication object in the SecurityContextHolder,
* and populates it with one if needed.
*/
org.springframework.security.providers.anonymous.AnonymousProcessingFilter
筛选器具有此属性,该属性将强制筛选器在请求完成后删除匿名会话:
public void setRemoveAfterRequest(boolean removeAfterRequest);
如果用户未登录,则没有安全上下文。哦。。好啊那么,我如何自动登录用户并授予他临时访问文件夹的权限?