You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

确认微软说法:能否用ARM模板在Azure DevOps流水线创建Azure AD B2C租户?

确认与实现步骤

一、官方说法正确性确认

微软官方文档的说法是正确的:目前确实支持通过ARM模板或Bicep文件创建Azure AD B2C租户,且仅支持创建操作,不支持对已存在的B2C租户进行更新、配置修改等操作。

二、前提条件

  • 拥有具备Azure全局管理员权限的账号(注意:不能是B2C租户管理员,必须是Azure AD全局管理员)
  • 目标Azure订阅已注册Microsoft.AzureActiveDirectory资源提供商
  • Azure DevOps流水线的服务连接需具备足够权限:可分配订阅级的参与者/所有者权限,或针对Microsoft.AzureActiveDirectory/b2cTenants资源的创建权限

三、示例ARM模板

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "b2cTenantName": {
      "type": "string",
      "metadata": {
        "description": "租户名称前缀,最终域名格式为 {name}.onmicrosoft.com"
      }
    },
    "location": {
      "type": "string",
      "defaultValue": "global",
      "allowedValues": [
        "global",
        "australiaeast",
        "brazilsouth",
        "canadacentral",
        "centralus",
        "eastasia",
        "eastus",
        "francecentral",
        "germanywestcentral",
        "japaneast",
        "northcentralus",
        "northeurope",
        "southafricanorth",
        "southcentralus",
        "southeastasia",
        "uksouth",
        "westcentralus",
        "westeurope",
        "westus",
        "westus2"
      ],
      "metadata": {
        "description": "B2C租户的部署区域"
      }
    },
    "sku": {
      "type": "string",
      "defaultValue": "PremiumP1",
      "allowedValues": [
        "Free",
        "PremiumP1",
        "PremiumP2"
      ],
      "metadata": {
        "description": "B2C租户的SKU层级"
      }
    }
  },
  "resources": [
    {
      "type": "Microsoft.AzureActiveDirectory/b2cTenants",
      "apiVersion": "2021-04-01",
      "name": "[parameters('b2cTenantName')]",
      "location": "[parameters('location')]",
      "sku": {
        "name": "[parameters('sku')]",
        "tier": "[parameters('sku')]"
      },
      "properties": {}
    }
  ],
  "outputs": {
    "b2cTenantDomain": {
      "type": "string",
      "value": "[concat(parameters('b2cTenantName'), '.onmicrosoft.com')]"
    }
  }
}

四、Azure DevOps流水线实现步骤

  1. 准备模板文件:将上述示例保存为b2c-tenant-deploy.json,提交到代码仓库。
  2. 配置服务连接:在Azure DevOps项目中创建Azure资源管理器服务连接,关联目标订阅,确保服务主体具备资源创建权限。
  3. 添加部署任务:在流水线中添加「Azure资源组部署」任务,配置项如下:
    • 服务连接:选择已创建的服务连接
    • 动作:创建或更新资源组
    • 资源组:指定目标资源组名称(可勾选自动创建)
    • 位置:与ARM模板中location参数值一致
    • 模板位置:选择「仓库中的模板」
    • 模板路径:填写b2c-tenant-deploy.json
    • 参数:按需传入b2cTenantName、location、sku等参数,可通过流水线变量动态配置
  4. 触发流水线:运行流水线,部署完成后可在Azure门户的Azure AD B2C服务中查看新租户。

五、注意事项

  • 每个Azure订阅最多可创建10个Azure AD B2C租户
  • b2cTenantName必须全局唯一,不能与已存在的B2C租户名称重复
  • 部署完成后,无法通过ARM模板修改租户的SKU、区域等属性,需在Azure门户手动操作
  • 若流水线报错权限不足,需检查服务连接的权限配置是否到位

内容的提问来源于stack exchange,提问作者st_user_321122

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.16 12:33:28