373.5.2. 查询参数(35 参数):


Expand
名称描述默认类型

baseUri (common)

您可以设置 URI 解引用中使用的基本 URI。然后,相对 URI 与基本 URI 串联。

 

字符串

clearHeaders (common)

确定在签名并验证后是否清除 XML 签名特定标头。默认值为 true。

true

布尔值

cryptoContextProperties (common)

设置加密上下文属性。请参阅链接 XMLCryptoContext#setProperty (String, Object)。在 XMLSignContext a XMLValidateContext 中定义了可能的属性(请参阅支持的属性)。以下属性默认为 XML 验证的值为值#TRUE。如果要关闭这些功能,您必须将属性值设置为 Boolean#FALSE. org.jcp.xml.dsig.validateManifests javax.xml.crypto.cacheReference

 

map

disallowDoctypeDecl (common)

不允许传入的 XML 文档包含 DTD DOCTYPE 声明。默认值为 Boolean#TRUE。

true

布尔值

omitXmlDeclaration (common)

代表传出消息正文中的 XML 声明是否应该被省略。默认值为 false。可以使用标头 XmlSignatureConstants#HEADER_OMIT_XML_DECLARATION 覆盖。

false

布尔值

outputXmlEncoding (common)

生成的签名 XML 文档的字符编码。如果使用 null,则使用原始 XML 文档的编码。

 

字符串

schemaResourceUri (common)

XML Schema 的类路径。在用于决定 ID 属性的分离 XML 签名案例中指定,可以在信封和信封问题单中设置。如果设置,则使用指定的 XML 模式验证 XML 文档。架构资源 URI 可以被标头 XmlSignatureConstants#HEADER_SCHEMA_RESOURCE_URI 覆盖。

 

字符串

同步 (高级)

设置同步处理是否应当严格使用,还是允许 Camel 使用异步处理(如果受支持)。

false

布尔值

uriDereferencer (advanced)

如果要通过参考 URI 限制远程访问,您可以设置自己的解引用器。可选参数。如果没有设置提供程序默认解引用器,可以使用该引用程序解析 URI 片段、HTTP、文件和 XPpointer URI。注意:实施是供应商依赖的!

 

URIDereferencer

addKeyInfoReference (sign)

为了保护 KeyInfo 元素不受篡改,您可以添加对签名信息元素的引用,以便它通过签名值进行保护。默认值为 true。只有 KeyAccessor 返回的 KeyInfo 和 KeyInfo#getId ()不是 null 时才相关。

true

布尔值

canonicalizationMethod (sign)

在计算摘要前,规范性方法用于规范 SignedInfo 元素。您可以使用 helper 方法 XmlSignatureHelper.getCanonicalizationMethod (字符串算法)或 getCanonicalizationMethod (String 算法,ListinclusiveNamespacePrefixes)来创建规范方法。

http://www.w3.org/TR/2001/REC-xml-c14n-20010315

AlgorithmMethod

contentObjectId (sign)

设置内容对象 Id 属性值。默认情况下会生成 UUID。如果您设置了 null 值,则会生成一个新 UUID。仅在信封问题单中使用。

 

字符串

contentReferenceType (sign)

内容引用的类型。默认值为 null。这个值可以被标头 XmlSignatureConstants#HEADER_CONTENT_REFERENCE_TYPE 覆盖。

 

字符串

contentReferenceUri (sign)

要签名的内容的参考 URI。仅在信封案例中使用。如果引用 URI 包含 ID 属性值,则还必须设置资源 schema URI ( setSchemaResourceUri (String)),因为 schema 验证器将找到哪个属性是 ID 属性。在信封或分离的情况下将被忽略。

 

字符串

digestAlgorithm (sign)

摘要算法 URI。可选参数。此摘要算法用于计算输入消息摘要。如果没有指定此摘要算法,则从签名算法计算摘要算法。示例: http://www.w3.org/2001/04/xmlenc#sha256

 

字符串

keyAccessor (sign)

对于签名过程,需要私钥。您可以指定一个提供此私钥的密钥访问者。密钥 accessor bean 必须实施 KeyAccessor 接口。软件包 org.apache.camel.component.xmlsecurity.api 包含默认的实施类 DefaultKeyAccessor,它从 Java 密钥存储读取私钥。

 

KeyAccessor

parentLocalName (sign)

将添加 XML 签名元素的父元素的本地名称。仅与信封 XML 签名相关。另外,您还可以使用 setParentXpath (XPathFilterParameterSpec)。默认值为 null。该值必须为 null,以用于信封和分离 XML 签名。用于 enveloped signature 的此参数或参数 setParentXpath (XPathFilterParameterSpec)和参数 setXpathsToIdAttributes (List)不能在同一个配置中设置。如果在同一配置中指定了参数 parentXpath 和 parentLocalName,则会抛出异常。

 

字符串

parentNamespace (sign)

添加 XML 签名元素的父元素的命名空间。

 

字符串

parentXpath (sign)

在信封问题单中设置 XPath 以查找父节点。您可以通过此方法或父项的本地名称和命名空间来指定父节点,方法为 setParentLocalName (String)和 setParentNamespace (String)。默认值为 null。该值必须为 null,以用于信封和分离 XML 签名。如果在同一配置中指定了参数 parentXpath 和 parentLocalName,则会抛出异常。

 

XPathFilterParameter Spec

plainText (sign)

