4.4. WS-Security


提供 CXF 框架的 WS-安全 实施,允许您:

  • 在服务间传递身份验证令牌
  • 加密消息或部分信息
  • 签名消息
  • 时间戳消息

4.4.1. Maven 协调

使用 quarkus-cxf-rt-ws-security on code.quarkus.redhat.com 创建新项目,或将这些协调添加到现有项目中:

<dependency>
    <groupId>io.quarkiverse.cxf</groupId>
    <artifactId>quarkus-cxf-rt-ws-security</artifactId>
</dependency>
Copy to Clipboard Toggle word wrap

4.4.2. 支持的标准

4.4.3. 使用方法

CXF 框架的 WS-Security (WSS)实施基于 WSS4J。它可以通过两种方式激活:

  • 使用 WS-SecurityPolicy
  • 通过将 WSS4J 拦截器添加到您的客户端和服务端点中。

WS-SecurityPolicy 是首选的,因为通过这种方式,安全要求成为 WSDL 合同的一部分。这进而简化了客户端和服务端点的实施,以及供应商之间的互操作性。

但是,如果您使用 WS-SecurityPolicy,CXF 会在 hood 下设置 WSS4J 拦截器。

在此,我们不说明 WSS4J 拦截器的手动方法,但您仍可以参考我们的 WS-Security 集成测试 作为示例。

4.4.3.1. 通过 WS-SecurityPolicy 的 WS-Security

提示

本节中使用的代码片段示例来自 Quarkus CXF 的源树中的 WS-SecurityPolicy 集成测试

让我们来说,我们的目标是确保客户端和服务之间的通信保密(通过加密),并且消息尚未篡改(通过数字签名)。我们还希望确保客户端通过 X.509 证书对自己进行身份验证。

我们可以在单个 WS-SecurityPolicy 文档中 表达所有这些要求:

encrypt-sign-policy.xml

<?xml version="1.0" encoding="UTF-8" ?>
<wsp:Policy wsu:Id="SecurityServiceEncryptThenSignPolicy"
    xmlns:wsp="http://www.w3.org/ns/ws-policy"
    xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
    xmlns:sp="http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702">
    <wsp:ExactlyOne>
        <wsp:All>
            
1

            <sp:AsymmetricBinding xmlns:sp="http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702">
                <wsp:Policy>
                    
2

                    <sp:InitiatorToken>
                        <wsp:Policy>
                            <sp:X509Token sp:IncludeToken="http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702/IncludeToken/AlwaysToRecipient">
                                <wsp:Policy>
                                    <sp:WssX509V3Token11/>
                                </wsp:Policy>
                            </sp:X509Token>
                        </wsp:Policy>
                    </sp:InitiatorToken>
                    <sp:RecipientToken>
                        <wsp:Policy>
                            <sp:X509Token sp:IncludeToken="http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702/IncludeToken/Never">
                                <wsp:Policy>
                                    <sp:WssX509V3Token11/>
                                </wsp:Policy>
                            </sp:X509Token>
                        </wsp:Policy>
                    </sp:RecipientToken>
                    <sp:AlgorithmSuite>
                        <wsp:Policy>
                            <sp:Basic256/>
                        </wsp:Policy>
                    </sp:AlgorithmSuite>
                    <sp:Layout>
                        <wsp:Policy>
                            <sp:Strict/>
                        </wsp:Policy>
                    </sp:Layout>
                    <sp:IncludeTimestamp/>
                    <sp:ProtectTokens/>
                    <sp:OnlySignEntireHeadersAndBody/>
                    <sp:EncryptBeforeSigning/>
                </wsp:Policy>
            </sp:AsymmetricBinding>
            
3

            <sp:SignedParts xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy">
                <sp:Body/>
            </sp:SignedParts>
            
4

            <sp:EncryptedParts xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy">
                <sp:Body/>
            </sp:EncryptedParts>
            <sp:Wss10 xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy">
                <wsp:Policy>
                    <sp:MustSupportRefIssuerSerial/>
                </wsp:Policy>
            </sp:Wss10>
        </wsp:All>
    </wsp:ExactlyOne>
</wsp:Policy>
Copy to Clipboard Toggle word wrap

1
AsymmetricBinding 指定使用非对称(公钥/私钥)加密来保护双方之间的通信
2
InitiatorToken 表示消息的启动器(发送者)将使用 X.509 证书令牌,该令牌必须始终提供给接收方。
3
SignedParts 指定必须签署 SOAP 消息哪些部分以确保其完整性。
4
EncryptedParts 指定必须加密的 SOAP 消息部分以确保其保密性。

我们使用 @org.apache.cxf.annotations.Policy 注解在 Service Endpoint Interface (SEI) EncryptSignPolicyHelloService 上设置此策略:

EncryptSignPolicyHelloService.java

@WebService(serviceName = "EncryptSignPolicyHelloService")
@Policy(placement = Policy.Placement.BINDING, uri = "encrypt-sign-policy.xml")
public interface EncryptSignPolicyHelloService extends AbstractHelloService {
...
}
Copy to Clipboard Toggle word wrap

在第一个 sight 上,对 SEI 设置策略应足以在服务以及从 SEI 生成的所有客户端或服务提供的 WSDL 上实施该策略。然而,这并不是所有的。安全密钥、用户名、密码和其他种类的信息无法在公共策略中公开。

它们必须在配置中设置。首先为该服务这样做:

application.properties

# A service with encrypt-sign-policy.xml set
quarkus.cxf.endpoint."/helloEncryptSign".implementor = io.quarkiverse.cxf.it.security.policy.EncryptSignPolicyHelloServiceImpl
# Signature settings
quarkus.cxf.endpoint."/helloEncryptSign".security.signature.username = bob
quarkus.cxf.endpoint."/helloEncryptSign".security.signature.password = bob-keystore-password
quarkus.cxf.endpoint."/helloEncryptSign".security.signature.properties."org.apache.ws.security.crypto.provider" = org.apache.ws.security.components.crypto.Merlin
quarkus.cxf.endpoint."/helloEncryptSign".security.signature.properties."org.apache.ws.security.crypto.merlin.keystore.type" = pkcs12
quarkus.cxf.endpoint."/helloEncryptSign".security.signature.properties."org.apache.ws.security.crypto.merlin.keystore.password" = bob-keystore-password
quarkus.cxf.endpoint."/helloEncryptSign".security.signature.properties."org.apache.ws.security.crypto.merlin.keystore.alias" = bob
quarkus.cxf.endpoint."/helloEncryptSign".security.signature.properties."org.apache.ws.security.crypto.merlin.file" = bob-keystore.pkcs12
# Encryption settings
quarkus.cxf.endpoint."/helloEncryptSign".security.encryption.username = alice
quarkus.cxf.endpoint."/helloEncryptSign".security.encryption.properties."org.apache.ws.security.crypto.provider" = org.apache.ws.security.components.crypto.Merlin
quarkus.cxf.endpoint."/helloEncryptSign".security.encryption.properties."org.apache.ws.security.crypto.merlin.keystore.type" = pkcs12
quarkus.cxf.endpoint."/helloEncryptSign".security.encryption.properties."org.apache.ws.security.crypto.merlin.keystore.password" = bob-keystore-password
quarkus.cxf.endpoint."/helloEncryptSign".security.encryption.properties."org.apache.ws.security.crypto.merlin.keystore.alias" = bob
quarkus.cxf.endpoint."/helloEncryptSign".security.encryption.properties."org.apache.ws.security.crypto.merlin.file" = bob-keystore.pkcs12
Copy to Clipboard Toggle word wrap

客户端需要类似的设置:

application.properties

# A client with encrypt-sign-policy.xml set
quarkus.cxf.client.helloEncryptSign.client-endpoint-url = https://localhost:${quarkus.http.test-ssl-port}/services/helloEncryptSign
quarkus.cxf.client.helloEncryptSign.service-interface = io.quarkiverse.cxf.it.security.policy.EncryptSignPolicyHelloService
quarkus.cxf.client.helloEncryptSign.features = #messageCollector
# The client-endpoint-url above is HTTPS, so we have to setup the server's SSL certificates
quarkus.cxf.client.helloEncryptSign.trust-store = client-truststore.pkcs12
quarkus.cxf.client.helloEncryptSign.trust-store-password = client-truststore-password
# Signature settings
quarkus.cxf.client.helloEncryptSign.security.signature.username = alice
quarkus.cxf.client.helloEncryptSign.security.signature.password = alice-keystore-password
quarkus.cxf.client.helloEncryptSign.security.signature.properties."org.apache.ws.security.crypto.provider" = org.apache.ws.security.components.crypto.Merlin
quarkus.cxf.client.helloEncryptSign.security.signature.properties."org.apache.ws.security.crypto.merlin.keystore.type" = pkcs12
quarkus.cxf.client.helloEncryptSign.security.signature.properties."org.apache.ws.security.crypto.merlin.keystore.password" = alice-keystore-password
quarkus.cxf.client.helloEncryptSign.security.signature.properties."org.apache.ws.security.crypto.merlin.keystore.alias" = alice
quarkus.cxf.client.helloEncryptSign.security.signature.properties."org.apache.ws.security.crypto.merlin.file" = alice-keystore.pkcs12
# Encryption settings
quarkus.cxf.client.helloEncryptSign.security.encryption.username = bob
quarkus.cxf.client.helloEncryptSign.security.encryption.properties."org.apache.ws.security.crypto.provider" = org.apache.ws.security.components.crypto.Merlin
quarkus.cxf.client.helloEncryptSign.security.encryption.properties."org.apache.ws.security.crypto.merlin.keystore.type" = pkcs12
quarkus.cxf.client.helloEncryptSign.security.encryption.properties."org.apache.ws.security.crypto.merlin.keystore.password" = alice-keystore-password
quarkus.cxf.client.helloEncryptSign.security.encryption.properties."org.apache.ws.security.crypto.merlin.keystore.alias" = alice
quarkus.cxf.client.helloEncryptSign.security.encryption.properties."org.apache.ws.security.crypto.merlin.file" = alice-keystore.pkcs12
Copy to Clipboard Toggle word wrap

