3.3. 用于提升的 Kerberos 身份验证集成


除了使用 Kerberos 保护管理界面和 Web 应用外,您还可以为通过远程访问的服务配置 Kerberos 身份验证,如 EJB。

还需要配置 Kerberos 的系统属性。如需更多信息,请参阅配置 Elytron 子系统

要配置 Kerberos 身份验证,您需要执行以下操作:

  1. 使用 remoting 和 RealmDirect配置安全域

    您需要配置安全域,以供通过远程访问的服务使用。此安全域需要同时使用 Remoting login 模块和 RealmDirect 登录模块,如 RealmDirect 或 RealmUsersRoles。本质上,它应当与默认提供 的其他 安全域非常相似。有关每个登录模块的具体配置选项的详情,请查看 JBoss EAP登录模块参考

    示例:带有远程和 RealmDirect 登录模块的安全域

    /subsystem=security/security-domain=krb-remoting-domain:add()
    
    /subsystem=security/security-domain=krb-remoting-domain/authentication=classic:add()
    
    /subsystem=security/security-domain=krb-remoting-domain/authentication=classic/login-module=Remoting:add(code=Remoting, flag=optional, module-options=[password-stacking=useFirstPass])
    
    /subsystem=security/security-domain=krb-remoting-domain/authentication=classic/login-module=RealmDirect:add(code=RealmDirect, flag=required, module-options=[password-stacking=useFirstPass, realm=krbRealm])
    
    /subsystem=security/security-domain=krb-remoting-domain/mapping=classic:add()
    
    /subsystem=security/security-domain=krb-remoting-domain/mapping=classic/mapping-module=SimpleRoles:add(code=SimpleRoles, type=role, module-options=["testUser"="testRole"])
    
    reload

  2. 为 Kerberos 身份验证配置安全域.

    有关使用 Kerberos 身份验证设置安全域的信息,请参见"通过 Kerberos 保护管理接口 "一节。

    示例: Security Realm

    /core-service=management/security-realm=krbRealm:add()
    
    /core-service=management/security-realm=krbRealm/server-identity=kerberos:add()
    
    /core-service=management/security-realm=krbRealm/server-identity=kerberos/keytab=remote\/localhost@JBOSS.ORG:add(path=\/path\/to\/remote.keytab, debug=true)
    
    /core-service=management/security-realm=krbRealm/authentication=kerberos:add(remove-realm=true)
    
    reload

  3. 在远程子系统 中配置 HTTP 连接器。

    此外,您需要在远程子系统 中配置 HTTP 连接器,以使用新创建的安全域。

    示例:删除子系统

    /subsystem=remoting/http-connector=http-remoting-connector:write-attribute(name=security-realm, value=krbRealm)

  4. 配置 服务的安全性。

    您还必须设置使用远程接口访问的服务以 进行保护。这将因服务而异。例如,对于 EJB,您可以使用 @SecurityDomain@RolesAllowed 注释。

Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2026 Red Hat
返回顶部