如何以编程方式更改用户权限?
Posted
技术标签:
【中文标题】如何以编程方式更改用户权限?【英文标题】:How to change user authorities programmatically? 【发布时间】:2011-05-20 21:55:24 【问题描述】:大家好 我正在使用弹簧安全 3.0.2 我想在登录后获得用户权限并向他添加另一个角色 所以他可以访问一些需要新角色的页面 怎么办?
【问题讨论】:
【参考方案1】:我在这里玩过这个方法:
User Granted Authorities are always : ROLE_ANONYMOUS?
它成功了。
【讨论】:
你能解释一下你对那里的方法做了什么吗?【参考方案2】:您必须创建从数据库加载权限数据的身份验证提供程序。在这个*** question 中,您可以看到实现它的方法。每当您需要更改用户权限时,您只需更改数据库中的数据。
【讨论】:
【参考方案3】:@Javi:我不知道如何评论你的答案,所以我不得不创建一个新的。
您的解决方案的问题是用户必须注销并重新登录才能获得新角色。我认为 Sword101 想要完成的是动态地为用户添加一个新角色,而无需重新登录。
不过,这也是我正在研究的一个问题,到目前为止还没有找到合适的解决方案。
我尝试在我的(自定义)UserDetails 对象中使用一个标志来实现它。该标志由选民读取并相应投票。但这并没有真正按预期进行。但我可能会再调查一下,看看出了什么问题。
【讨论】:
以上是关于如何以编程方式更改用户权限?的主要内容,如果未能解决你的问题,请参考以下文章