要检查消息的流,您可以执行 EncryptSignPolicyTest,如下所示:

# Clone the repository
$ git clone https://github.com/quarkiverse/quarkus-cxf.git -o upstream
$ cd quarkus-cxf
# Build the whole source tree
$ mvn clean install -DskipTests -Dquarkus.build.skip
# Run the test
$ cd integration-tests/ws-security-policy
$ mvn clean test -Dtest=EncryptSignPolicyTest
Copy to Clipboard Toggle word wrap

您应该会在控制台输出中看到包含 Signature 元素和加密正文的一些消息。

4.4.4. 配置

lock 在构建时修复的配置属性。所有其他配置属性可在运行时覆盖。

Expand
配置属性类型default

quarkus.cxf.client."client-name".security.username

string

 

用户名称。它按如下方式使用:

  • 在 WS-Security 的 UsernameToken 中作为名称
  • 作为密钥存储中的别名名称,如果未设置 signature.username,为签名获取用户的证书和私钥
  • 作为密钥存储中的别名名称,如果未设置 encryption.username,则为加密获取用户的公钥

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_USERNAME
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.password

string

 

没有定义 callback-handler 时用户密码。这仅用于 WS-Security UsernameToken 中的密码。

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_PASSWORD
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.signature.username

string

 

签名的用户名称。它用作密钥存储中的别名名称,以获取用于签名的用户证书和私钥。如果未定义,则使用 username。如果也未指定,它将使用 signature.properties 引用的属性文件中设置的默认别名。如果这还未设置,并且密钥存储仅包含一个密钥,则将使用该密钥。

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_SIGNATURE_USERNAME
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.signature.password

string

 

当未定义 callback-handler 时,用于签名的用户密码。

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_SIGNATURE_PASSWORD
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.encryption.username

string

 

用于加密的用户名。它用作密钥存储中的别名名称,以获取用于加密的用户的公钥。如果未定义,则使用 username。如果也未指定,它将使用 encrypt.properties 引用的属性文件中设置的默认别名。如果这还未设置,并且密钥存储仅包含一个密钥,则将使用该密钥。

对于 WS-Security Web 服务提供程序,useReqSigCert 值可用于接受(加密到)任何公钥位于服务的信任存储中(在 encrypt.properties中定义)。

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_ENCRYPTION_USERNAME
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.callback-handler

string

 

对用于获取密码的 javax.security.auth.callback.CallbackHandler bean 的引用,用于出站和入站请求。

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_CALLBACK_HANDLER
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.saml-callback-handler

string

 

javax.security.auth.callback.CallbackHandler 实现 的引用,用于构建 SAML 断言。

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_SAML_CALLBACK_HANDLER
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.signature.properties."signature-properties"

Map<String,String>

 

如果没有设置 signature.crypto,用于签名的 Crypto 属性配置。

Example

[prefix].signature.properties."org.apache.ws.security.crypto.provider" =
org.apache.ws.security.components.crypto.Merlin
[prefix].signature.properties."org.apache.ws.security.crypto.merlin.keystore.password" = password
[prefix].signature.properties."org.apache.ws.security.crypto.merlin.file" = certs/alice.jks
Copy to Clipboard Toggle word wrap

环境变量QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_SIGNATURE_PROPERTIES_SIGNATURE_PROPERTIES_
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.encryption.properties."encryption-properties"

Map<String,String>

 

如果没有设置 encryption.crypto,则用于加密的 Crypto 属性配置。

Example

[prefix].encryption.properties."org.apache.ws.security.crypto.provider" =
org.apache.ws.security.components.crypto.Merlin
[prefix].encryption.properties."org.apache.ws.security.crypto.merlin.keystore.password" = password
[prefix].encryption.properties."org.apache.ws.security.crypto.merlin.file" = certs/alice.jks
Copy to Clipboard Toggle word wrap

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_ENCRYPTION_PROPERTIES_ENCRYPTION_PROPERTIES_
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.signature.crypto

string

 

对用于签名的 org.apache.wss4j.common.crypto.Crypto bean 的引用。如果没有设置,则 signature.properties 将用于配置 Crypto 实例。

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_SIGNATURE_CRYPTO
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.encryption.crypto

string

 

对用于加密的 org.apache.wss4j.common.crypto.Crypto 的引用。如果没有设置,则 encryption.properties 将用于配置 Crypto 实例。

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_ENCRYPTION_CRYPTO
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.encryption.certificate

string

 

用于加密的准备 X509 证书的 message 属性。如果未定义,则证书将从密钥存储 encryption.properties 加载,或者从请求提取(当使用 WS-Security 并且使用 encryption.username 的值为 useReqSigCert )。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_ENCRYPTION_CERTIFICATE
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.enable-revocation

布尔值

false

如果为 true,则在验证证书中的信任时,证书撤销列表(CRL)检查会被启用,否则不会启用它。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_ENABLE_REVOCATION
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.enable-unsigned-saml-assertion-principal

布尔值

false

如果为 true,则未签名的 SAML 断言将被允许为 SecurityContext Principals;否则不允许它们作为 SecurityContext Principals。

签名