指示邮件正文是否包含纯文本。默认值为 false,表示邮件正文包含 XML。该值可以被标头 XmlSignatureConstants#HEADER_MESSAGE_IS_PLAIN_TEXT 覆盖。

false

布尔值

plainTextEncoding (sign)

纯文本编码。只有消息正文为纯文本时(请参阅参数 plainText)相关。默认值为 UTF-8。

UTF-8

字符串

prefixForXmlSignature Namespace (sign)

XML 签名命名空间 http://www.w3.org/2000/09/xmldsig# 的命名空间前缀。默认值为 ds。如果设置了 null 或空值,则不会将前缀用于 XML 签名命名空间。查看最佳实践 http://www.w3.org/TR/xmldsig-bestpractices/#signing-xml- without-namespaces

ds

字符串

属性 (签名)

要在包含额外属性的 XML 签名中添加额外参考和对象,您可以提供一个实现 XmlSignatureProperties 接口的 bean。

 

XmlSignatureProperties

signatureAlgorithm (sign)

签名算法.默认值为 http://www.w3.org/2000/09/xmldsig#rsa-sha1

http://www.w3.org/2000/09/xmldsig#rsa-sha1

字符串

signatureId (sign)

设置签名 Id。如果没有设置此参数(null 值),则会为签名 ID (默认)生成唯一的 ID。如果此参数设为 (空字符串),则在签名元素中不会创建 Id 属性。

 

字符串

transformMethods (sign)

在计算摘要之前,在消息正文上执行的转换。默认情况下,添加了 C14n,如果被信封签名(请参阅选项父LocalName)也会在列表的位置 0 中添加了。http://www.w3.org/2000/09/xmldsig#enveloped-signature使用 XmlSignatureHelper 中的方法创建转换方法。

 

list

xpathsToIdAttributes (sign)

通过 XPATH 表达式,定义在分离中签署的元素到 ID 属性(类型为 ID 的attributes)。对于通过 XPATH 表达式找到的每个元素,会创建分离的签名,其引用 URI 包含对应的属性值(由 '#' 提供)。签名会成为签名元素的最后同级。层次层次层次的元素首先进行签名。您还可以通过标头 XmlSignatureConstants#HEADER_XPATHS_TO_ID_ATTRIBUTES 动态设置 XPATH 列表。适用于 enveloped 签名的参数 setParentLocalName (String)或 setParentXpath (XPathFilterParameterSpec),且不得在同一配置中设置用于分离的签名参数。

 

list

keySelector (verify)

提供验证 XML 签名的密钥。

 

KeySelector

outputNodeSearch (verify)

设置输出节点搜索值,用于从 XML 签名文档确定节点,这些文档应设置为输出消息正文。值的类取决于输出节点搜索的类型。输出节点搜索转发到 XmlSignature2Message。

 

字符串

outputNodeSearchType (verify)

决定用于决定输出消息正文输出节点的搜索类型。请参阅 setOutputNodeSearch (Object)。您可以在 DefaultXmlSignature2Message 中找到支持的默认搜索类型。

默认

字符串

removeSignatureElements (verify)

指示 XML 签名元素(带有本地名称签名和名称sapce http://www.w3.org/2000/09/xmldsig#的元素)是否应该从设置为输出消息的文档中删除。通常,这只被信任 XML 签名。默认值为 Boolean#FALSE。此参数转发到 XmlSignature2Message。如果输出节点搜索类型是 DefaultXmlSignature2Message#OUTPUT_NODE_SEARCH_TYPE_DEFAULT.F

false

布尔值

secureValidation (verify)

启用安全验证。如果为 true,则启用了安全验证。

true

布尔值

validationFailedHandler (verify)

处理不同的验证失败情况。默认实施会引发不同情况的特定例外(所有例外的软件包名称 org.apache.camel.component.xmlsecurity.api,是 XmlSignatureInvalidException 的子类。如果签名值验证失败,则将引发 XmlSignatureInvalidValueException。如果引用验证失败,则引发 XmlSignatureInvalidContentHashException。如需更多信息,请参阅 JavaDoc。

 

ValidationFailedHandler

xmlSignature2Message (verify)

在验证后将 XML 签名映射到 output-message 的 bean。该映射应如何通过选项 outputNodeSearchType、outputNodeSearch 和 removeSignatureElements 进行配置。默认实现提供三种可能,它们与三个输出节点搜索类型 Default、ElementName 和 XPath 相关。默认实现决定节点被序列化,然后设置为输出消息的正文(如果搜索类型为 ElementName),则输出节点(在本例中为某一元素)由搜索值中定义的本地名称和命名空间(请参阅输出输出NodeSearch)决定。如果搜索类型是 XPath,则输出节点由搜索值中指定的 XPath 决定(本例中为输出节点可以是 Element, TextNode 或 Document)。如果输出节点搜索类型是 Default,则应用以下规则: 在信封 XML 签名案例中(使用 URI= 的引用并转换 http://www.w3.org/2000/09/xmldsig#enveloped-signature),没有 Signature 元素的传入 XML 文档设置为输出消息正文。在非envoped XML 签名案例中,消息正文从引用的对象决定 ; 在输出节点确定"Enveloping XML 签名案例"章节中对此进行了详细阐述。

 

XmlSignature2Message

xmlSignatureChecker (verify)

此接口允许应用程序在验证执行前检查 XML 签名。建议在 http://www.w3.org/TR/xmldsig-bestpractices/#check-what-is-signed中使用这个步骤

 

XmlSignatureChecker

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat