第 9 章 授权模块


以下模块提供授权服务:

Expand
Codeclass

DenyAll

org.jboss.security.authorization.modules.AllDenyAuthorizationModule

PermitAll

org.jboss.security.authorization.modules.AllPermitAuthorizationModule

委派

org.jboss.security.authorization.modules.DelegatingAuthorizationModule

Web

org.jboss.security.authorization.modules.web.WebAuthorizationModule

JACC

org.jboss.security.authorization.modules.JACCAuthorizationModule

XACML

org.jboss.security.authorization.modules.XACMLAuthorizationModule

AbstractAuthorizationModule
这是基础授权模块,必须覆盖,并提供委派至其他授权模块的功能。此基础授权模块还为覆盖类提供 delegateMap 属性,允许为特定组件声明委派模块。这可以使更为专业的类来处理每个层的授权,如 webejb 等,因为用于授权用户的信息可能会因所访问的资源而异。例如,授权模块可以基于权限,但具有不同的 Webejb 资源权限类型。默认情况下,授权模块将强制处理所有可能的资源和权限类型,但配置 delegateMap 选项允许该模块委派给不同资源类型的特定类。delegateMap 选项采用以逗号分隔的模块列表,每个模块都带有其相关组件的前缀,例如 <module-option name="delegateMap">web=xxx.yyy.Myyy.MyWebDelegate,ejb=xxxx.yyEJBDelegate</module-option>
重要

在配置 delegateMap 选项时,每个委派必须实施 authorize(Resource) 方法,并让它像提供的授权模块一样 调用 invocationDelegate(Resource) 方法。如果不这样做,则会导致委派不会被调用。

AllDenyAuthorizationModule
这是一个简单的授权模块,始终拒绝授权请求。没有可用的配置选项。
AllPermitAuthorizationModule
这是一个简单的授权模块,始终允许授权请求。没有可用的配置选项。
DelegatingAuthorizationModule
这是将决策委派给配置委托的默认授权模块。此模块也支持 delegateMap 选项。
WebAuthorizationModule
这是具有默认 Tomcat 授权逻辑的默认 Web 授权模块,允许所有操作。
JACCAuthorizationModule
此模块使用两个代表实施 Jakarta 授权语义: WebJACCPolicyModuleDelegate 用于 Web 容器授权请求,以及针对 Jakarta Enterprise Beans 容器请求的 EJBJACCPolicyModuleDelegate。此模块也支持 delegateMap 选项。
XACMLAuthorizationModule
此模块通过两个代表来实施 XACML 授权,这些代表负责 Web 和 Jakarta Enterprise Beans 容器,WebXACMLPolicyModuleDelegateEJBXACMLPolicyModuleDelegate。它根据注册的策略创建一个 PDP 对象,并评估针对它的 web 或 Jakarta Enterprise Beans 请求。此模块也支持 delegateMap 选项。
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

關於紅帽

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

让开源更具包容性

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

关于红帽文档

Legal Notice

Theme

© 2026 Red Hat
返回顶部