如何通过Azure CLI以程序方式链接现有B2C租户?运行这条线路:
az resource create --resource-group <rg> --resource-type Microsoft.AzureActiveDirectory/b2cDirectories --name <tenant>.onmicrosoft.com --location Europe --properties "{"tenantId": "<tenantId>", "sku": { "name": "Standard", "tier": "A0" } }"
返回BadRequestError: The 'sku' property is required for creating a b2c directory resource
,但它在
ARM";B2C链接资源";看起来像这样:
{
"type": "Microsoft.AzureActiveDirectory/b2cDirectories",
"apiVersion": "2017-01-30",
"name": "[parameters('name')]",
"location": "[parameters('location')]",
"tags": {},
"sku": {
"name": "Standard",
"tier": "A0"
},
"properties": {
"tenantId": "[parameters('tenantId')]"
}
}
更多信息:
- 我尝试过关于sku部分的不同变体,例如将其完全排除在外或将其作为专用参数
--sku Standard
等,但似乎都不起作用 - 通过
az resource delete --ids /subscriptions/<subscriptionId>/resourceGroups/<rg>/providers/Microsoft.AzureActiveDirectory/b2cDirectories/<tenant>.onmicrosoft.com
删除现有链接效果非常好 - 我们为什么需要这个?我们使用Terraform实现基础设施部署自动化。我们意识到B2C租户自动化的局限性(请参阅此处、此处或此处(,因此我们的目标是通过管道删除/添加B2C链接,以至少在销毁/应用基础设施时保持订阅干净
- 通过Azure门户链接现有B2C租户如下所示
欢迎任何建议。谢谢你的帮助!
我认为Azure CLI目前无法管理B2C租户。
如您所知,已经进行了详细的讨论https://github.com/Azure/azure-cli/issues/12058
其他编程方法:
我捕捉了Fiddler Traces以了解流/或负责的端点。我能够指出下面的终点。我正在检查创建一个新的Azure B2C租户。
PUT https://management.azure.com/subscriptions/SUBSCRIBTION/resourceGroups/RESOURCEGROUP/providers/Microsoft.AzureActiveDirectory/b2cDirectories/contosoorganiztion.onmicrosoft.com?api-version=2019-01-01-preview
{"location":"United States","sku":{"name":"Standard","tier":"A0"},"properties":{"createTenantProperties":{"displayName":"Contoso Organization","countryCode":"US"}}}
然而,我无法检查";链接到现有租户";(根据您的要求(我端的选项,因为我端的权限。但我假设应该有一个类似的端点负责相同的事情。您可以使用解密的Https(或任何有助于捕获解密的Https流量的工具(捕获Fiddler跟踪,尝试链接现有租户以了解端点和请求主体。
注意:
请记住,此API/端点不受支持,可能会发生更改,因此不建议用于生产环境:
您将需要访问令牌才能访问端点。
要获得令牌,Azure门户的资源id为:74658136-14ec-4630-ad9b-26e160ff0fc6
az account get-access-token --resource 74658136-14ec-4630-ad9b-26e160ff0fc6