3.2.3. 连接到管理接口
在尝试连接到管理接口之前,您需要有一个有效的 Kerberos 票据。如果安全域无法通过 Kerberos 验证用户,在使用传统安全解决方案时,它将尝试使用 <authentication> 元素中指定的任何方法验证用户。elytron 子系统的行为与传统安全解决方案类似。如果 Kerberos 身份验证机制失败,身份验证将回退到您在保护管理界面的身份验证工厂中定义的任何其他机制。通常,DIGEST 或 BASIC 用作回退。
当您使用浏览器连接到基于 Web 的管理控制台时,安全域将尝试基于该票据进行身份验证。
连接到管理 CLI 时,您需要使用 -Djavax.security.auth.useSubjectCredsOnly=false 参数,因为这允许 GSSAPI 实施利用操作系统级别管理的身份。您可能需要根据环境的设置方式使用以下参数:
- -Djava.security.krb5.realm=REALM_NAME
- 指定 realm 名称。
- -Djava.security.krb5.kdc=KDC_HOSTNAME
- 指定 KDC 的位置。
- --no-local-auth
- 禁用本地身份验证.如果您尝试连接运行 脚本的同一计算机上运行的 JBoss EAP 实例,这非常有用。
命令示例
EAP_HOME/bin/jboss-cli.sh -c -Djavax.security.auth.useSubjectCredsOnly=false --no-local-auth
$ EAP_HOME/bin/jboss-cli.sh -c -Djavax.security.auth.useSubjectCredsOnly=false --no-local-auth
如果在客户端和服务器之间使用 HTTP 代理,则必须注意避免将不同经过身份验证的客户端共享同一服务器之间的经过身份验证的连接。如果不被允许,则服务器可以轻松丢失安全性上下文关联跟踪。正确遵循客户端到服务器身份验证完整性的代理将在代理的 HTTP 响应中为客户端 提供Proxy-support: Session-Based-Authentication HTTP 标头。客户端 不得 通过代理利用 SPNEGO HTTP 身份验证机制,除非代理提供来自服务器的 401 Unauthorized 响应。