3.4. 使用安全缓存执行代码


当您为使用安全授权的嵌入式缓存构建 DefaultCacheManager 时,缓存管理器会返回 SecureCache,它会在调用任何操作前返回检查安全上下文。SecureCache 还确保应用无法检索较低级别的不安全对象,如 DataContainer。因此,您必须使用具有相应权限级别的角色的 Data Grid 用户执行代码。

先决条件

  • 为内嵌缓存配置授权。

流程

  1. 如有必要,从 Data Grid 上下文或 AccessControlContext 检索当前主题:

    Security.getSubject();
  2. PrivilegedAction 中的嵌套方法调用,以便使用 Subject 执行它们。

    Security.doAs(mySubject, (PrivilegedAction<String>)() -> cache.put("key", "value"));
注意

您可以使用 Security.doAs ()Subject.doAs () 方法。数据网格建议 Security.doAs () 提高性能。

Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2026 Red Hat
返回顶部