azure-ad-b2c - 验证 Azure AD B2C 自定义策略中的限制
问题描述
我在自定义策略中有以下 ClaimType 来测试在注册期间收集用户时区:
<ClaimType Id="extension_timezone">
<DisplayName>Timezone</DisplayName>
<DataType>string</DataType>
<UserHelpText>Enter your timezone</UserHelpText>
<UserInputType>DropdownSingleSelect</UserInputType>
<Restriction>
<Enumeration Text="(UTC-08:00) Pacific Time (US & Canada)" Value="(UTC-08:00) Pacific Time (US & Canada)" SelectByDefault="false" />
<Enumeration Text="(UTC-06:00) Central Time (US & Canada)" Value="(UTC-06:00) Central Time (US & Canada)" SelectByDefault="false" />
<Enumeration Text="(UTC+00:00) Dublin, Edinburgh, Lisbon, London" Value="(UTC+00:00) Dublin, Edinburgh, Lisbon, London" SelectByDefault="true" />
<Enumeration Text="(UTC+12:00) Auckland, Wellington" Value="(UTC+12:00) Auckland, Wellington" SelectByDefault="false" />
</Restriction>
</ClaimType>
这在注册流程中正确显示,但我注意到输入未针对限制进行验证。脚步:
- 从下拉列表中选择项目
- 使用浏览器工具(例如 Chrome DevTools)更改所选选项的值
- 提交表格
我希望有验证来检查提交的值是否与枚举条目之一匹配,但这不会发生。我可以在输出声明中包含 extension_timezone 并查看该值反映了我所做的与任何枚举选项都不匹配的更改。
解决方案
您可以使用 v1 和 v2 策略加载的 jQuery 添加自己的验证规则。
有关使用 Javascript 的指南和示例,请参阅此文档
推荐阅读
- rust - 约束 Rust 方法以接受有效类型对的两个变量
- kubernetes - 批量删除 Kubernetes PVC ebs 卷
- weblogic12c - java.lang.LinkageError:加载程序约束违规:
- android - 如何全屏显示照片?
- regex - 正则表达式仅替换组
- antd - 是否可以自定义标题列以扩展antd表中的按钮?
- java - 计算字符串中的字符串数
- r - 使用 ID 将数据库中的名称作为列添加到数据框中(棒球 R)
- javascript - P5 JavaScript for loop 帮助换行
- android - 在深色主题中忽略材质 colorOnSurface