6.7. 映射解析器配置


令牌处理系统默认提供一个映射解析器。解析器名为 FilterMappingResolver。本节将涵盖其配置。

注意

有关 映射解析器 的常规信息,请参阅 Red Hat Certificate System Planning, Installation, and Deployment Guide 中的 Mapping Resolver 部分。

6.7.1. 键设置映射解析器

在外部注册过程中,密钥集必须使用解析器解析,然后才能进行身份验证。

键集映射解析器名称定义如下:

Copy to Clipboard Toggle word wrap
externalReg.mappingResolver=<keySet mapping resolver name>

例如:

Copy to Clipboard Toggle word wrap
externalReg.mappingResolver=keySetMappingResolver

以下配置示例显示了完整的实例配置:

Copy to Clipboard Toggle word wrap
mappingResolver.keySetMappingResolver.class_id=filterMappingResolverImpl
mappingResolver.keySetMappingResolver.mapping.0.filter.appletMajorVersion=0
mappingResolver.keySetMappingResolver.mapping.0.filter.appletMinorVersion=0
mappingResolver.keySetMappingResolver.mapping.0.filter.keySet=
mappingResolver.keySetMappingResolver.mapping.0.filter.tokenATR=
mappingResolver.keySetMappingResolver.mapping.0.filter.tokenCUID.end=a1000000000000000000
mappingResolver.keySetMappingResolver.mapping.0.filter.tokenCUID.start=a0000000000000000000
mappingResolver.keySetMappingResolver.mapping.0.target.keySet=defKeySet
mappingResolver.keySetMappingResolver.mapping.1.filter.appletMajorVersion=1
mappingResolver.keySetMappingResolver.mapping.1.filter.appletMinorVersion=1
mappingResolver.keySetMappingResolver.mapping.1.filter.keySet=
mappingResolver.keySetMappingResolver.mapping.1.filter.tokenATR=1234
mappingResolver.keySetMappingResolver.mapping.1.filter.tokenCUID.end=
mappingResolver.keySetMappingResolver.mapping.1.filter.tokenCUID.start=
mappingResolver.keySetMappingResolver.mapping.1.target.keySet=defKeySet
mappingResolver.keySetMappingResolver.mapping.2.filter.appletMajorVersion=
mappingResolver.keySetMappingResolver.mapping.2.filter.appletMinorVersion=
mappingResolver.keySetMappingResolver.mapping.2.filter.keySet=
mappingResolver.keySetMappingResolver.mapping.2.filter.tokenATR=
mappingResolver.keySetMappingResolver.mapping.2.filter.tokenCUID.end=
mappingResolver.keySetMappingResolver.mapping.2.filter.tokenCUID.start=
mappingResolver.keySetMappingResolver.mapping.2.target.keySet=jForte
mappingResolver.keySetMappingResolver.mapping.order=0,1,2

上面的示例定义了名为 012 的三个映射。它们以升序排序,使用示例中的 mappingResolver.keySetMappingResolver.mapping.order=0,1,2 行。这个顺序表示将首先针对映射过滤器 0 运行输入参数;只有在它们与那个过滤器不匹配时,才会尝试下一个参数。例如,如果评估有以下特征的令牌:

Copy to Clipboard Toggle word wrap
CUID=a0000000000000000011
appletMajorVersion=0
appletMinorVersion=0

然后,它将传递映射 0 并为其分配其目标,它被配置为 defKeySet,因为小程序版本匹配,CUID 属于该映射的 CUID start 和 end 范围。

另一方面,如果令牌有以下参数:

Copy to Clipboard Toggle word wrap
CUID=b0000000000000000000
ATR=2222
appletMajorVersion=1
appletMinorVersion=1

在这种情况下,此令牌无法映射 0, 因为它是在指定的 CUID 范围之外。它还无法映射 1,因为当小程序版本匹配时,ATR 则不会。以上令牌将被分配到映射 2 及其目标 jForte

请注意,映射 2 没有其任何过滤器的分配。这会导致映射与所有令牌匹配,有效使其成为"默认"值。类似的映射必须以映射顺序最后指定,因为永远不会评估后的任何其他映射。

6.7.2. 令牌类型(TPS)映射解析器

Token Processing System: formatProfileMappingResolver, enrollProfileMappingResolver ,enrollProfileMappingResolver, 和 pinResetProfileMappingResolver 中定义三个默认 tokenType 映射解析器。与上一节中讨论的外部注册问题单相比,内部注册令牌类型实际上是从定义的映射解析器计算的。

令牌类型映射解析器名称定义如下:

Copy to Clipboard Toggle word wrap
op.<op>.mappingResolver=<mapping resolver name>

例如:

Copy to Clipboard Toggle word wrap
op.enroll.mappingResolver=enrollProfileMappingResolver

以下配置示例描述了 enrollProfileMappingResolver

Copy to Clipboard Toggle word wrap
mappingResolver.enrollProfileMappingResolver.class_id=filterMappingResolverImpl
mappingResolver.enrollProfileMappingResolver.mapping.0.filter.appletMajorVersion=1
mappingResolver.enrollProfileMappingResolver.mapping.0.filter.appletMinorVersion=
mappingResolver.enrollProfileMappingResolver.mapping.0.filter.tokenATR=
mappingResolver.enrollProfileMappingResolver.mapping.0.filter.tokenCUID.end=b1000000000000000000
mappingResolver.enrollProfileMappingResolver.mapping.0.filter.tokenCUID.start=b0000000000000000000
mappingResolver.enrollProfileMappingResolver.mapping.0.filter.tokenType=userKey
mappingResolver.enrollProfileMappingResolver.mapping.0.target.tokenType=userKey
mappingResolver.enrollProfileMappingResolver.mapping.1.filter.appletMajorVersion=1
mappingResolver.enrollProfileMappingResolver.mapping.1.filter.appletMinorVersion=
mappingResolver.enrollProfileMappingResolver.mapping.1.filter.tokenATR=
mappingResolver.enrollProfileMappingResolver.mapping.1.filter.tokenCUID.end=a0000000000000001000
mappingResolver.enrollProfileMappingResolver.mapping.1.filter.tokenCUID.start=a0000000000000000000
mappingResolver.enrollProfileMappingResolver.mapping.1.filter.tokenType=soKey
mappingResolver.enrollProfileMappingResolver.mapping.1.target.tokenType=soKey
mappingResolver.enrollProfileMappingResolver.mapping.2.filter.appletMajorVersion=
mappingResolver.enrollProfileMappingResolver.mapping.2.filter.appletMinorVersion=
mappingResolver.enrollProfileMappingResolver.mapping.2.filter.tokenATR=
mappingResolver.enrollProfileMappingResolver.mapping.2.filter.tokenCUID.end=
mappingResolver.enrollProfileMappingResolver.mapping.2.filter.tokenCUID.start=
mappingResolver.enrollProfileMappingResolver.mapping.2.filter.tokenType=
mappingResolver.enrollProfileMappingResolver.mapping.2.target.tokenType=userKey
mappingResolver.enrollProfileMappingResolver.mapping.order=1,0,2

为上例中的 enrollProfileMappingResolver 定义了三个映射。映射名为 012mappingResolver.enrollProfileMappingResolver.mapping.order=1,0,2 行定义映射将处理的顺序。如果令牌与映射匹配,则不会评估顺序中的进一步映射;如果没有与映射不匹配,则顺序的下一个映射将会被尝试。

如果使用带有以下参数的令牌:

Copy to Clipboard Toggle word wrap
CUID=a0000000000000000011
appletMajorVersion=1
appletMinorVersion=0
extension: tokenType=soKey

具有此配置的令牌将匹配映射 1 的过滤器,因为小程序版本匹配,CUID 在指定的 start 和 end 范围内失败,扩展 tokenType 会匹配。因此,此令牌将被分配该映射的目标 - soKey

在另一个情况下,如果令牌有以下参数:

Copy to Clipboard Toggle word wrap
CUID=b0000000000000000010
appletMajorVersion=1
appletMinorVersion=1

在这种情况下,令牌将失败,因为 CUID 在指定的范围之外。然后,它也会失败映射 0, 因为缺少 tokenType 扩展。然后,此令牌将匹配映射 2,因为它没有指定过滤器以匹配所有与之前过滤器不匹配的令牌。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat, Inc.