标签"未签名"是指内部签名。即使令牌由外部签名签名(根据"发送者-vouches"要求一样,如果要使用令牌来设置安全上下文,仍必须配置此布尔值。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_ENABLE_UNSIGNED_SAML_ASSERTION_PRINCIPAL
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.validate-saml-subject-confirmation

布尔值

true

如果为 true,则会验证收到的 SAML Token (发送者或拥有者密钥)的主题限制要求,否则不会验证它们。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_VALIDATE_SAML_SUBJECT_CONFIRMATION
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.sc-from-jaas-subject

布尔值

true

如果为 true,则可从 JAAS 主题创建安全上下文;否则,不得从 JAAS 主题创建该安全上下文。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_SC_FROM_JAAS_SUBJECT
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.audience-restriction-validation

布尔值

true

如果为 true,如果 SAML Token 包含 Audience Restriction URI,则其中一个必须与 audience.restrictions 中的一个值匹配;否则 SAML AudienceRestriction 验证被禁用。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_AUDIENCE_RESTRICTION_VALIDATION
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.saml-role-attributename

string

http://schemas.xmlsoap.org/ws/2005/05/identity/claims/role

存储角色信息的 SAML AttributeStatement 的属性 URI。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_SAML_ROLE_ATTRIBUTENAME
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.subject-cert-constraints

string

 

正则表达式的字符串(由 security.cert.constraints.separator指定的值分开),它将应用到用于签名验证的证书的主题 DN,在信任验证与证书关联的证书链后。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_SUBJECT_CERT_CONSTRAINTS
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.cert-constraints-separator

string

,

用于解析在 security.subject.cert.constraints中配置的证书限制的分隔符

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_CERT_CONSTRAINTS_SEPARATOR
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.actor

string

 

wsse:Security 标头的 actor 或 role 名称。如果省略此参数,则不会设置 actor 名称。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_ACTOR
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.validate.token

布尔值

true

如果为 true,则会验证收到的 UsernameToken 的密码,否则不会被验证。

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_VALIDATE_TOKEN
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.username-token.always.encrypted

布尔值

true

是否始终加密定义为 SupportingTokenUsernameTokens。在生产环境中不应该将其设置为 false,因为它会在有线上公开密码(或密码摘要)。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_USERNAME_TOKEN_ALWAYS_ENCRYPTED
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.is-bsp-compliant

布尔值

true

如果为 true,则确保与基本安全配置文件(BSP) 1.1 相符;否则不会保证。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_IS_BSP_COMPLIANT
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.enable.nonce.cache

布尔值

 

如果为 true,则消息启动器和接收者都会缓存 UsernameToken nonces;否则不会为任何消息启动器或接收者缓存它们。对于消息接收者,默认为 true,对于消息启动器,默认为 false

Caching

只有在 UsernameToken WS-SecurityPolicy 生效时,缓存才适用,或者为非安全策略问题单配置了 UsernameToken 操作。

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_ENABLE_NONCE_CACHE
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.enable.timestamp.cache

布尔值

 

如果为 true,则消息启动器和接收者的 Timestamp Created Strings (它们只会缓存与消息 Signature 结合使用),否则不会缓存它们。对于消息接收者,默认为 true,对于消息启动器,默认为 false

Caching

只有在 IncludeTimestamp 策略生效时,缓存才适用,或者为非安全策略问题单配置了 Timestamp 操作。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_ENABLE_TIMESTAMP_CACHE
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.enable.streaming

布尔值

false

如果为 true,则使用 WS-Security 的新流(StAX)实施;否则会使用旧的 DOM 实现。

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_ENABLE_STREAMING
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.return.security.error

布尔值

false

如果为 true,则向客户端发送详细的安全错误消息;否则,将忽略详细信息,仅发送通用错误消息。

在生产环境中不应该将"真实"安全错误返回给客户端,因为它们可能会泄漏有关部署的信息,否则为攻击提供"oracle"。

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_RETURN_SECURITY_ERROR
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.must-understand

布尔值

true

如果为 true,则基于 WS-SecurityPolicy 的安全标头中包含 SOAP mustUnderstand 标头;否则,始终省略标头。

只适用于 enable.streaming = true - see CXF-8940

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_MUST_UNDERSTAND
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.enable.saml.cache

布尔值

 

如果为 true,如果令牌包含 OneTimeUse Condition,则会为消息启动器和接收者缓存 SAML2 令牌标识符,否则不会为消息启动器或接收者缓存它们。对于消息接收者,默认为 true,对于消息启动器,默认为 false

只有在 SamlToken 策略生效时,缓存才适用,或者为非安全策略问题单配置了 SAML 操作。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_ENABLE_SAML_CACHE
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.store.bytes.in.attachment

布尔值

 

是否在附加中保存字节(CipherData 或 BinarySecurityToken)。如果启用了 MTOM,则默认为 true。把它设置为 false,而是在消息中对字节进行编码。把它设置为 true 效率更高,这意味着可以跳过 BASE-64 编码步骤。这只适用于 DOM WS-Security 堆栈。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_STORE_BYTES_IN_ATTACHMENT
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.swa.encryption.attachment.transform.content

布尔值

false

如果为 true,则在通过 WS-SecurityPolicy 表达式加密 Attachment 时将使用Attachment-Content-Only 转换;否则,当通过 WS-SecurityPolicy 表达式加密 Attachment 时,将使用 Attachment-Complete 转换。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_SWA_ENCRYPTION_ATTACHMENT_TRANSFORM_CONTENT
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.use.str.transform

布尔值

true

如果为 true,则在(外部)签名 SAML 令牌时将使用 STR (安全令牌参考)转换;否则不使用 STR (安全令牌服务参考) Transform。

有些框架无法处理 SecurityTokenReference。在这种情况下,您可以设置这个 false

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_USE_STR_TRANSFORM
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.add.inclusive.prefixes

布尔值

true

如果为 true,则在使用 WSConstants.C14N_EXCL_OMIT_EXCL_OMIT_COMMENTS 生成签名时,InclusiveNamespaces PrefixList 将添加为 CanonicalizationMethod 子子。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_ADD_INCLUSIVE_PREFIXES
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.disable.require.client.cert.check

布尔值

false

如果为 true,则禁用 WS-SecurityPolicy RequireClientCertificate 策略的强制;否则启用 WS-SecurityPolicy RequireClientCertificate 策略的强制。

有些服务器可能无法在 SSL 握手开始时进行客户端证书验证,因此客户端证书可能无法用于策略验证。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_DISABLE_REQUIRE_CLIENT_CERT_CHECK
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.expand.xop.include

布尔值

 

如果为 true,则 xop:Include 元素将搜索加密和签名(在出站端)或签名验证(在入站端),否则不会发生搜索。这样可确保实际字节已签名,而不只是引用。如果启用了 MTOM,则默认为 true,否则默认值为 false

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_EXPAND_XOP_INCLUDE
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.timestamp.timeToLive

string

300

添加到传入 Timestamp 的 Creation 值的时间(以秒为单位),以确定是否将其接受为有效。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_TIMESTAMP_TIMETOLIVE
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.timestamp.futureTimeToLive

string

60

传入的 TimestampCreated 时间(以秒为单位)有效的时间(以秒为单位)。默认值大于零,以避免时钟稍微询问的问题。把它设置为 0 以拒绝所有将来创建的 'Timestamp's。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_TIMESTAMP_FUTURETIMETOLIVE
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.usernametoken.timeToLive

string

300

附加到传入 UsernameToken 的 Creation 值的时间(以秒为单位),以确定是否接受它是否有效。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_USERNAMETOKEN_TIMETOLIVE
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.usernametoken.futureTimeToLive

string

60

传入 UsernameTokenCreated 时间(以秒为单位)有效的时间(以秒为单位)。默认值大于零,以避免时钟稍微询问的问题。把它设置为 0 以拒绝所有将来创建的 'UsernameToken's。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_USERNAMETOKEN_FUTURETIMETOLIVE
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.spnego.client.action

string

 

org.apache.wss4j.common.spnego.SpnegoClientAction bean 的引用,用于 SPNEGO。这允许用户在不同的实现中插入服务票据。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_SPNEGO_CLIENT_ACTION
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.nonce.cache.instance

string

 

org.apache.wss4j.common.cache.ReplayCache bean 的引用,用于缓存 UsernameToken nonces。默认使用 org.apache.wss4j.common.cache.EHCacheReplayCache 实例。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_NONCE_CACHE_INSTANCE
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.timestamp.cache.instance

string

 

org.apache.wss4j.common.cache.ReplayCache bean 的引用,用于缓存 Timestamp Created Strings。默认使用 org.apache.wss4j.common.cache.EHCacheReplayCache 实例。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_TIMESTAMP_CACHE_INSTANCE
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.saml.cache.instance

string

 

org.apache.wss4j.common.cache.ReplayCache bean 的引用,用于缓存 SAML2 令牌标识符字符串(如果令牌包含 OneTimeUse 条件)。默认使用 org.apache.wss4j.common.cache.EHCacheReplayCache 实例。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_SAML_CACHE_INSTANCE
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.cache.config.file

string

 

将此属性设置为指向 TokenStore 的底层缓存实施的配置文件。使用的默认配置文件是 org.apache.cxf:cxf-rt-security JAR 中的 cxf-ehcache.xml

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_CACHE_CONFIG_FILE
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.token-store-cache-instance

string

 

org.apache.cxf.ws.security.tokenstore.TokenStore bean 的引用,用于缓存安全令牌。默认情况下,这使用实例。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_TOKEN_STORE_CACHE_INSTANCE
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.cache.identifier

string

 

与 TokenStore 搭配使用的缓存标识符。CXF 使用以下密钥来检索令牌存储: org.apache.cxf.ws.security.tokenstore.TokenStore-<identifier&gt;。此密钥可用于配置特定于服务的缓存配置。如果标识符不匹配,它会回退到带有密钥 org.apache.cxf.ws.security.tokenstore.TokenStore 的缓存配置。

默认 & lt;identifier > 是有问题的服务的 QName。但是,要获取自定义缓存配置(例如,如果要为每个客户端代理指定 TokenStore),它可以使用这个标识符进行配置。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_CACHE_IDENTIFIER
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.role.classifier

string

 

要使用的主题角色分类器。如果一个 WSS4J Validator 从 Validation 返回 JAAS 主题,则 WSS4JInInterceptor 将尝试基于此主题创建 SecurityContext。如果没有指定这个值,它会尝试使用 org.apache.cxf:cxf-core 中的 DefaultSecurityContext 获取角色。否则,它将这个值与 role.classifier.type 结合使用,以从 Subject 获取角色。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_ROLE_CLASSIFIER
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.role.classifier.type

string

prefix

要使用的 Subject Role Classifier Type。如果一个 WSS4J Validator 从 Validation 返回 JAAS 主题,则 WSS4JInInterceptor 将尝试基于此主题创建 SecurityContext。目前接受的值是 prefixclassname。必须与 role.classifier 结合使用。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_ROLE_CLASSIFIER_TYPE
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.asymmetric.signature.algorithm

string

 

此配置标签允许用户覆盖 WS-SecurityPolicy 中使用的默认 Asymmetric Signature 算法(RSA-SHA1),因为 WS-SecurityPolicy 规格目前不允许使用其他算法。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_ASYMMETRIC_SIGNATURE_ALGORITHM
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.symmetric.signature.algorithm

string

 

此配置标签允许用户覆盖 WS-SecurityPolicy 中使用的默认 Symmetric Signature 算法(HMAC-SHA1),因为 WS-SecurityPolicy 规格不允许在 present 中使用其他算法。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_SYMMETRIC_SIGNATURE_ALGORITHM
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.password.encryptor.instance

string

 

org.apache.wss4j.common.crypto.PasswordEncryptor bean 的引用,用于在 Merlin Crypto 实施中加密或解密密码(或任何自定义 Crypto 实现)。

默认情况下,WSS4J 使用 org.apache.wss4j.common.crypto.JasyptPasswordEncryptor,密码必须用密码实例化,以解密 Merlin Crypto 定义中的密钥存储密码。此密码通过 callback-handler定义的 CallbackHandler 获取

加密密码的格式必须存储为"ENC (编码的加密密码)"。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_PASSWORD_ENCRYPTOR_INSTANCE
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.delegated.credential

string

 

对用于 WS-Security 的 Kerberos org.ietf.jgss.GSSCredential bean 的引用。这用于检索服务票据,而不使用客户端凭证。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_DELEGATED_CREDENTIAL
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.security.context.creator

string

 

org.apache.cxf.ws.security.wss4j.WSS4JSecurityContextCreator bean 的引用,用于从一组 WSS4J 处理结果创建 CXF SecurityContext。默认实现是 org.apache.cxf.ws.security.wss4j.DefaultWSS4JSecurityContextCreator

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_SECURITY_CONTEXT_CREATOR
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.security.token.lifetime

long

300000

安全令牌生命周期值(以毫秒为单位)。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_SECURITY_TOKEN_LIFETIME
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.kerberos.request.credential.delegation

布尔值

false

如果为 true,则 KerberosClient 中请求凭据委派;否则,凭据委派不在 KerberosClient 中。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_KERBEROS_REQUEST_CREDENTIAL_DELEGATION
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.kerberos.use.credential.delegation

布尔值

false

如果为 true,则 GSSCredential bean 使用 delegated.credential 属性从 Message Context 中检索,然后用于获取服务票据。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_KERBEROS_USE_CREDENTIAL_DELEGATION
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.kerberos.is.username.in.servicename.form

布尔值

false

如果为 true,则 Kerberos 用户名采用 servicename 格式;否则,Kerberos 用户名不是 servicename 格式。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_KERBEROS_IS_USERNAME_IN_SERVICENAME_FORM
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.kerberos.jaas.context

string

 

用于 Kerberos 的 JAAS 上下文名称。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_KERBEROS_JAAS_CONTEXT
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.kerberos.spn

string

 

要使用的 Kerberos 服务提供商名称(spn)。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_KERBEROS_SPN
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.kerberos.client

string

 

对用于获取服务票据的 org.apache.cxf.ws.security.kerberos.KerberosClient bean 的引用

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_KERBEROS_CLIENT
Since Quarkus CXF: 2.5.0

quarkus.cxf.client."client-name".security.custom.digest.algorithm

string

http://www.w3.org/2001/04/xmlenc#sha256

org.apache.wss4j.policy.model.AlgorithmSuite.AlgorithmSuiteType 上设置的 Digest Algorithm。只有在当前安全策略将 CustomAlgorithmSuite 设置为 AlgorithmSuite 时,才会考虑这个值。

<wsp:Policy wsu:Id="SecurityServiceEncryptThenSignPolicy"
  xmlns:wsp="http://www.w3.org/ns/ws-policy"
  xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
  xmlns:sp="http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702">
  <wsp:ExactlyOne>
    <wsp:All>
      <sp:AsymmetricBinding xmlns:sp="http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702">
        <wsp:Policy>
          ...
          <sp:AlgorithmSuite>
            <wsp:Policy>
              <sp:CustomAlgorithmSuite/>
            </wsp:Policy>
          </sp:AlgorithmSuite>
          ...
        </wsp:Policy>
      </sp:AsymmetricBinding>
      ...
    </wsp:All>
  </wsp:ExactlyOne>
</wsp:Policy>
Copy to Clipboard Toggle word wrap

有关算法的更多信息,请参阅 XML 加密语法和处理规格的 WS-SecurityPolicy 1.2 规格Algorithms 部分。

引入了 CustomAlgorithmSuitedcsecurity.custom ClusterClaim 系列选项,以便在启用了 FIPS 断言的系统中运行 CXF SOAP 客户端和服务。

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_CUSTOM_DIGEST_ALGORITHM
Since Quarkus CXF: 3.8.1

quarkus.cxf.client."client-name".security.custom.encryption.algorithm

string

http://www.w3.org/2009/xmlenc11#aes256-gcm

org.apache.wss4j.policy.model.AlgorithmSuite.AlgorithmSuiteType 上设置的 Encryption Algorithm。只有在当前安全策略将 CustomAlgorithmSuite 设置为 AlgorithmSuite时,才会考虑这个值。

有关算法的更多信息,请参阅 XML 加密语法和处理规格的 WS-SecurityPolicy 1.2 规格Algorithms 部分。

引入了 CustomAlgorithmSuitedcsecurity.custom ClusterClaim 系列选项,以便在启用了 FIPS 断言的系统中运行 CXF SOAP 客户端和服务。

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_CUSTOM_ENCRYPTION_ALGORITHM
Since Quarkus CXF: 3.8.1

quarkus.cxf.client."client-name".security.custom.symmetric.key.encryption.algorithm

string

http://www.w3.org/2001/04/xmlenc#kw-aes256

Symmetric Key Encryption Algorithm 以在 org.apache.wss4j.policy.model.AlgorithmSuite.AlgorithmSuiteType 上设置。只有在当前安全策略将 CustomAlgorithmSuite 设置为 AlgorithmSuite时,才会考虑这个值。

有关算法的更多信息,请参阅 XML 加密语法和处理规格的 WS-SecurityPolicy 1.2 规格Algorithms 部分。

引入了 CustomAlgorithmSuitedcsecurity.custom ClusterClaim 系列选项,以便在启用了 FIPS 断言的系统中运行 CXF SOAP 客户端和服务。

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_CUSTOM_SYMMETRIC_KEY_ENCRYPTION_ALGORITHM
Since Quarkus CXF: 3.8.1

quarkus.cxf.client."client-name".security.custom.asymmetric.key.encryption.algorithm

string

http://www.w3.org/2001/04/xmlenc#rsa-1_5

Asymmetric Key Encryption Algorithm 以在 org.apache.wss4j.policy.model.AlgorithmSuite.AlgorithmSuiteType 上设置。只有在当前安全策略将 CustomAlgorithmSuite 设置为 AlgorithmSuite时,才会考虑这个值。

有关算法的更多信息,请参阅 XML 加密语法和处理规格的 WS-SecurityPolicy 1.2 规格Algorithms 部分。

引入了 CustomAlgorithmSuitedcsecurity.custom ClusterClaim 系列选项,以便在启用了 FIPS 断言的系统中运行 CXF SOAP 客户端和服务。

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_CUSTOM_ASYMMETRIC_KEY_ENCRYPTION_ALGORITHM
Since Quarkus CXF: 3.8.1

quarkus.cxf.client."client-name".security.custom.encryption.key.derivation

string

http://schemas.xmlsoap.org/ws/2005/02/sc/dk/p_sha1

org.apache.wss4j.policy.model.AlgorithmSuite.AlgorithmSuiteType 上设置的加密密钥 Derivation。只有在当前安全策略将 CustomAlgorithmSuite 设置为 AlgorithmSuite时,才会考虑这个值。

有关算法的更多信息,请参阅 XML 加密语法和处理规格的 WS-SecurityPolicy 1.2 规格Algorithms 部分。

引入了 CustomAlgorithmSuitedcsecurity.custom ClusterClaim 系列选项,以便在启用了 FIPS 断言的系统中运行 CXF SOAP 客户端和服务。

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_CUSTOM_ENCRYPTION_KEY_DERIVATION
Since Quarkus CXF: 3.8.1

quarkus.cxf.client."client-name".security.custom.signature.key.derivation

string

http://schemas.xmlsoap.org/ws/2005/02/sc/dk/p_sha1

org.apache.wss4j.model.AlgorithmSuite.AlgorithmSuite.AlgorithmSuiteType 上设置的签名密钥 Derivation。只有在当前安全策略将 CustomAlgorithmSuite 设置为 AlgorithmSuite时,才会考虑这个值。

有关算法的更多信息,请参阅 XML 加密语法和处理规格的 WS-SecurityPolicy 1.2 规格Algorithms 部分。

引入了 CustomAlgorithmSuitedcsecurity.custom ClusterClaim 系列选项,以便在启用了 FIPS 断言的系统中运行 CXF SOAP 客户端和服务。

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_CUSTOM_SIGNATURE_KEY_DERIVATION
Since Quarkus CXF: 3.8.1

quarkus.cxf.client."client-name".security.custom.encryption.derived.key.length

int

256

org.apache.wss4j.policy.model.AlgorithmSuite.AlgorithmSuiteType 上设置的 Encryption Derived Key Length (位数)。只有在当前安全策略将 CustomAlgorithmSuite 设置为 AlgorithmSuite时,才会考虑这个值。

有关算法的更多信息,请参阅 XML 加密语法和处理规格的 WS-SecurityPolicy 1.2 规格Algorithms 部分。

引入了 CustomAlgorithmSuitedcsecurity.custom ClusterClaim 系列选项,以便在启用了 FIPS 断言的系统中运行 CXF SOAP 客户端和服务。

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_CUSTOM_ENCRYPTION_DERIVED_KEY_LENGTH
Since Quarkus CXF: 3.8.1

quarkus.cxf.client."client-name".security.custom.signature.derived.key.length

int

192

org.apache.wss4j.policy.model.AlgorithmSuite.AlgorithmSuiteType 上设置的签名 Derived Key Length (位数)。只有在当前安全策略将 CustomAlgorithmSuite 设置为 AlgorithmSuite时,才会考虑这个值。

有关算法的更多信息,请参阅 XML 加密语法和处理规格的 WS-SecurityPolicy 1.2 规格Algorithms 部分。

引入了 CustomAlgorithmSuitedcsecurity.custom ClusterClaim 系列选项,以便在启用了 FIPS 断言的系统中运行 CXF SOAP 客户端和服务。

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_CUSTOM_SIGNATURE_DERIVED_KEY_LENGTH
Since Quarkus CXF: 3.8.1

quarkus.cxf.client."client-name".security.custom.minimum.symmetric.key.length

int

256

org.apache.wss4j.policy.model.AlgorithmSuite.AlgorithmSuiteType 上设置的最小 Symmetric Key Length (位数)。只有在当前安全策略将 CustomAlgorithmSuite 设置为 AlgorithmSuite时,才会考虑这个值。

有关算法的更多信息,请参阅 XML 加密语法和处理规格的 WS-SecurityPolicy 1.2 规格Algorithms 部分。

引入了 CustomAlgorithmSuitedcsecurity.custom ClusterClaim 系列选项,以便在启用了 FIPS 断言的系统中运行 CXF SOAP 客户端和服务。

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_CUSTOM_MINIMUM_SYMMETRIC_KEY_LENGTH
Since Quarkus CXF: 3.8.1

quarkus.cxf.client."client-name".security.custom.maximum.symmetric.key.length

int

256

org.apache.wss4j.policy.model.AlgorithmSuite.AlgorithmSuite.AlgorithmSuite.AlgorithmSuiteType 上设置的最大 Symmetric Key Length。只有在当前安全策略将 CustomAlgorithmSuite 设置为 AlgorithmSuite时,才会考虑这个值。

有关算法的更多信息,请参阅 XML 加密语法和处理规格的 WS-SecurityPolicy 1.2 规格Algorithms 部分。

引入了 CustomAlgorithmSuitedcsecurity.custom ClusterClaim 系列选项,以便在启用了 FIPS 断言的系统中运行 CXF SOAP 客户端和服务。

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_CUSTOM_MAXIMUM_SYMMETRIC_KEY_LENGTH
Since Quarkus CXF: 3.8.1

quarkus.cxf.client."client-name".security.custom.minimum.asymmetric.key.length

int

1024

org.apache.wss4j.policy.model.AlgorithmSuite.AlgorithmSuiteType 上设置的最小 Symmetric Key Length (位数)。只有在当前安全策略将 CustomAlgorithmSuite 设置为 AlgorithmSuite时,才会考虑这个值。

有关算法的更多信息,请参阅 XML 加密语法和处理规格的 WS-SecurityPolicy 1.2 规格Algorithms 部分。

引入了 CustomAlgorithmSuitedcsecurity.custom ClusterClaim 系列选项,以便在启用了 FIPS 断言的系统中运行 CXF SOAP 客户端和服务。

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_CUSTOM_MINIMUM_ASYMMETRIC_KEY_LENGTH
Since Quarkus CXF: 3.8.1

quarkus.cxf.client."client-name".security.custom.maximum.asymmetric.key.length

int

4096

要在 org.apache.wss4j.policy.model.AlgorithmSuite.AlgorithmSuiteType 上设置的最大 Symmetric Key Length (位数)。只有在当前安全策略将 CustomAlgorithmSuite 设置为 AlgorithmSuite时,才会考虑这个值。

有关算法的更多信息,请参阅 XML 加密语法和处理规格的 WS-SecurityPolicy 1.2 规格Algorithms 部分。

引入了 CustomAlgorithmSuitedcsecurity.custom ClusterClaim 系列选项,以便在启用了 FIPS 断言的系统中运行 CXF SOAP 客户端和服务。

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_CUSTOM_MAXIMUM_ASYMMETRIC_KEY_LENGTH
Since Quarkus CXF: 3.8.1

quarkus.cxf.client."client-name".security.sts.client

string

 

对完全配置的 org.apache.cxf.ws.security.trust.STSClient bean 的引用,以便与 STS 通信。如果没有设置,则根据其他 [prefix].security.sts.client https 属性来创建和配置 STS 客户端,只要它们可用。

要临时解决这个问题,org.apache.cxf.ws.security.trust.trust.STSClient 没有 no-args 构造器,因此不能用作 CDI bean 类型,您可以使用打包程序类 io.quarkiverse.cxf.ws.ws.security.sts.client.STSClientBean

提示

检查 安全令牌服务(STS) 扩展页面,以了解有关 WS-Trust 的更多信息。

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_STS_CLIENT
Since Quarkus CXF: 3.8.0

quarkus.cxf.client."client-name".security.sts.client.wsdl

string

 

指向 WSDL 文档的 URL、资源路径或本地文件系统路径,以便在生成 STS 客户端的服务代理时使用。

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_STS_CLIENT_WSDL
Since Quarkus CXF: 3.8.0

quarkus.cxf.client."client-name".security.sts.client.service-name

string

 

STS 服务的完全限定名称。常见值包括:

  • WS-Trust 1.0: {http://schemas.xmlsoap.org/ws/2005/02/trust/}SecurityTokenService
  • WS-Trust 1.3: {http://docs.oasis-open.org/ws-sx/ws-trust/200512/}SecurityTokenService
  • WS-Trust 1.4: {http://docs.oasis-open.org/ws-sx/ws-trust/200802/}SecurityTokenService

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_STS_CLIENT_SERVICE_NAME
Since Quarkus CXF: 3.8.0

quarkus.cxf.client."client-name".security.sts.client.endpoint-name

string

 

STS 端点名称的完全限定名称。常见值包括:

  • {http://docs.oasis-open.org/ws-sx/ws-trust/200512/}X509_Port
  • {http://docs.oasis-open.org/ws-sx/ws-trust/200512/}Transport_Port
  • {http://docs.oasis-open.org/ws-sx/ws-trust/200512/}UT_Port

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_STS_CLIENT_ENDPOINT_NAME
Since Quarkus CXF: 3.8.0

quarkus.cxf.client."client-name".security.sts.client.username

string

 

针对 STS 进行身份验证时使用的用户名。它按如下方式使用:

  • 在 WS-Security 的 UsernameToken 中作为名称
  • 作为密钥存储中的别名名称,如果未设置 signature.username,为签名获取用户的证书和私钥
  • 作为密钥存储中的别名名称,如果未设置 encryption.username,则为加密获取用户的公钥

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_STS_CLIENT_USERNAME
Since Quarkus CXF: 3.8.0

quarkus.cxf.client."client-name".security.sts.client.password

string

 

用户名 关联的密码

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_STS_CLIENT_PASSWORD
Since Quarkus CXF: 3.8.0

quarkus.cxf.client."client-name".security.sts.client.encryption.username

string

 

用于加密的用户名。它用作密钥存储中的别名名称,以获取用于加密的用户的公钥。如果未定义,则使用 username。如果也未指定,它将使用 encrypt.properties 引用的属性文件中设置的默认别名。如果这还未设置,并且密钥存储仅包含一个密钥,则将使用该密钥。

对于 WS-Security Web 服务提供程序,useReqSigCert 值可用于接受(加密到)任何公钥位于服务的信任存储中(在 encrypt.properties中定义)。

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_STS_CLIENT_ENCRYPT
Since Quarkus CXF: 3.8.0

quarkus.cxf.client."client-name".security.sts.client.encryption.properties."encryption-properties"

Map<String,String>

 

如果没有设置 encryption.crypto,则用于加密的 Crypto 属性配置。

Example

[prefix].encryption.properties."org.apache.ws.security.crypto.provider" =
org.apache.ws.security.components.crypto.Merlin
[prefix].encryption.properties."org.apache.ws.security.crypto.merlin.keystore.password" = password
[prefix].encryption.properties."org.apache.ws.security.crypto.merlin.file" = certs/alice.jks
Copy to Clipboard Toggle word wrap

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_STS_CLIENT_ENCRYPTION_PROPERTIES_ENCRYPTION_PROPERTIES_
Since Quarkus CXF: 3.8.0

quarkus.cxf.client."client-name".security.sts.client.encryption.crypto

string

 

对用于加密的 org.apache.wss4j.common.crypto.Crypto 的引用。如果没有设置,则 encryption.properties 将用于配置 Crypto 实例。

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_STS_CLIENT_ENCRYPTION_CRYPTO
Since Quarkus CXF: 3.8.0

quarkus.cxf.client."client-name".security.sts.client.token.crypto

string

 

对用于 STS 的 org.apache.wss4j.common.crypto.Crypto 的引用。如果没有设置,则 token.properties 将用于配置 Crypto 实例。

WCF 的信任服务器有时会在响应 IN ADDITION TO 消息的完整安全性中加密令牌。这些属性控制 STS 客户端在响应中解密 EncryptedData 元素的方法。

如果 KeyType 是 PublicKey,则 token.properties 也用来发送/处理任何 RSA/DSAKeyValue 令牌

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_STS_CLIENT_TOKEN_CRYPTO
Since Quarkus CXF: 3.8.0

quarkus.cxf.client."client-name".security.sts.client.token.properties."token-properties"

Map<String,String>

 

如果没有设置 encryption.crypto,则用于加密的 Crypto 属性配置。

Example

[prefix].token.properties."org.apache.ws.security.crypto.provider" = org.apache.ws.security.components.crypto.Merlin
[prefix].token.properties."org.apache.ws.security.crypto.merlin.keystore.password" = password
[prefix].token.properties."org.apache.ws.security.crypto.merlin.file" = certs/alice.jks
Copy to Clipboard Toggle word wrap

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_STS_CLIENT_TOKEN_PROPERTIES_TOKEN_PROPERTIES_
Since Quarkus CXF: 3.8.0

quarkus.cxf.client."client-name".security.sts.client.token.username

string

 

密钥存储中的别名名称,以获取要发送到 PublicKey KeyType 问题单的 STS 的用户的公钥。

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_STS_CLIENT_TOKEN_USERNAME
Since Quarkus CXF: 3.8.0

quarkus.cxf.client."client-name".security.sts.client.token.usecert

布尔值

false

是否在 UseKey/KeyInfo 中写出 X509Certificate 结构,还是写出 KeyValue 结构。

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_STS_CLIENT_TOKEN_USECERT
Since Quarkus CXF: 3.8.0

quarkus.cxf.client."client-name".security.sts.client.soap12-binding

布尔值

false

如果为 true,则 STS 客户端将被设置为发送 Soap 1.2 信息;否则,它将发送 SOAP 1.1 信息。

环境变量:QUARKUS_CXF_CLIENT__CLIENT_NAME__SECURITY_STS_CLIENT_SOAP12_BINDING
Since Quarkus CXF: 3.8.0

quarkus.cxf.endpoint."/endpoint-path".security.username

string

 

用户名称。它按如下方式使用:

  • 在 WS-Security 的 UsernameToken 中作为名称
  • 作为密钥存储中的别名名称,如果未设置 signature.username,为签名获取用户的证书和私钥
  • 作为密钥存储中的别名名称,如果未设置 encryption.username,则为加密获取用户的公钥

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_USERNAME
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.password

string

 

没有定义 callback-handler 时用户密码。这仅用于 WS-Security UsernameToken 中的密码。

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_PASSWORD
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.signature.username

string

 

签名的用户名称。它用作密钥存储中的别名名称,以获取用于签名的用户证书和私钥。如果未定义,则使用 username。如果也未指定,它将使用 signature.properties 引用的属性文件中设置的默认别名。如果这还未设置,并且密钥存储仅包含一个密钥,则将使用该密钥。

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_SIGNATURE_USERNAME
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.signature.password

string

 

当未定义 callback-handler 时,用于签名的用户密码。

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_SIGNATURE_PASSWORD
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.encryption.username

string

 

用于加密的用户名。它用作密钥存储中的别名名称,以获取用于加密的用户的公钥。如果未定义,则使用 username。如果也未指定,它将使用 encrypt.properties 引用的属性文件中设置的默认别名。如果这还未设置,并且密钥存储仅包含一个密钥,则将使用该密钥。

对于 WS-Security Web 服务提供程序,useReqSigCert 值可用于接受(加密到)任何公钥位于服务的信任存储中(在 encrypt.properties中定义)。

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_ENCRYPTION_USERNAME
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.callback-handler

string

 

对用于获取密码的 javax.security.auth.callback.CallbackHandler bean 的引用,用于出站和入站请求。

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_CALLBACK_HANDLER
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.saml-callback-handler

string

 

javax.security.auth.callback.CallbackHandler 实现 的引用,用于构建 SAML 断言。

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_SAML_CALLBACK_HANDLER
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.signature.properties."signature-properties"

Map<String,String>

 

如果没有设置 signature.crypto,用于签名的 Crypto 属性配置。

Example

[prefix].signature.properties."org.apache.ws.security.crypto.provider" =
org.apache.ws.security.components.crypto.Merlin
[prefix].signature.properties."org.apache.ws.security.crypto.merlin.keystore.password" = password
[prefix].signature.properties."org.apache.ws.security.crypto.merlin.file" = certs/alice.jks
Copy to Clipboard Toggle word wrap

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_SIGNATURE_PROPERTIES_SIGNATURE_PROPERTIES_
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.encryption.properties."encryption-properties"

Map<String,String>

 

如果没有设置 encryption.crypto,则用于加密的 Crypto 属性配置。

Example

[prefix].encryption.properties."org.apache.ws.security.crypto.provider" =
org.apache.ws.security.components.crypto.Merlin
[prefix].encryption.properties."org.apache.ws.security.crypto.merlin.keystore.password" = password
[prefix].encryption.properties."org.apache.ws.security.crypto.merlin.file" = certs/alice.jks
Copy to Clipboard Toggle word wrap

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_ENCRYPTION_PROPERTIES_ENCRYPTION_PROPERTIES_
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.signature.crypto

string

 

对用于签名的 org.apache.wss4j.common.crypto.Crypto bean 的引用。如果没有设置,则 signature.properties 将用于配置 Crypto 实例。

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_SIGNATURE_CRYPTO
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.encryption.crypto

string

 

对用于加密的 org.apache.wss4j.common.crypto.Crypto 的引用。如果没有设置,则 encryption.properties 将用于配置 Crypto 实例。

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_ENCRYPTION_CRYPTO
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.encryption.certificate

string

 

用于加密的准备 X509 证书的 message 属性。如果未定义,则证书将从密钥存储 encryption.properties 加载,或者从请求提取(当使用 WS-Security 并且使用 encryption.username 的值为 useReqSigCert )。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_ENCRYPTION_CERTIFICATE
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.enable-revocation

布尔值

false

如果为 true,则在验证证书中的信任时,证书撤销列表(CRL)检查会被启用,否则不会启用它。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_ENABLE_REVOCATION
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.enable-unsigned-saml-assertion-principal

布尔值

false

如果为 true,则未签名的 SAML 断言将被允许为 SecurityContext Principals;否则不允许它们作为 SecurityContext Principals。

签名

标签"未签名"是指内部签名。即使令牌由外部签名签名(根据"发送者-vouches"要求一样,如果要使用令牌来设置安全上下文,仍必须配置此布尔值。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_ENABLE_UNSIGNED_SAML_ASSERTION_PRINCIPAL
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.validate-saml-subject-confirmation

布尔值

true

如果为 true,则会验证收到的 SAML Token (发送者或拥有者密钥)的主题限制要求,否则不会验证它们。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_VALIDATE_SAML_SUBJECT_CONFIRMATION
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.sc-from-jaas-subject

布尔值

true

如果为 true,则可从 JAAS 主题创建安全上下文;否则,不得从 JAAS 主题创建该安全上下文。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_SC_FROM_JAAS_SUBJECT
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.audience-restriction-validation

布尔值

true

如果为 true,如果 SAML Token 包含 Audience Restriction URI,则其中一个必须与 audience.restrictions 中的一个值匹配;否则 SAML AudienceRestriction 验证被禁用。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_AUDIENCE_RESTRICTION_VALIDATION
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.saml-role-attributename

string

http://schemas.xmlsoap.org/ws/2005/05/identity/claims/role

存储角色信息的 SAML AttributeStatement 的属性 URI。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_SAML_ROLE_ATTRIBUTENAME
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.subject-cert-constraints

string

 

正则表达式的字符串(由 security.cert.constraints.separator指定的值分开),它将应用到用于签名验证的证书的主题 DN,在信任验证与证书关联的证书链后。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_SUBJECT_CERT_CONSTRAINTS
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.cert-constraints-separator

string

,

用于解析在 security.subject.cert.constraints中配置的证书限制的分隔符

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_CERT_CONSTRAINTS_SEPARATOR
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.actor

string

 

wsse:Security 标头的 actor 或 role 名称。如果省略此参数,则不会设置 actor 名称。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_ACTOR
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.validate.token

布尔值

true

如果为 true,则会验证收到的 UsernameToken 的密码,否则不会被验证。

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_VALIDATE_TOKEN
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.username-token.always.encrypted

布尔值

true

是否始终加密定义为 SupportingTokenUsernameTokens。在生产环境中不应该将其设置为 false,因为它会在有线上公开密码(或密码摘要)。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_USERNAME_TOKEN_ALWAYS_ENCRYPTED
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.is-bsp-compliant

布尔值

true

如果为 true,则确保与基本安全配置文件(BSP) 1.1 相符;否则不会保证。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_IS_BSP_COMPLIANT
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.enable.nonce.cache

布尔值

 

如果为 true,则消息启动器和接收者都会缓存 UsernameToken nonces;否则不会为任何消息启动器或接收者缓存它们。对于消息接收者,默认为 true,对于消息启动器,默认为 false

Caching

只有在 UsernameToken WS-SecurityPolicy 生效时,缓存才适用,或者为非安全策略问题单配置了 UsernameToken 操作。

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_ENABLE_NONCE_CACHE
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.enable.timestamp.cache

布尔值

 

如果为 true,则消息启动器和接收者的 Timestamp Created Strings (它们只会缓存与消息 Signature 结合使用),否则不会缓存它们。对于消息接收者,默认为 true,对于消息启动器,默认为 false

Caching

只有在 IncludeTimestamp 策略生效时,缓存才适用,或者为非安全策略问题单配置了 Timestamp 操作。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_ENABLE_TIMESTAMP_CACHE
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.enable.streaming

布尔值

false

如果为 true,则使用 WS-Security 的新流(StAX)实施;否则会使用旧的 DOM 实现。

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_ENABLE_STREAMING
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.return.security.error

布尔值

false

如果为 true,则向客户端发送详细的安全错误消息;否则,将忽略详细信息,仅发送通用错误消息。

在生产环境中不应该将"真实"安全错误返回给客户端,因为它们可能会泄漏有关部署的信息,否则为攻击提供"oracle"。

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_RETURN_SECURITY_ERROR
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.must-understand

布尔值

true

如果为 true,则基于 WS-SecurityPolicy 的安全标头中包含 SOAP mustUnderstand 标头;否则,始终省略标头。

只适用于 enable.streaming = true - see CXF-8940

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_MUST_UNDERSTAND
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.enable.saml.cache

布尔值

 

如果为 true,如果令牌包含 OneTimeUse Condition,则会为消息启动器和接收者缓存 SAML2 令牌标识符,否则不会为消息启动器或接收者缓存它们。对于消息接收者,默认为 true,对于消息启动器,默认为 false

只有在 SamlToken 策略生效时,缓存才适用,或者为非安全策略问题单配置了 SAML 操作。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_ENABLE_SAML_CACHE
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.store.bytes.in.attachment

布尔值

 

是否在附加中保存字节(CipherData 或 BinarySecurityToken)。如果启用了 MTOM,则默认为 true。把它设置为 false,而是在消息中对字节进行编码。把它设置为 true 效率更高,这意味着可以跳过 BASE-64 编码步骤。这只适用于 DOM WS-Security 堆栈。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_ENDPOINT__ENDPOINT_PATH__SECURITY_STORE_BYTES_IN_ATTACHMENT
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.swa.encryption.attachment.transform.content

布尔值

false

如果为 true,则在通过 WS-SecurityPolicy 表达式加密 Attachment 时将使用Attachment-Content-Only 转换;否则,当通过 WS-SecurityPolicy 表达式加密 Attachment 时,将使用 Attachment-Complete 转换。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_ENDPOINT__ENDPOINT_PATH__SECURITY_SWA_ENCRYPTION_ATTACHMENT_TRANSFORM_CONTENT
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.use.str.transform

布尔值

true

如果为 true,则在(外部)签名 SAML 令牌时将使用 STR (安全令牌参考)转换;否则不使用 STR (安全令牌服务参考) Transform。

有些框架无法处理 SecurityTokenReference。在这种情况下,您可以设置这个 false

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_USE_STR_TRANSFORM
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.add.inclusive.prefixes

布尔值

true

如果为 true,则在使用 WSConstants.C14N_EXCL_OMIT_EXCL_OMIT_COMMENTS 生成签名时,InclusiveNamespaces PrefixList 将添加为 CanonicalizationMethod 子子。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_ADD_INCLUSIVE_PREFIXES
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.disable.require.client.cert.check

布尔值

false

如果为 true,则禁用 WS-SecurityPolicy RequireClientCertificate 策略的强制;否则启用 WS-SecurityPolicy RequireClientCertificate 策略的强制。

有些服务器可能无法在 SSL 握手开始时进行客户端证书验证,因此客户端证书可能无法用于策略验证。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_DISABLE_REQUIRE_CLIENT_CERT_CHECK
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.expand.xop.include

布尔值

 

如果为 true,则 xop:Include 元素将搜索加密和签名(在出站端)或签名验证(在入站端),否则不会发生搜索。这样可确保实际字节已签名,而不只是引用。如果启用了 MTOM,则默认为 true,否则默认值为 false

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_EXPAND_XOP_INCLUDE
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.timestamp.timeToLive

string

300

添加到传入 Timestamp 的 Creation 值的时间(以秒为单位),以确定是否将其接受为有效。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_TIMESTAMP_TIMETOLIVE
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.timestamp.futureTimeToLive

string

60

传入的 TimestampCreated 时间(以秒为单位)有效的时间(以秒为单位)。默认值大于零,以避免时钟稍微询问的问题。把它设置为 0 以拒绝所有将来创建的 'Timestamp's。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_TIMESTAMP_FUTURETIMETOLIVE
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.usernametoken.timeToLive

string

300

附加到传入 UsernameToken 的 Creation 值的时间(以秒为单位),以确定是否接受它是否有效。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_USERNAMETOKEN_TIMETOLIVE
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.usernametoken.futureTimeToLive

string

60

传入 UsernameTokenCreated 时间(以秒为单位)有效的时间(以秒为单位)。默认值大于零,以避免时钟稍微询问的问题。把它设置为 0 以拒绝所有将来创建的 'UsernameToken's。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_USERNAMETOKEN_FUTURETIMETOLIVE
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.spnego.client.action

string

 

org.apache.wss4j.common.spnego.SpnegoClientAction bean 的引用,用于 SPNEGO。这允许用户在不同的实现中插入服务票据。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_SPNEGO_CLIENT_ACTION
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.nonce.cache.instance

string

 

org.apache.wss4j.common.cache.ReplayCache bean 的引用,用于缓存 UsernameToken nonces。默认使用 org.apache.wss4j.common.cache.EHCacheReplayCache 实例。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_NONCE_CACHE_INSTANCE
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.timestamp.cache.instance

string

 

org.apache.wss4j.common.cache.ReplayCache bean 的引用,用于缓存 Timestamp Created Strings。默认使用 org.apache.wss4j.common.cache.EHCacheReplayCache 实例。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_TIMESTAMP_CACHE_INSTANCE
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.saml.cache.instance

string

 

org.apache.wss4j.common.cache.ReplayCache bean 的引用,用于缓存 SAML2 令牌标识符字符串(如果令牌包含 OneTimeUse 条件)。默认使用 org.apache.wss4j.common.cache.EHCacheReplayCache 实例。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_SAML_CACHE_INSTANCE
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.cache.config.file

string

 

将此属性设置为指向 TokenStore 的底层缓存实施的配置文件。使用的默认配置文件是 org.apache.cxf:cxf-rt-security JAR 中的 cxf-ehcache.xml

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_CACHE_CONFIG_FILE
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.token-store-cache-instance

string

 

org.apache.cxf.ws.security.tokenstore.TokenStore bean 的引用,用于缓存安全令牌。默认情况下,这使用实例。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH_SECURITY_TOKEN_STORE_CACHE_INSTANCE
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.cache.identifier

string

 

与 TokenStore 搭配使用的缓存标识符。CXF 使用以下密钥来检索令牌存储: org.apache.cxf.ws.security.tokenstore.TokenStore-<identifier&gt;。此密钥可用于配置特定于服务的缓存配置。如果标识符不匹配,它会回退到带有密钥 org.apache.cxf.ws.security.tokenstore.TokenStore 的缓存配置。

默认 & lt;identifier > 是有问题的服务的 QName。但是,要获取自定义缓存配置(例如,如果要为每个客户端代理指定 TokenStore),它可以使用这个标识符进行配置。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_CACHE_IDENTIFIER
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.role.classifier

string

 

要使用的主题角色分类器。如果一个 WSS4J Validator 从 Validation 返回 JAAS 主题,则 WSS4JInInterceptor 将尝试基于此主题创建 SecurityContext。如果没有指定这个值,它会尝试使用 org.apache.cxf:cxf-core 中的 DefaultSecurityContext 获取角色。否则,它将这个值与 role.classifier.type 结合使用,以从 Subject 获取角色。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_ROLE_CLASSIFIER
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.role.classifier.type

string

prefix

要使用的 Subject Role Classifier Type。如果一个 WSS4J Validator 从 Validation 返回 JAAS 主题,则 WSS4JInInterceptor 将尝试基于此主题创建 SecurityContext。目前接受的值是 prefixclassname。必须与 role.classifier 结合使用。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_ROLE_CLASSIFIER_TYPE
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.asymmetric.signature.algorithm

string

 

此配置标签允许用户覆盖 WS-SecurityPolicy 中使用的默认 Asymmetric Signature 算法(RSA-SHA1),因为 WS-SecurityPolicy 规格目前不允许使用其他算法。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_ASYMMETRIC_SIGNATURE_ALGORITHM
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.symmetric.signature.algorithm

string

 

此配置标签允许用户覆盖 WS-SecurityPolicy 中使用的默认 Symmetric Signature 算法(HMAC-SHA1),因为 WS-SecurityPolicy 规格不允许在 present 中使用其他算法。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_SYMMETRIC_SIGNATURE_ALGORITHM
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.password.encryptor.instance

string

 

org.apache.wss4j.common.crypto.PasswordEncryptor bean 的引用,用于在 Merlin Crypto 实施中加密或解密密码(或任何自定义 Crypto 实现)。

默认情况下,WSS4J 使用 org.apache.wss4j.common.crypto.JasyptPasswordEncryptor,密码必须用密码实例化,以解密 Merlin Crypto 定义中的密钥存储密码。此密码通过 callback-handler定义的 CallbackHandler 获取

加密密码的格式必须存储为"ENC (编码的加密密码)"。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_PASSWORD_ENCRYPTOR_INSTANCE
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.delegated.credential

string

 

对用于 WS-Security 的 Kerberos org.ietf.jgss.GSSCredential bean 的引用。这用于检索服务票据,而不使用客户端凭证。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_DELEGATED_CREDENTIAL
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.security.context.creator

string

 

org.apache.cxf.ws.security.wss4j.WSS4JSecurityContextCreator bean 的引用,用于从一组 WSS4J 处理结果创建 CXF SecurityContext。默认实现是 org.apache.cxf.ws.security.wss4j.DefaultWSS4JSecurityContextCreator

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_SECURITY_CONTEXT_CREATOR
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.security.token.lifetime

long

300000

安全令牌生命周期值(以毫秒为单位)。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_SECURITY_TOKEN_LIFETIME
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.kerberos.request.credential.delegation

布尔值

false

如果为 true,则 KerberosClient 中请求凭据委派;否则,凭据委派不在 KerberosClient 中。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_KERBEROS_REQUEST_CREDENTIAL_DELEGATION
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.kerberos.use.credential.delegation

布尔值

false

如果为 true,则 GSSCredential bean 使用 delegated.credential 属性从 Message Context 中检索,然后用于获取服务票据。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_KERBEROS_USE_CREDENTIAL_DELEGATION
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.kerberos.is.username.in.servicename.form

布尔值

false

如果为 true,则 Kerberos 用户名采用 servicename 格式;否则,Kerberos 用户名不是 servicename 格式。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_KERBEROS_IS_USERNAME_IN_SERVICENAME_FORM
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.kerberos.jaas.context

string

 

用于 Kerberos 的 JAAS 上下文名称。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_KERBEROS_JAAS_CONTEXT
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.kerberos.spn

string

 

要使用的 Kerberos 服务提供商名称(spn)。

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_KERBEROS_SPN
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.kerberos.client

string

 

对用于获取服务票据的 org.apache.cxf.ws.security.kerberos.KerberosClient bean 的引用

这个选项是实验性的,因为它还没有被 测试涵盖

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_KERBEROS_CLIENT
Since Quarkus CXF: 2.5.0

quarkus.cxf.endpoint."/endpoint-path".security.custom.digest.algorithm

string

http://www.w3.org/2001/04/xmlenc#sha256

org.apache.wss4j.policy.model.AlgorithmSuite.AlgorithmSuiteType 上设置的 Digest Algorithm。只有在当前安全策略将 CustomAlgorithmSuite 设置为 AlgorithmSuite 时,才会考虑这个值。

<wsp:Policy wsu:Id="SecurityServiceEncryptThenSignPolicy"
  xmlns:wsp="http://www.w3.org/ns/ws-policy"
  xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
  xmlns:sp="http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702">
  <wsp:ExactlyOne>
    <wsp:All>
      <sp:AsymmetricBinding xmlns:sp="http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702">
        <wsp:Policy>
          ...
          <sp:AlgorithmSuite>
            <wsp:Policy>
              <sp:CustomAlgorithmSuite/>
            </wsp:Policy>
          </sp:AlgorithmSuite>
          ...
        </wsp:Policy>
      </sp:AsymmetricBinding>
      ...
    </wsp:All>
  </wsp:ExactlyOne>
</wsp:Policy>
Copy to Clipboard Toggle word wrap

有关算法的更多信息,请参阅 XML 加密语法和处理规格的 WS-SecurityPolicy 1.2 规格Algorithms 部分。

引入了 CustomAlgorithmSuitedcsecurity.custom ClusterClaim 系列选项,以便在启用了 FIPS 断言的系统中运行 CXF SOAP 客户端和服务。

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_CUSTOM_DIGEST_ALGORITHM
Since Quarkus CXF: 3.8.1

quarkus.cxf.endpoint."/endpoint-path".security.custom.encryption.algorithm

string

http://www.w3.org/2009/xmlenc11#aes256-gcm

org.apache.wss4j.policy.model.AlgorithmSuite.AlgorithmSuiteType 上设置的 Encryption Algorithm。只有在当前安全策略将 CustomAlgorithmSuite 设置为 AlgorithmSuite时,才会考虑这个值。

有关算法的更多信息,请参阅 XML 加密语法和处理规格的 WS-SecurityPolicy 1.2 规格Algorithms 部分。

引入了 CustomAlgorithmSuitedcsecurity.custom ClusterClaim 系列选项,以便在启用了 FIPS 断言的系统中运行 CXF SOAP 客户端和服务。

环境变量:QUARKUS_CXF_ENDPOINT__ENDPOINT_PATH__SECURITY_CUSTOM_ENCRYPTION_ALGORITHM
Since Quarkus CXF: 3.8.1

quarkus.cxf.endpoint."/endpoint-path".security.custom.symmetric.key.encryption.algorithm

string

http://www.w3.org/2001/04/xmlenc#kw-aes256

Symmetric Key Encryption Algorithm 以在 org.apache.wss4j.policy.model.AlgorithmSuite.AlgorithmSuiteType 上设置。只有在当前安全策略将 CustomAlgorithmSuite 设置为 AlgorithmSuite时,才会考虑这个值。

有关算法的更多信息,请参阅 XML 加密语法和处理规格的 WS-SecurityPolicy 1.2 规格Algorithms 部分。

引入了 CustomAlgorithmSuitedcsecurity.custom ClusterClaim 系列选项,以便在启用了 FIPS 断言的系统中运行 CXF SOAP 客户端和服务。

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_CUSTOM_SYMMETRIC_KEY_ENCRYPTION_ALGORITHM
Since Quarkus CXF: 3.8.1

quarkus.cxf.endpoint."/endpoint-path".security.custom.asymmetric.key.encryption.algorithm

string

http://www.w3.org/2001/04/xmlenc#rsa-1_5

Asymmetric Key Encryption Algorithm 以在 org.apache.wss4j.policy.model.AlgorithmSuite.AlgorithmSuiteType 上设置。只有在当前安全策略将 CustomAlgorithmSuite 设置为 AlgorithmSuite时,才会考虑这个值。

有关算法的更多信息,请参阅 XML 加密语法和处理规格的 WS-SecurityPolicy 1.2 规格Algorithms 部分。

引入了 CustomAlgorithmSuitedcsecurity.custom ClusterClaim 系列选项,以便在启用了 FIPS 断言的系统中运行 CXF SOAP 客户端和服务。

环境变量:QUARKUS_CXF_ENDPOINT__ENDPOINT_PATH__SECURITY_CUSTOM_ASYMMETRIC_KEY_ENCRYPTION_ALGORITHM
Since Quarkus CXF: 3.8.1

quarkus.cxf.endpoint."/endpoint-path".security.custom.encryption.key.derivation

string

http://schemas.xmlsoap.org/ws/2005/02/sc/dk/p_sha1

org.apache.wss4j.policy.model.AlgorithmSuite.AlgorithmSuiteType 上设置的加密密钥 Derivation。只有在当前安全策略将 CustomAlgorithmSuite 设置为 AlgorithmSuite时,才会考虑这个值。

有关算法的更多信息,请参阅 XML 加密语法和处理规格的 WS-SecurityPolicy 1.2 规格Algorithms 部分。

引入了 CustomAlgorithmSuitedcsecurity.custom ClusterClaim 系列选项,以便在启用了 FIPS 断言的系统中运行 CXF SOAP 客户端和服务。

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_CUSTOM_ENCRYPTION_KEY_DERIVATION
Since Quarkus CXF: 3.8.1

quarkus.cxf.endpoint."/endpoint-path".security.custom.signature.key.derivation

string

http://schemas.xmlsoap.org/ws/2005/02/sc/dk/p_sha1

org.apache.wss4j.model.AlgorithmSuite.AlgorithmSuite.AlgorithmSuiteType 上设置的签名密钥 Derivation。只有在当前安全策略将 CustomAlgorithmSuite 设置为 AlgorithmSuite时,才会考虑这个值。

有关算法的更多信息,请参阅 XML 加密语法和处理规格的 WS-SecurityPolicy 1.2 规格Algorithms 部分。

引入了 CustomAlgorithmSuitedcsecurity.custom ClusterClaim 系列选项,以便在启用了 FIPS 断言的系统中运行 CXF SOAP 客户端和服务。

环境变量:QUARKUS_CXF_ENDPOINT___ENDPOINT_PATH__SECURITY_CUSTOM_SIGNATURE_KEY_DERIVATION
Since Quarkus CXF: 3.8.1

quarkus.cxf.endpoint."/endpoint-path".security.custom.encryption.derived.key.length

int

256

org.apache.wss4j.policy.model.AlgorithmSuite.AlgorithmSuiteType 上设置的 Encryption Derived Key Length (位数)。只有在当前安全策略将 CustomAlgorithmSuite 设置为 AlgorithmSuite时,才会考虑这个值。

有关算法的更多信息,请参阅 XML 加密语法和处理规格的 WS-SecurityPolicy 1.2 规格Algorithms 部分。

引入了 CustomAlgorithmSuitedcsecurity.custom ClusterClaim 系列选项,以便在启用了 FIPS 断言的系统中运行 CXF SOAP 客户端和服务。

环境变量:QUARKUS_CXF_ENDPOINT__ENDPOINT_PATH__SECURITY_CUSTOM_ENCRYPTION_DERIVED_KEY_LENGTH
Since Quarkus CXF: 3.8.1

quarkus.cxf.endpoint."/endpoint-path".security.custom.signature.derived.key.length

int

192

org.apache.wss4j.policy.model.AlgorithmSuite.AlgorithmSuiteType 上设置的签名 Derived Key Length (位数)。只有在当前安全策略将 CustomAlgorithmSuite 设置为 AlgorithmSuite时,才会考虑这个值。

有关算法的更多信息,请参阅 XML 加密语法和处理规格的 WS-SecurityPolicy 1.2 规格Algorithms 部分。

引入了 CustomAlgorithmSuitedcsecurity.custom ClusterClaim 系列选项,以便在启用了 FIPS 断言的系统中运行 CXF SOAP 客户端和服务。

环境变量:QUARKUS_CXF_ENDPOINT__ENDPOINT_PATH__SECURITY_CUSTOM_SIGNATURE_DERIVED_KEY_LENGTH
Since Quarkus CXF: 3.8.1

quarkus.cxf.endpoint."/endpoint-path".security.custom.minimum.symmetric.key.length

int

256

org.apache.wss4j.policy.model.AlgorithmSuite.AlgorithmSuiteType 上设置的最小 Symmetric Key Length (位数)。只有在当前安全策略将 CustomAlgorithmSuite 设置为 AlgorithmSuite时,才会考虑这个值。

有关算法的更多信息,请参阅 XML 加密语法和处理规格的 WS-SecurityPolicy 1.2 规格Algorithms 部分。

引入了 CustomAlgorithmSuitedcsecurity.custom ClusterClaim 系列选项,以便在启用了 FIPS 断言的系统中运行 CXF SOAP 客户端和服务。

环境变量:QUARKUS_CXF_ENDPOINT__ENDPOINT_PATH__SECURITY_CUSTOM_MINIMUM_SYMMETRIC_KEY_LENGTH
Since Quarkus CXF: 3.8.1

quarkus.cxf.endpoint."/endpoint-path".security.custom.maximum.symmetric.key.length

int

256

org.apache.wss4j.policy.model.AlgorithmSuite.AlgorithmSuite.AlgorithmSuite.AlgorithmSuiteType 上设置的最大 Symmetric Key Length。只有在当前安全策略将 CustomAlgorithmSuite 设置为 AlgorithmSuite时,才会考虑这个值。

有关算法的更多信息,请参阅 XML 加密语法和处理规格的 WS-SecurityPolicy 1.2 规格Algorithms 部分。

引入了 CustomAlgorithmSuitedcsecurity.custom ClusterClaim 系列选项,以便在启用了 FIPS 断言的系统中运行 CXF SOAP 客户端和服务。

环境变量:QUARKUS_CXF_ENDPOINT__ENDPOINT_PATH__SECURITY_CUSTOM_MAXIMUM_SYMMETRIC_KEY_LENGTH
Since Quarkus CXF: 3.8.1

quarkus.cxf.endpoint."/endpoint-path".security.custom.minimum.asymmetric.key.length

int

1024

org.apache.wss4j.policy.model.AlgorithmSuite.AlgorithmSuiteType 上设置的最小 Symmetric Key Length (位数)。只有在当前安全策略将 CustomAlgorithmSuite 设置为 AlgorithmSuite时,才会考虑这个值。

有关算法的更多信息,请参阅 XML 加密语法和处理规格的 WS-SecurityPolicy 1.2 规格Algorithms 部分。

引入了 CustomAlgorithmSuitedcsecurity.custom ClusterClaim 系列选项,以便在启用了 FIPS 断言的系统中运行 CXF SOAP 客户端和服务。

环境变量:QUARKUS_CXF_ENDPOINT__ENDPOINT_PATH__SECURITY_CUSTOM_MINIMUM_ASYMMETRIC_KEY_LENGTH
Since Quarkus CXF: 3.8.1

quarkus.cxf.endpoint."/endpoint-path".security.custom.maximum.asymmetric.key.length

int

4096

要在 org.apache.wss4j.policy.model.AlgorithmSuite.AlgorithmSuiteType 上设置的最大 Symmetric Key Length (位数)。只有在当前安全策略将 CustomAlgorithmSuite 设置为 AlgorithmSuite时,才会考虑这个值。

有关算法的更多信息,请参阅 XML 加密语法和处理规格的 WS-SecurityPolicy 1.2 规格Algorithms 部分。

引入了 CustomAlgorithmSuitedcsecurity.custom ClusterClaim 系列选项,以便在启用了 FIPS 断言的系统中运行 CXF SOAP 客户端和服务。

环境变量:QUARKUS_CXF_ENDPOINT__ENDPOINT_PATH__SECURITY_CUSTOM_MAXIMUM_ASYMMETRIC_KEY_LENGTH
Since Quarkus CXF: 3.8.1

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat