第 4 章 HawtIO 的安全性和身份验证
HawtIO 根据其运行的 runtime/containers,启用开箱即用的身份验证。要将 HawtIO 与应用程序一起使用,需要为运行时设置身份验证或禁用 HawtIO 身份验证。
4.1. 配置属性
下表列出了 HawtIO 核心系统的安全相关配置属性。
Name | 默认 | 描述 |
---|---|---|
hawtio.authenticationContainerDiscoveryClasses | io.hawt.web.tomcat.TomcatAuthenticationContainerDiscovery | 以逗号分开的已用 AuthenticationContainerDiscovery 实现列表。默认情况下,只有 TomcatAuthenticationContainerDiscovery,用于验证来自 tomcat-users.xml 文件的 Tomcat 用户。如果要从配置的 JAAS 登录模块验证 Tomcat 上的用户,或者可以自由地添加更多您自己的类,可以将其删除。 |
hawtio.authenticationContainerTomcatDigestAlgorithm | NONE | 使用 Tomcat tomcat-users.xml 文件时,密码可以散列而不是纯文本。使用它来指定摘要算法;有效值为 NONE、MD5、SHA-256、SHA-256、SHA-384 和 SHA-512。 |
hawtio.authenticationEnabled | true | 是否启用安全性。 |
hawtio.keycloakClientConfig | classpath:keycloak.json | 用于前端的 Keycloak 配置文件。如果启用了 Keycloak 集成,则是必须的。 |
hawtio.keycloakEnabled | false | 是否启用或禁用 Keycloak 集成。 |
hawtio.noCredentials401 | false | 在启用身份验证时是否返回 HTTP 状态 401,但没有提供凭证。返回 401 将导致浏览器弹出窗口提示凭据。默认情况下,这个选项为 false,返回 HTTP 状态 403。 |
hawtio.realm | hawtio | 用于登录的安全域。 |
hawtio.rolePrincipalClasses | 完全限定的主体类名称。逗号可以分隔多个类。 | |
hawtio.roles | admin, manager, viewer | 登录控制台需要用户角色。逗号可以分隔多个允许的角色。设置为 * 或空值,在 HawtIO 验证用户时禁用角色检查。 |
hawtio.tomcatUserFileLocation | conf/tomcat-users.xml | 指定 tomcat-users.xml 文件的替代位置,如 /production/userlocation/。 |