Azure AD B2C自定义策略中自定义声明本地化失败问题
自定义MFA声明无法本地化的解决办法
信赖方构建块中的以下声明无法添加多语言本地化配置,尽管
trustframeworklocalization.xml已配置且对其他部分生效:
<ClaimType Id="extension_mfaByPhoneOrEmail"> <DisplayName>Please select your preferred MFA method</DisplayName> <DataType>string</DataType> <UserInputType>RadioSingleSelect</UserInputType> <Restriction> <Enumeration Text="Phone" Value="phone" SelectByDefault="true" /> <!-- <Enumeration Text="Email " Value="email" SelectByDefault="false" /> --> </Restriction> </ClaimType>
- 核对声明ID拼写:确保
trustframeworklocalization.xml里引用的声明ID和上面的extension_mfaByPhoneOrEmail完全一致,大小写、下划线、前缀都不能错。 - 正确配置本地化资源:在本地化文件里要同时声明
DisplayName和枚举项的多语言值,示例如下:<LocalizedResources Id="api.signuporsignin.zh-CN"> <LocalizedStrings> <LocalizedString ElementType="ClaimType" ElementId="extension_mfaByPhoneOrEmail" StringId="DisplayName">请选择您偏好的MFA验证方式</LocalizedString> <LocalizedString ElementType="ClaimType" ElementId="extension_mfaByPhoneOrEmail" StringId="Phone">电话</LocalizedString> </LocalizedStrings> </LocalizedResources> - 清理注释代码:如果后续要启用邮箱选项,取消注释后必须同步添加对应的本地化配置,避免注释干扰解析。
- 匹配语言区域ID:确认本地化文件里的语言区域(比如
zh-CN)和用户访问时的语言设置一致,且本地化资源节点的Id要符合{策略名}.{语言区域}的格式。 - 重新发布策略:改完本地化文件后,必须重新发布信赖方策略和对应的基础策略,确保配置生效。
内容的提问来源于stack exchange,提问作者denisdm91
相关产品推荐
相关产品推荐

