第 8 章 参考
8.1. 自定义资源配置参考
自定义资源定义(CRD)是使用 Operator 部署的自定义 OpenShift 对象的配置项模式。通过部署对应的自定义资源(CR)实例,您可以为 CRD 中显示的配置项目指定值。
以下子部分详细介绍了您可以根据主代理 CRD 在自定义资源实例中设置的配置项目。
8.1.1. 代理自定义资源配置参考
基于主代理 CRD 的 CR 实例允许您在 OpenShift 项目中配置代理。下表描述了您可以在 CR 实例中配置的项目。
在您部署的任何对应自定义资源(CR)中,需要标记为星号的配置项目。如果没有为非必需项目显式指定值,则配置将使用默认值。
entry | 子条目 | 描述和使用 |
---|---|---|
| 连接到代理和管理控制台所需的管理员用户名。
如果没有指定值,则该值会自动生成并存储在 secret 中。默认 secret 名称的格式格式为 < 类型 :字符串 示例 :my-user 默认值 :自动生成的随机值 | |
| 连接到代理和管理控制台所需的管理员密码。
如果没有指定值,则该值会自动生成并存储在 secret 中。默认 secret 名称的格式格式为 < 类型 :字符串 示例 :my-password 默认值 :自动生成的随机值 | |
| 代理部署配置 | |
| 用于部署中每个代理的代理容器镜像的完整路径。
您不需要为 CR 中的 要了解 Operator 如何选择要使用的代理容器镜像,请参阅 第 2.6 节 “Operator 如何选择容器镜像”。 类型 :字符串 示例: registry.redhat.io/amq7/amq-broker-rhel8@sha256:137b893ad15e0cd53bae134c8fae833257a12641b12d0f774f1565ce66f63c 默认值 :占位符 | |
| 要在部署中创建的代理 Pod 数量。
如果指定了 2 或更高值,则代理部署默认为集群。默认情况下,集群用户名和密码会自动生成并存储在与 类型: int 示例 :1 默认值 :1 | |
| 指定是否需要连接到代理。 类型 :布尔值 示例 :false 默认值: true | |
|
指定是否在部署中的每个代理 Pod 使用日志存储。如果设置为 类型 :布尔值 示例 :false 默认值: true | |
| 用于配置代理的 init 容器镜像。
除非您要提供自定义镜像,否则您不需要在 CR 中为 要了解 Operator 如何选择要使用的内置初始容器镜像,请参阅 第 2.6 节 “Operator 如何选择容器镜像”。 要了解如何指定自定义初始容器镜像,请参阅 第 4.9 节 “指定自定义初始容器镜像”。 类型 :字符串 示例: registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b0b3684ef1ebf8b44d3a4c46391984173792dde1bd7363ea06d43a8f95a717d0 默认值 : 不指定 | |
| 指定是否使用异步 I/O (AIO)还是非阻塞 I/O (NIO)。 类型 :字符串 示例 :aio 默认值 :nio | |
| 当代理 Pod 因为代理部署的意图而关闭时,指定是否将消息迁移到仍在代理集群中运行的另一个代理 Pod。 类型 :布尔值 示例 :false 默认值: true | |
| 在部署中的 Pod 中运行的每个代理容器都可以使用主机节点 CPU 的最大数量(以 millicore 为单位)。 类型 :字符串 示例 :"500m" 默认值 :使用与 OpenShift Container Platform 版本相同的默认值。请参阅集群管理员。 | |
| 在部署中每个代理容器都可以消耗的最大主机节点内存量,以字节为单位。支持字节表示法(如 K、M、G)或二进制等效(Ki、Mi、Gi)。 类型 :字符串 示例 :"1024M" 默认值 :使用与 OpenShift Container Platform 版本相同的默认值。请参阅集群管理员。 | |
| 主机节点 CPU 量(以 millicores 为单位),每个代理容器都在部署的 Pod 中运行明确请求。 类型 :字符串 示例 :"250m" 默认值 :使用与 OpenShift Container Platform 版本相同的默认值。请参阅集群管理员。 | |
| 在部署中运行的每个代理容器都明确请求的主机节点内存量(以字节为单位)。支持字节表示法(如 K、M、G)或二进制等效(Ki、Mi、Gi)。 类型 :字符串 示例 :"512M" 默认值 :使用与 OpenShift Container Platform 版本相同的默认值。请参阅集群管理员。 | |
|
部署中每个代理用于持久性存储所需的 PVC 的大小(以字节为单位)。只有在 类型 :字符串 示例 :4Gi 默认值 : 2Gi | |
|
指定是否为部署中的代理启用 Jolokia JVM 代理。如果此属性的值设为 类型 :布尔值 示例 : true 默认值: false | |
|
指定是否为部署中的代理启用基于角色的访问控制(RBAC)。要使用 Fuse 控制台,您必须 将值设为 类型 :布尔值 示例 :false 默认值: true | |
| 为 pod 指定调度限制。如需有关关联性属性的信息,请参阅 OpenShift Container Platform 文档中的 属性。 | |
| 指定 pod 的容限。如需有关容限属性的信息,请参阅 OpenShift Container Platform 文档中的 属性。 | |
| 指定与节点标签匹配的标签,用于调度到该节点上的 pod。 | |
| 指定用于持久性卷声明(PVC)的存储类的名称。存储类为管理员提供了描述和分类可用存储的方法。例如,存储类可能具有特定的服务质量级别、备份策略或其他与其关联的管理策略。 类型 :字符串 示例 : gp3 默认值 : 不指定 | |
| 配置启动探测来检查代理容器中的 AMQ Broker 应用程序是否已启动。有关启动探测属性的详情,请查看 OpenShift Container Platform 文档中的 属性。 | |
| 在正在运行的代理容器上配置定期健康检查,以检查代理是否正在运行。如需有关存活度探测属性的信息,请参阅 OpenShift Container Platform 文档中的 属性。 | |
| 在正在运行的代理容器上配置定期健康检查,以检查代理是否接受网络流量。有关就绪度探测属性的详情,请查看 OpenShift Container Platform 文档中的 属性。 | |
| 将包含配置信息的 secret 或 configMAP 作为一个文件挂载到代理 Pod 上。例如,您可以挂载一个包含 AMQ Broker 的自定义日志记录配置的 secret。 类型 :对象 详情示例 第 4.15 节 “为代理配置日志记录” 默认值 : 不指定 | |
| 为代理 pod 分配标签。 类型 :字符串 示例 :位置:"生产环境" 默认值 : 不指定 | |
| 为代理 pod 指定服务帐户名称。 类型 :字符串 示例 :amq-broker-controller-manager 默认值 :default | |
| 指定以下 pod 级别安全属性和通用容器设置。 * fsGroup * fsGroupChangePolicy * runAsGroup * runAsUser * runAsNonRoot * seLinuxOptions evince SeccompProfile * supplementalGroups 过程 sysctl * windowsOptions
如需有关 | |
| 配置代理管理控制台。 | |
| 指定是否在部署中公开每个代理的管理控制台端口。 类型 :布尔值 示例 : true 默认值: false | |
| 指定是否在管理控制台端口上使用 SSL。 类型 :布尔值 示例 : true 默认值: false | |
|
存储代理密钥存储、信任存储及其对应密码(所有 Base64 编码)的 secret。如果没有为 类型 :字符串 示例 :my-broker-deployment-console-secret 默认值 : 不指定 | |
| 指定管理控制台是否需要客户端授权。 类型 :布尔值 示例 : true 默认值: false | |
| 单个 acceptor 配置实例。 | |
| 接受者的名称。 类型 :字符串 示例 :my-acceptor 默认值 :不适用 | |
| 用于 acceptor 实例的端口号。 类型: int 示例 : 5672 您为您定义的 第一个接受者的默认值 : 61626。然后,对于您定义的每个后续接受者,默认值会乘以 10。 | |
| 要在 acceptor 实例上启用的消息协议。 类型 :字符串 示例 :amqp,core 默认值 :all | |
|
指定在 acceptor 端口上是否启用了 SSL。如果设置为 类型 :布尔值 示例 : true 默认值: false | |
| 存储代理密钥存储、信任存储及其对应密码(所有 Base64 编码)的 secret。
如果没有为 您必须始终自行创建此 secret,即使接受者假定默认名称。 类型 :字符串 示例 :my-broker-deployment-my-acceptor-secret 默认值 : <custom_resource_name>- <acceptor_name> -secret | |
| 用于 TLS 通信的密码套件的逗号分隔列表。
指定客户端应用程序支持的最安全密码套件。如果您指定了代理和客户端通用的、以逗号分隔的密码套件列表,或者您没有指定任何密码套件、代理和客户端相互协商要使用的密码套件。如果您不知道要指定哪个密码套件,您可以首先与以 debug 模式运行的客户端建立 broker-client 连接,以验证代理和客户端通用的密码套件。然后,在代理上配置
可用的密码套件取决于代理和客户端使用的 TLS 协议版本。如果在升级代理后默认 TLS 协议版本有变化,您可能需要选择早期的 TLS 协议版本,以确保代理和客户端可以使用通用密码套件。如需更多信息,请参阅 类型 :字符串 默认值 : 不指定 | |
| 用于 TLS 通信的、以逗号分隔的协议列表。 类型 :字符串 示例 :TLSv1,TLSv1.1,TLSv1.2 默认值 : 不指定
如果没有指定 TLS 协议版本,代理将使用 JVM 的默认版本。如果代理使用 JVM 的默认 TLS 协议版本,且升级代理后该版本会改变,代理和客户端使用的 TLS 协议版本可能会不兼容。虽然建议您使用更新的 TLS 协议版本,但您可以在 | |
| 代理使用的密钥存储的供应商名称。 类型 :字符串 示例 : SunJCE 默认值 : 不指定 | |
| 代理使用的信任存储的供应商名称。 类型 :字符串 示例 : SunJCE 默认值 : 不指定 | |
| 代理使用的信任存储类型。 类型 :字符串 示例 :JCEKS 默认值 :JKS | |
|
指定代理是否通知客户端是否需要双向 TLS。此属性覆盖 类型 :布尔值 示例 : true 默认值 : 不指定 | |
|
指定代理是否通知客户端在接受者上 请求 双向 TLS,但不需要。此属性被 类型 :布尔值 示例 : true 默认值 : 不指定 | |
| 指定是否将客户端证书的通用名称(CN)与主机名进行比较,以验证它们是否匹配。这个选项仅在使用双向 TLS 时适用。 类型 :布尔值 示例 : true 默认值 : 不指定 | |
| 指定 SSL 供应商是否为 JDK 还是 OPENSSL。 类型 :字符串 示例 : OPENSSL 默认值 : JDK | |
|
与传入连接上的 类型 :字符串 示例 : some_regular_expression 默认值 : 不指定 | |
| 指定是否向 OpenShift Container Platform 之外的客户端公开接受者。 当您向 OpenShift 外部的客户端公开接受器时,Operator 会自动为部署中的每个代理 Pod 创建专用服务和路由。 类型 :布尔值 示例 : true 默认值: false | |
|
客户端用来指定应使用 类型 :字符串 示例 : jms.queue 默认值 : 不指定 | |
|
客户端用来指定应使用 类型 :字符串 示例 : /topic/ 默认值 : 不指定 | |
| 接受者上允许的连接数。当达到这个限制时,会向日志发出 DEBUG 消息,并且拒绝连接。正在使用的客户端类型决定了连接被拒绝时会发生什么。 类型 :整数 示例 : 2 默认值 : 0 (无限连接) | |
|
代理处理 AMQP 消息的最小消息大小(以字节为单位)。如果 AMQP 消息的大小等于这个值,代理会将消息存储在大型消息目录中( 类型 :整数 示例 : 204800 默认值 : 102400 (100 KB) | |
| 如果设置为 true,使用 0.0.0.0 IP 地址而不是 pod 的内部 IP 地址配置代理 acceptors。当代理接受器有一个 0.0.0.0 IP 地址时,它们绑定到为 pod 配置的所有接口,客户端可以使用 OpenShift Container Platform 端口转发将流量定向到代理。通常,您可以使用此配置调试服务。如需有关端口转发的更多信息,请参阅 OpenShift Container Platform 文档中的使用 端口转发访问容器中的应用程序。 注意 如果错误地使用端口转发,则可以为您的环境造成安全风险。在可能的情况下,红帽建议您不要在生产环境中使用端口转发。 类型 :布尔值 示例 : true 默认值: false | |
| 单个连接器配置实例。 | |
| 连接器的名称。 类型 :字符串 示例 :my-connector 默认值 :不适用 | |
|
要创建的连接器类型; 类型 :字符串 示例 :vm 默认值 :tcp | |
| 要连接的主机名或 IP 地址。 类型 :字符串 示例 :192.168.0.58 默认值 : 不指定 | |
| 用于连接器实例的端口号。 类型: int 示例 : 22222 默认值 : 不指定 | |
|
指定是否在连接器端口上启用 SSL。如果设置为 类型 :布尔值 示例 : true 默认值: false | |
| 存储代理密钥存储、信任存储及其对应密码(所有 Base64 编码)的 secret。
如果您没有为 您必须始终自行创建此 secret,即使连接器假定默认名称。 类型 :字符串 示例 :my-broker-deployment-my-connector-secret 默认值 : <custom_resource_name>- <connector_name> -secret | |
| 用于 TLS 通信的密码套件的逗号分隔列表。 类型 :字符串 注意 :对于连接器,建议您不要 指定密码套件列表。 默认值 : 不指定 | |
| 代理使用的密钥存储的供应商名称。 类型 :字符串 示例 : SunJCE 默认值 : 不指定 | |
| 代理使用的信任存储的供应商名称。 类型 :字符串 示例 : SunJCE 默认值 : 不指定 | |
| 代理使用的信任存储类型。 类型 :字符串 示例 :JCEKS 默认值 :JKS | |
| 用于 TLS 通信的、以逗号分隔的协议列表。 类型 :字符串 示例 :TLSv1,TLSv1.1,TLSv1.2 默认值 : 不指定 | |
|
指定代理是否通知客户端是否需要双向 TLS。此属性覆盖 类型 :布尔值 示例 : true 默认值 : 不指定 | |
|
指定代理是否通知客户端是否在连接器上 请求 双向 TLS,但不需要。此属性被 类型 :布尔值 示例 : true 默认值 : 不指定 | |
| 指定是否将客户端证书的通用名称(CN)与主机名进行比较,以验证它们是否匹配。这个选项仅在使用双向 TLS 时适用。 类型 :布尔值 示例 : true 默认值 : 不指定 | |
|
指定 SSL 提供程序是否为 类型 :字符串 示例 : OPENSSL 默认值 : JDK | |
|
与传出连接上的 类型 :字符串 示例 : some_regular_expression 默认值 : 不指定 | |
| 指定是否将连接器公开给 OpenShift Container Platform 之外的客户端。 类型 :布尔值 示例 : true 默认值: false | |
| 指定 Operator 如何应用添加到 CR 中的配置,用于每个匹配地址或一组地址。 您可以指定的值有:
类型 :字符串 示例: replace_all 默认值 :merge_all | |
| 匹配地址 或一组 地址的地址设置。 | |
|
指定使用
类型 :字符串 示例 : DROP 默认值 :PAGE | |
| 指定代理是否在客户端发送消息或尝试使用消息时自动创建地址,或者尝试从中绑定到不存在的地址的队列。 类型 :布尔值 示例 :false 默认值: true | |
| 指定代理是否自动创建死信地址和队列来接收未发送的消息。
如果参数设为 类型 :布尔值 示例 : true 默认值: false | |
| 指定代理是否自动创建地址和队列来接收过期的消息。
如果参数设为 类型 :布尔值 示例 : true 默认值: false | |
|
此属性已弃用。改为使用 | |
|
此属性已弃用。改为使用 | |
| 指定代理是否在客户端向发送消息时自动创建队列,还是尝试使用消息(一个尚不存在的队列)。 类型 :布尔值 示例 :false 默认值: true | |
| 指定代理在代理不再有任何队列时自动删除自动创建的地址。 类型 :布尔值 示例 :false 默认值: true | |
| 当地址没有队列时,代理会在自动删除自动创建的地址前等待的时间。 类型 :整数 示例 :100 默认值 :0 | |
|
此属性已弃用。改为使用 | |
|
此属性已弃用。改为使用 | |
| 指定代理是否在队列没有消费者且没有消息时自动删除自动创建的队列。 类型 :布尔值 示例 :false 默认值: true | |
| 指定代理是否在队列没有消费者且没有消息时自动删除手动创建的队列。 类型 :布尔值 示例 : true 默认值: false | |
| 当队列没有消费者时,代理会在自动删除自动创建的队列前等待的时间(毫秒)。 类型 :整数 示例 :10 默认值 :0 | |
| 代理在评估队列前可以位于队列中的最大消息数。 类型 :整数 示例 :5 默认值 :0 | |
| 重新加载配置文件后,此参数指定如何处理从配置文件中删除的地址(及其队列)。您可以指定以下值:
类型 :字符串 示例 :FORCE 默认值 :OFF | |
| 重新加载配置文件时,此设置指定代理如何处理从配置文件中删除的队列。您可以指定以下值:
类型 :字符串 示例 :FORCE 默认值 :OFF | |
| 代理发送死机(即 未发送)消息的地址。 类型 :字符串 示例 :DLA 默认值: None | |
| 代理应用到自动创建的死信队列的名称的前缀。 类型 :字符串 示例 :myDLQ。 默认值 :DLQ。 | |
| 代理应用到自动创建的死信队列的后缀。 类型 :字符串 示例 :.DLQ 默认值: None | |
| 自动创建的地址使用的路由类型。 类型 :字符串 示例 :ANYCAST 默认值 :MULTICAST | |
| 在消息分配前所需的消费者数量可以开始地址上的队列。 类型 :整数 示例 :5 默认值 :0 | |
| 消费者的默认窗口大小(以字节为单位)。 类型 :整数 示例 :300000 默认值 :1048576 (102439) 1024) | |
|
如果尚未达到为 类型 :整数 示例 :5 默认值 :-1 (无延迟) | |
| 指定地址上的所有队列是否默认是独占队列。 类型 :布尔值 示例 : true 默认值: false | |
| 用于消息分组的存储桶数量。 类型 :整数 示例 : 0 (禁用消息分组) 默认值 :-1 (无限制) | |
| 用于指示组中的消息第一个消息的 key。 类型 :字符串 示例 : firstMessageKey 默认值: None | |
| 指定在新消费者连接到代理时是否重新平衡组。 类型 :布尔值 示例 : true 默认值: false | |
| 指定在代理重新平衡组时是否暂停消息发送。 类型 :布尔值 示例 : true 默认值: false | |
| 指定地址上的所有队列是否默认是最后的值队列。 类型 :布尔值 示例 : true 默认值: false | |
| 用于最后一个值队列的默认键。 类型 :字符串 示例:pinning_ticker 默认值: None | |
| 队列中允许的最大消费者数。 类型 :整数 示例 :100 默认值 :-1 (无限制) | |
| 指定地址上的所有队列是否默认非破坏性。 类型 :布尔值 示例 : true 默认值: false | |
| 指定代理是否在没有消费者后清除队列的内容。 类型 :布尔值 示例 : true 默认值: false | |
|
自动创建的队列使用的路由类型。默认值为 类型 :字符串 示例 :ANYCAST 默认值 :MULTICAST | |
| 没有明确设置环大小的匹配队列的默认环大小。 类型 :整数 示例 :3 默认值 :-1 (无大小限制) | |
| 指定配置的指标插件,如 Prometheus 插件是否为匹配地址或一组地址收集指标。 类型 :布尔值 示例 :false 默认值: true | |
| 接收已过期消息的地址。 类型 :字符串 示例 :myExpiryAddress 默认值: None | |
| 过期时间(以毫秒为单位)应用于使用默认过期时间的信息。 类型 :整数 示例 :100 默认值 :-1 (不应用过期时间) | |
| 代理应用到自动创建的过期队列的名称的前缀。 类型 :字符串 示例 :myExp。 默认值 : EXP。 | |
| 代理应用到自动创建的过期队列名称的后缀。 类型 :字符串 示例 :.EXP 默认值: None | |
| 指定队列是否只使用最后一个值。 类型 :布尔值 示例 : true 默认值: false | |
| 指定管理资源可以浏览的消息数量。 类型 :整数 示例 :100 默认值 : 200 | |
| 将地址设置与代理上配置的地址匹配的字符串。您可以指定一个准确的地址名称,或使用通配符表达式将地址设置与一组地址匹配。
如果您使用通配符表达式作为 类型 :字符串 示例 : 'myAddresses114' 默认值: None | |
| 指定代理在向配置的死信地址发送消息前尝试发送消息的次数。 类型 :整数 示例 :20 默认值 :10 | |
| 过期时间(以毫秒为单位)应用到使用超过这个值的过期时间的信息。 类型 :整数 示例 :20 默认值 :-1 (不应用最长过期时间) | |
| 代理重新发送尝试之间的最大值(以毫秒为单位)。 类型 :整数 示例 :100
默认值 : | |
|
地址的最大内存大小(以字节为单位)。当 类型 :字符串 示例 :10Mb 默认值 :-1 (无限制) | |
|
地址在代理开始拒绝消息前可以访问的最大大小(以字节为单位)。当 类型 :整数 示例 :500 默认值 :-1 (无最大大小) | |
| 代理为地址保留消息计数器历史记录的天数。 类型 :整数 示例 :5 默认值 :0 | |
| 过期时间(以毫秒为单位)应用到使用过期时间小于这个值的信息。 类型 :整数 示例 :20 默认值 :-1 (不应用最小过期时间) | |
| 在分页导航过程中,要保留用于优化 I/O 的页文件数。 类型 :整数 示例 :10 默认值 :5 | |
|
分页大小(以字节为单位)。还支持字节表示法,如 类型 :字符串 示例 :20971520 默认值 :10485760 (大约 10.5 MB) | |
| 代理在 redelivering a cancelled 信息前等待的时间(毫秒)。 类型 :整数 示例 :100 默认值 :0 | |
| 在重新分发任何剩余的消息前,代理会在队列关闭了最后一个消费者后等待的时间。 类型 :整数 示例 :100 默认值 :-1 (未设置) | |
| 为在地址上创建未来的队列保留的消息数量。 类型 :整数 示例 :100 默认值 :0 | |
| 如果无法路由到任何队列,指定是否将消息发送到配置的死信地址。 类型 :布尔值 示例 : true 默认值: false | |
| 代理检查较慢消费者的频率( 以秒为单位 )。 类型 :整数 示例 :15 默认值 :5 | |
|
指定识别缓慢消费者时会发生什么。有效选项为 类型 :字符串 示例 : KILL 默认值 : NOTIFY | |
| 在消费者被视为缓慢前,每秒消息消耗率最小。 类型 :整数 示例 :100 默认值 :-1 (未设置) | |
| 为代理设置环境变量。 | |
| 为代理配置的属性名称和值列表。 类型 :数组 | |
'name:<变量名称 > | 为代理配置的环境变量名称和值列表。 类型 :数组 示例 :
Name: TZ 默认值 :不适用 |
|
配置没有在代理的自定义资源定义(CRD)中公开的代理属性,否则无法在自定义资源(CR)中配置。 | ||
|
为代理配置的属性名称和值列表。
类型 :字符串 示例 :globalMaxSize=512m 默认值 :不适用 |
|
8.1.2. 地址自定义资源配置参考
基于地址 CRD 的 CR 实例可让您在部署中定义代理的地址和队列。下表详细介绍了您可以配置的项目。
在您部署的任何对应自定义资源(CR)中,需要标记为星号的配置项目。如果没有为非必需项目显式指定值,则配置将使用默认值。
entry | 描述和使用 |
---|---|
| 要在代理中创建的地址名称。 类型 :字符串 示例 : address0 默认值 : 不指定 |
|
要在代理中创建的队列名称。如果没有指定 类型 :字符串 示例 : queue0 默认值 : 不指定 |
|
指定在删除该部署的地址 CR 实例时,Operator 是否删除部署中的所有代理的现有地址。默认值为 类型 :布尔值 示例 : true 默认值: false |
|
要使用的路由类型; 类型 :字符串 示例 : anycast 默认值 :多播 |
8.1.3. 安全自定义资源配置参考
基于安全 CRD 的 CR 实例允许您在部署中定义代理的安全配置,包括:
- 用户和角色
-
登录模块,包括
propertiesLoginModule
、guestLoginModule
和keycloakLoginModule
- 基于角色的访问控制
- 控制台访问控制
许多选项都要求您了解安全代理中描述的 代理安全概念
下表详细介绍了您可以配置的项目。
在您部署的任何对应自定义资源(CR)中,需要标记为星号的配置项目。如果没有为非必需项目显式指定值,则配置将使用默认值。
entry | 子条目 | 描述和使用 |
---|---|---|
loginModules | 一个或多个登录模块配置。 登录模块可以是以下类型之一:
| |
propertiesLoginModule | name* | 登录模块的名称。 类型 :字符串 示例 :my-login 默认值 :不适用 |
users.name* | user 的名称。 类型 :字符串 示例 :jdoe 默认值 :不适用 | |
users.password* | 用户密码。 类型 :字符串 示例 :密码 默认值 :不适用 | |
users.roles | 角色的名称。 类型 :字符串 示例 :查看器 默认值 :不适用 | |
guestLoginModule | name* | 客户机登录模块的名称。 类型 :字符串 示例 :guest-login 默认值 :不适用 |
guestUser | guest 用户的名称。 类型 :字符串 示例 :myguest 默认值 :不适用 | |
guestRole | guest 用户的角色名称。 类型 :字符串 示例 :guest 默认值 :不适用 | |
keycloakLoginModule | name | Name for KeycloakLoginModule 类型 :字符串 示例 :关联 默认值 :不适用 |
moduleType | KeycloakLoginModule (directAccess 或 bearerToken)的类型 类型 :字符串 示例 : bearerToken 默认值 :不适用 | |
配置 | 以下配置项与 Red Hat Single Sign-On 相关,请参阅 OpenID Connect 文档。 | |
configuration.realm* | Realm for KeycloakLoginModule 类型 :字符串 示例 :myrealm 默认值 :不适用 | |
configuration.realmPublicKey | 域的公钥 类型 :字符串 默认值 :不适用 | |
configuration.authServerUrl* | keycloak 身份验证服务器的 URL 类型 :字符串 默认值 :不适用 | |
configuration.sslRequired | 指定是否需要 SSL 类型 :字符串 有效值为 'all'、'external' 和 'none'。 | |
configuration.resource* | 资源名称 应用程序的 client-id。每个应用都有一个 client-id,用于识别应用程序。 | |
configuration.publicClient | 指定它是公共客户端。 类型 :布尔值 默认值: false 示例 :false | |
configuration.credentials.key | 指定 credentials 密钥。 类型 :字符串 默认值 :不适用 类型 :字符串 默认值 :不适用 | |
configuration.credentials.value | 指定凭证值 类型 :字符串 默认值 :不适用 | |
configuration.useResourceRoleMappings | 指定是否使用资源角色映射 类型 :布尔值 示例 :false | |
configuration.enableCors | 指定是否启用跨Origin Resource Sharing (CORS) 它将处理 CORS preflight 请求。它还将查看访问令牌来确定有效的来源。 类型 :布尔值 默认值: false | |
configuration.corsMaxAge | CORS 最长期限 如果启用了 CORS,这会设置 Access-Control-Max-Age 标头的值。 | |
configuration.corsAllowedMethods | CORS 允许的方法 如果启用了 CORS,这会设置 Access-Control-Allow-Methods 标头的值。这应该是一个用逗号分开的字符串。 | |
configuration.corsAllowedHeaders | CORS 允许的标头 如果启用了 CORS,这会设置 Access-Control-Allow-Headers 标头的值。这应该是一个用逗号分开的字符串。 | |
configuration.corsExposedHeaders | CORS 公开的标头 如果启用了 CORS,这会设置 Access-Control-Expose-Headers 标头的值。这应该是一个用逗号分开的字符串。 | |
configuration.exposeToken | 指定是否公开访问令牌 类型 :布尔值 默认值: false | |
configuration.bearerOnly | 指定是否验证 bearer 令牌 类型 :布尔值 默认值: false | |
configuration.autoDetectBearerOnly | 指定是否只自动探测到 bearer 令牌 类型 :布尔值 默认值: false | |
configuration.connectionPoolSize | 连接池的大小 类型 :整数 默认值 :20 | |
configuration.allowAnyHostName | 指定是否允许任何主机名 类型 :布尔值 默认值: false | |
configuration.disableTrustManager | 指定是否禁用信任管理器 类型 :布尔值 默认值: false | |
configuration.trustStore* | 信任存储的路径 除非 ssl-required 为 none 或 disable-trust-manager 为 true,否则这是 REQUIRED。 | |
configuration.trustStorePassword* | truststore 密码 如果设置了 truststore 且信任存储需要密码,则这是 REQUIRED。 | |
configuration.clientKeyStore | 客户端密钥存储的路径 类型 :字符串 默认值 :不适用 | |
configuration.clientKeyStorePassword | 客户端密钥存储密码 类型 :字符串 默认值 :不适用 | |
configuration.clientKeyPassword | 客户端密钥密码 类型 :字符串 默认值 :不适用 | |
configuration.alwaysRefreshToken | 指定是否总是刷新令牌 类型 :布尔值 示例 :false | |
configuration.registerNodeAtStartup | 指定是否在启动时注册节点 类型 :布尔值 示例 :false | |
configuration.registerNodePeriod | 重新注册节点的周期 类型 :字符串 默认值 :不适用 | |
configuration.tokenStore | 令牌存储类型(会话或 Cookie) 类型 :字符串 默认值 :不适用 | |
configuration.tokenCookiePath | Cookie 存储的 Cookie 路径 类型 :字符串 默认值 :不适用 | |
configuration.principalAttribute | OpenID Connect ID Token 属性,用于填充 UserPrincipal 名称 OpenID Connect ID Token 属性,用于填充 UserPrincipal 名称。如果 token 属性为空,则默认为 sub。可能的值有 sub, preferred_username, email, name, nickname, given_name, family_name。 | |
configuration.proxyUrl | 代理 URL | |
configuration.turnOffChangeSessionIdOnLogin | 指定是否在成功登录时更改会话 ID 类型 :布尔值 示例 :false | |
configuration.tokenMinimumTimeToLive | 刷新活跃访问令牌的最小时间 类型 :整数 默认值 :0 | |
configuration.minTimeBetweenJwksRequests | 到 Keycloak 的两个请求之间的最小间隔,以检索新的公钥 类型 :整数 默认值 :10 | |
configuration.publicKeyCacheTtl | 到 Keycloak 的两个请求之间的最大间隔,以检索新的公钥 类型 :整数 默认值 :86400 | |
configuration.ignoreOauthQueryParameter | 是否为 bearer 令牌处理关闭对 access_token 查询参数的处理 类型 :布尔值 示例 :false | |
configuration.verifyTokenAudience | 验证令牌是否包含此客户端名称(资源)作为使用者 类型 :布尔值 示例 :false | |
configuration.enableBasicAuth | 是否支持基本身份验证 类型 :布尔值 默认值: false | |
configuration.confidentialPort | Keycloak 服务器用于通过 SSL/TLS 安全连接的机密端口 类型 :整数 示例 : 8443 | |
configuration.redirectRewriteRules.key | 用于匹配 Redirect URI 的正则表达式。 类型 :字符串 默认值 :不适用 | |
configuration.redirectRewriteRules.value | 替换字符串 类型 :字符串 默认值 :不适用 | |
configuration.scope | DirectAccessGrantsLoginModule 的 OAuth2 scope 参数 类型 :字符串 默认值 :不适用 | |
securityDomains | 代理安全域 | |
brokerDomain.name | 代理域名 类型 :字符串 示例 :activemq 默认值 :不适用 | |
brokerDomain.loginModules |
一个或多个登录模块。每个条目必须在上面的 | |
brokerDomain.loginModules.name | 登录模块的名称 类型 :字符串 示例 :prop-module 默认值 :不适用 | |
brokerDomain.loginModules.flag |
与 propertiesLoginModule、 类型 :字符串 示例 :足够 默认值 :不适用 | |
brokerDomain.loginModules.debug | Debug | |
brokerDomain.loginModules.reload | reload | |
consoleDomain.name | 代理域名 类型 :字符串 示例 :activemq 默认值 :不适用 | |
consoleDomain.loginModules | 单个登录模块配置。 | |
consoleDomain.loginModules.name | 登录模块的名称 类型 :字符串 示例 :prop-module 默认值 :不适用 | |
consoleDomain.loginModules.flag |
与 propertiesLoginModule、 类型 :字符串 示例 :足够 默认值 :不适用 | |
consoleDomain.loginModules.debug | Debug 类型 :布尔值 示例 :false | |
consoleDomain.loginModules.reload | reload 类型 :布尔值 示例 : true 默认 :false | |
securitySettings |
要添加到 | |
broker.match | 安全设置部分的地址匹配模式。有关匹配模式 语法的详情,请参阅 AMQ Broker 通配符语法。 | |
broker.permissions.operationType | 安全设置的操作类型,如 设置权限 中所述。 类型 :字符串 示例 :createAddress 默认值 :不适用 | |
broker.permissions.roles | 安全设置应用于这些角色,如 设置权限 中所述。 类型 :字符串 示例 :root 默认值 :不适用 | |
securitySettings.management |
配置 | |
hawtioRoles | 允许登录到 Broker 控制台的角色。 类型 :字符串 示例 :root 默认值 :不适用 | |
connector.host | 用于连接到管理 API 的连接器主机。 类型 :字符串 示例 :myhost 默认值 :localhost | |
connector.port | 用于连接到管理 API 的连接器端口。 类型 :整数 示例 :1099 默认值: 1099 | |
connector.jmxRealm | 管理 API 的 JMX 域。 类型 :字符串 示例 :activemq 默认值 :activemq | |
connector.objectName | 管理 API 的 JMX 对象名称。 类型 :字符串 示例 : connector:name=rmi 默认: connector:name=rmi | |
connector.authenticatorType | 管理 API 身份验证类型。 类型 :字符串 示例 :密码 默认 :password | |
connector.secured | 管理 API 连接是否安全。 类型 :布尔值 示例 : true 默认值: false | |
connector.keyStoreProvider | 管理连接器的密钥存储供应商。如果您设置了 connector.secured="true",则需要此项。默认值为 JKS。 | |
connector.keyStorePath | 密钥存储的位置。如果您设置了 connector.secured="true",则需要此项。 | |
connector.keyStorePassword | 管理连接器的密钥存储密码。如果您设置了 connector.secured="true",则需要此项。 | |
connector.trustStoreProvider | 如果您设置了 connector.secured="true",则管理连接器的 truststore 供应商需要。 类型 :字符串 示例 :JKS 默认 :JKS | |
connector.trustStorePath | 管理连接器的信任存储的位置。如果您设置了 connector.secured="true",则需要此项。 类型 :字符串 默认值 :不适用 | |
connector.trustStorePassword | 管理连接器的 truststore 密码。如果您设置了 connector.secured="true",则需要此项。 类型 :字符串 默认值 :不适用 | |
connector.passwordCodec | 管理连接器的密码 codec 是要使用的密码 codec 的完全限定类名称,如 在配置文件中加密密码 中所述。 | |
authorisation.allowedList.domain | allowedList 的域 类型 :字符串 默认值 :不适用 | |
authorisation.allowedList.key | allowedList 的密钥 类型 :字符串 默认值 :不适用 | |
authorisation.defaultAccess.method | defaultAccess List 的方法 类型 :字符串 默认值 :不适用 | |
authorisation.defaultAccess.roles | defaultAccess 列表的角色 类型 :字符串 默认值 :不适用 | |
authorisation.roleAccess.domain | roleAccess List 的域 类型 :字符串 默认值 :不适用 | |
authorisation.roleAccess.key | roleAccess List 的密钥 类型 :字符串 默认值 :不适用 | |
authorisation.roleAccess.accessList.method | roleAccess List 的方法 类型 :字符串 默认值 :不适用 | |
authorisation.roleAccess.accessList.roles | roleAccess List 的角色 类型 :字符串 默认值 :不适用 | |
applyToCrNames | 将此安全配置应用到当前命名空间中 named CR 定义的代理。该值或空字符串表示适用于所有代理。 类型 :字符串 示例 :my-broker 默认值 :由当前命名空间中的 CR 定义的所有代理。 |