尝试限制 Azure ADB2C 用户流中多因素身份验证页面中的国家/地区列表

Trying to limit the country list in multifactor authentication page in Azure ADB2C User Flow

我试图通过覆盖语言自定义中的默认 json 文件来限制身份验证页面中的国家/地区列表,如下所示。但这并没有反映在页面中。

 "LocalizedStrings": [
    {
      "ElementType": "UxElement",
      "ElementId": null,
      "StringId": "countryList",
      "Override": true,
      "Value": "{\"IN\":\"India\"}"
}
]

看看这个post

这是一个例子:

<LocalizedString ElementType="UxElement" StringId="countryList">{"DEFAULT":"Country/Region","AU":"Australia","NZ":"New Zealand"}</LocalizedString>

您可以通过转到 Azure 门户中的 B2C 资源并导航至:

下载多因素身份验证页面的字符串来自定义国家/地区列表
  1. 您的保单(假设这是 SUSI 保单)
  2. 自定义 -> 语言
  3. 如果未启用,请单击菜单中的 'Enable Language Customization'
  4. Select 您要自定义的语言('EN' 在我的例子中)
  5. 在弹出菜单中,找到“页面级资源文件”下的“多因素身份验证页面”部分,然后展开该部分
  6. 单击“下载默认值(en)”
  7. 在编辑器中打开下载的 JSON 文件
  8. 将 JSON by removing/modifying 条目编辑为 ElementType UxElement 的 StringId countryList。确保您还将覆盖值设置为 true。我的例子是:
{
  "LocalizedStrings": [
    {
      "ElementType": "UxElement",
      "ElementId": null,
      "StringId": "countryList",
      "Override": true,
      "Value": "{\"IN\":\"India\"}"
    }
  ]
}
  1. 使用文件选择器控件保存文件并作为覆盖上传。
  2. 您可能需要刷新浏览器,但您应该会看到所做的更改。

另一个问题是您为错误的页面模板上传了覆盖。我用于屏幕截图的是 SUSI 用户流程的“多因素 phone 身份验证”。页面模板看起来是 phonefactor.

我发现我在错误的页面(即多因素身份验证页面)中进行更改。这些是步骤

  1. 点击您的用户流程
  2. 语言 -> 如果未启用,请单击菜单中的 'Enable Language Customization'
  3. Select 语言
  4. 单击弹出菜单中的 phone 登录页面并下载默认值 json
  5. 然后添加这个
"LocalizedCollections": [
    {
      "ElementType": "ClaimType",
      "ElementId": "countryCode",
      "TargetCollection": "Restriction",
      "Override": true,
      "Items": [
        {
          "Name": "India(+91)",
          "Value": "IN"
        }
      ]
    }
  ]
  1. 上传此 json。