gpt4 book ai didi

grails - 如何为同一实例上的不同用户授予不同的权限

转载 作者:行者123 更新时间:2023-12-02 15:09:58 25 4
gpt4 key购买 nike

在我的grails应用程序中,我安装了spring security acl及其工作正常。我有一个域类客户和三个角色,即admin,销售,其他。
如何为同一域实例上的不同用户授予权限,即,对于ROLE_ADMIN(创建,读取,删除和写入),ROLE_SALES(创建,读取)和ROLE_OTHERS(创建,读取,写入)。

示例:x是由管理员角色创建的客户实例,该客户具有写,删除和读取的权限。
对于同一个x实例,如何授予销售角色的读写权限以及其他角色的创建,读写权限

最佳答案

您可以在类级别或方法级别放置@Secured授权注释。这样,您可以将 Controller 方法锁定为某些角色。例如,如果您要控制Thing域类,则可以通过以下方式注释其 Controller :

class ThingController {
@Secured(['ROLE_ADMIN', 'ROLE_SALES', 'ROLE_OTHERS'])
create() {
// creation logic
}

@Secured(['ROLE_ADMIN', 'ROLE_SALES', 'ROLE_OTHERS'])
read() {
// read logic
}

@Secured('ROLE_ADMIN')
delete() {
// delete logic
}

@Secured(['ROLE_ADMIN', 'ROLE_OTHERS'])
write() {
// write logic
}
}

Here是Grails Spring Security文章的很好的介绍(请参阅“添加访问控制”和“注释”下的内容)。 And here是关于此主题的正式Grails Spring Security文档。

关于grails - 如何为同一实例上的不同用户授予不同的权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18287544/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com