【问题标题】:Creating an Azure Subscription with a Bicep template fails with error 'InvalidSubCreationScope - Not a valid subscription creation scope'使用 Bicep 模板创建 Azure 订阅失败并出现错误“InvalidSubCreationScope - 不是有效的订阅创建范围”
【发布时间】:2021-11-21 16:40:34
【问题描述】:

我正在尝试使用以下二头肌模板创建新的 Azure 订阅:

targetScope = 'tenant'

var spokeSubscriptionName = 'Test Sub'
resource spokeSubscription 'Microsoft.Subscription/aliases@2020-09-01' = {
  scope: tenant()
  name: name: guid(spokeSubscriptionName, tenant().tenantId)
  properties: {
    displayName: spokeSubscriptionName
    billingScope: '/providers/Microsoft.Billing/billingAccounts/foo:bar'
    workload: 'Production'
  }
}

当我使用这个命令执行部署时:

az deployment tenant create --name 01TestSubDeploy2021-11-21 --location uksouth --template-file .\subscription-only.bicep

我收到以下错误:

{
    "status": "Failed",
    "error": {
        "code": "DeploymentFailed",
        "message": "At least one resource deployment operation failed. Please list deployment operations for details. Please see https://aka.ms/DeployOperations for usage details.",
        "details": [
            {
                "code": "BadRequest",
                "message": "{\r\n  \"error\": {\r\n    \"code\": \"InvalidSubCreationScope\",\r\n    \"message\": \"Not a valid subscription creation scope\"\r\n  },\r\n  \"code\": \"InvalidSubCreationScope\",\r\n  \"message\": \"Not a valid subscription creation scope\"\r\n}"
            }
        ]
    }
}

使用 --what-if 开关运行命令会返回以下内容:

The deployment will update the following scope:

Scope: /

  + Microsoft.Subscription/aliases/[SUBGUID] [2020-09-01]

      apiVersion:              "2020-09-01"
      id:                      "/providers/Microsoft.Subscription/aliases/[SUBGUID]"
      name:                    "[SUBGUID]"
      properties.billingScope: "/providers/Microsoft.Billing/billingAccounts/foo:bar"
      properties.displayName:  "Test Sub"
      properties.workload:     "Production"
      type:                    "Microsoft.Subscription/aliases"

我使用的帐户在 Root 范围内拥有 Owner 权限。

This post 表明我用于计费范围的值可能不正确。我从命令az billing account list 返回的ID 属性中获取了计费范围值。我已经尝试了完整的范围路径和 ID 值。

计费帐户属于“Microsoft 客户协议”类型(例如,不是 EA)。大多数程序化订阅创建的文档都明确指出这些示例适用于 EA 租户,并且“需要对其他租户类型进行修改”。但是,并没有说这是不可能的。

我想确认 MCA 计费帐户目前无法通过 Bicep 模板创建订阅,或者更正我的模板或部署命令中的任何错误。

提前致谢!

【问题讨论】:

    标签: azure azure-bicep


    【解决方案1】:

    此错误是由于计费范围无效。

    MCA 订阅的正确范围需要包括计费帐户、计费配置文件和发票部分。

    更多详情请点击此处:https://docs.microsoft.com/en-us/azure/cost-management-billing/manage/programmatically-create-subscription-microsoft-customer-agreement

    【讨论】:

      猜你喜欢
      • 2019-06-25
      • 1970-01-01
      • 2019-04-09
      • 1970-01-01
      • 2021-12-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-07-07
      相关资源
      最近更新 更多