17.2. 使用 Elytron 配置 Jakarta Security

使用 elytron 子系统启用 Jakarta 安全

Jakarta Security 中定义的 SecurityContext 界面使用 Jakarta Authorization 策略供应商来访问当前的身份验证身份。要让您的部署使用 SecurityContext 界面,您必须配置 elytron 子系统来管理 Jakarta 授权配置,并定义默认的 Jakarta 授权策略提供商。

  1. 在传统 安全 子系统中禁用 Jakarta 授权。如果 Jakarta 授权已配置为由 Elytron 管理,请跳过这一步。

    /subsystem=security:write-attribute(name=initialize-jacc, value=false)
  2. etlyron 子系统中定义 Jakarta 授权策略提供程序,再重新加载服务器。

    /subsystem=elytron/policy=jacc:add(jacc-policy={})
    reload

为 Web 应用启用 Jakarta 安全性

要为 Web 应用启用 Jakarta Security,需要将 Web 应用与 Elytron http-authentication-factorysecurity-domain 关联。这将安装 Elytron 安全处理程序,并为部署激活 Elytron 安全框架。

启用 Jakarta 安全的最低步骤是:

  1. undertow 子系统上的 default-security-domain 属性保留为未定义,以使其默认为 other
  2. 添加从其他 Elytron 安全域的 application-security-domain 映射:

    /subsystem=undertow/application-security-domain=other:add(security-domain=ApplicationDomain, integrated-jaspi=false)

    integrated-jaspi 设置为 false 时,会动态创建临时身份。

Jakarta 安全基于 Jakarta 身份验证构建。有关配置 Jakarta 身份验证的详情,请参考 使用 Elytron 配置 Jakarta 身份验证安全性