问题标签 [spring-security-acl]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
spring - Thymeleaf 安全方言 - hasPermission()
我们将具有角色和权限的 Spring Security 与 Spring ACL 一起使用。前端由 Thymeleaf(版本 3)呈现。应用程序用户可以拥有具有不同权限的角色或直接访问由 ACL 设置的某些域对象。
后端部分的一切都按预期工作,但我无法在 Thymeleaf 模板中正确编写 sec:authorize,该模板会将hasAuthority()和hasPermission()组合在一个表达式中。用户可以通过特定角色拥有实体级权限,也可以通过 Spring ACL 拥有实例级权限。
具体例子
我有一个显示由 ACL 保护的域对象的表。我想通过 sec:authorize 来限制某些操作,以检查当前用户是否被允许执行此操作。
但是 hasPermission 评估由于某种原因在这里不起作用。我根本无法访问那里的本地secureObject。ACL 安全将其视为 null 并拒绝访问。我尝试了不同的语法 (hasPermission(${securedObject},'ADMINISTRATION') 等,但没有成功。
有趣的是,它可以正确使用 sec:authorize-acl 正确:
但是,以这种方式编写时,无法将其与实体级别的权限 (hasRole()) 结合使用,因此:
在这两者之间创建逻辑与,因此用户必须同时拥有 - 某些角色和 ACL 授予的访问权限。
grails - 了解spring security acl中的createacl?
我正在关注本教程以了解 spring acl 的工作原理。
https://grails-plugins.github.io/grails-spring-security-acl/v3/index.html#tutorial
示例数据服务如下。
我关心的是这条线
createacl 的目的是什么?我注释掉了这一行,该应用程序似乎运行正常。那么这条线不需要吗?
我很感激任何帮助!谢谢!
java - Spring Security ACL:我无法更新 ACL (SQLIntegrityConstraintViolationException)
我正在尝试学习并将一些 Spring Security ACL 控件应用于我的 Spring Boot 项目。因此,我尝试重用Spring Security 参考中的代码片段,我已经对其进行了一些调整以适应我的项目需求。
我有以下组件在开始时用一些初始值填充数据库。
每次刷新应用程序上下文时都会运行此方法。我可以看到,如果我只运行一种测试方法(或测试类),它就会成功运行。这些测试是端到端测试 ( @RunWith(SpringRunner.class) @SpringBootTest
)。另外,我一个人跑也没问题@SpringBootApplication
。但是,如果我一次运行所有测试,几乎所有测试都会@SpringBootTest
失败,并出现以下堆栈跟踪
我有一些问题:
- 为什么当我运行多个测试类时会发生此错误?
- 我怎样才能找到解决方法?有没有更好的方法来完成同样的事情?
谢谢!:-)
spring-data-rest - 在 spring-security-acl 中创建新的 ACL 条目
我正在使用spring-security-acl
基于 Spring Boot 的应用程序实现基于 ACL 的身份验证。我已经配置了我的应用程序并创建了 ACL 所需的 4 个表,并且授权在 READ 或 WRITE 类型的操作期间运行良好。但现在,我在我的 ACL 表中手动创建条目。
我正在寻找一种在创建、更新和删除新对象时自动创建、更新和删除 ACL 条目的方法。我知道aclService
bean 有相关的方法,createAcl
但我发现很难有效地连接它们。
我当前的场景有一些存储库,我使用spring-data-rest
. 因此,我不会为基于写入的操作手动编写任何控制器方法。因此,我不知道如何引入 ACL 条目的创建(或更新和删除)。
我已经看到了这个问题Using Spring Security ACL但它确实没有回答如何将事情与spring-data-rest
spring-security - 带有 EhCache 3 的 Spring Security ACL
我尝试更新到 EhCache 3,但注意到我的 spring-security-acl 的 AclConfig 不再有效。原因EhCacheBasedAclCache
仍然是使用import net.sf.ehcache.Ehcache
。EhCacheorg.ehcache
从版本 3 开始移动,因此不再有效。spring 是否为 EhCache 3 提供了替代类,或者我需要实现自己的 Acl Cache?这是代码,不再有效:
spring-boot - Spring Security ACL 与 Spring Boot 2 集成
我用谷歌搜索了很多带有spring boot 2演示的 spring security acl,但是什么也没有。有人有例子可以和我分享吗?
grails - ACL Grails 插件
Grails spring security acl插件是唯一使用的Grails services
所以我不能使用它Grails Controllers
spring-webflux - 是否可以将 spirng security acl 与 spring webflux 一起使用?
我想用 spring security acl 启动 spring web Flux 项目,但我找不到任何教程。是否可以将这两个项目合并在一起并在单个项目中使用?
java - Spring Security ACL 错误找不到对象标识的 ACL 信息
在我的项目中,我使用 postgresql 数据库配置 Spring Security ACL。
我提到了https://www.baeldung.com/spring-security-acl
postgresql 架构:
acl 数据:
acl 安全性上的数据对象(模型:it.aaxxxx.xxxbackend.model.Persona) INSERT INTO public.persona (id, nome) VALUES(1,'Pippo');
我调用控制器返回角色,返回此错误:
spring - 方法级别的角色和权限 Spring boot
我需要在方法级别获得授权,以便具有适当权限的用户只能访问它。该方法将包含一个标记作为参数。我需要通过令牌进行 API 调用并获取用户电子邮件 ID。获得电子邮件 ID 后,我需要从数据库中获取用户的角色和权限。然后,如果用户具有适当的角色,则调用该方法,否则返回 403 错误。
有没有办法在 Spring Boot 中完成这项工作?我将在授权后有多种方法,并希望在方法级别有某种注释。
谢谢。