Azure中所有azure资源类型的列表?

时间:2018-04-16 16:21:02

标签: azure azure-active-directory azure-resource-manager azure-powershell

您是否可以在任何地方获得Azure提供的所有资源类型的完整列表?我正在进行策略/角色管理,似乎没有一个好地方可以查找所有资源类型。目前我一直在使用Get-AzureRmProviderOperation,但这仍然没有显示所有内容。例如,Microsoft.Botservice

没有选项

3 个答案:

答案 0 :(得分:0)

请注意,如果要查看模板引用,则可以转到https://docs.microsoft.com/en-us/azure/templates/。请注意,截至该日期,某些资源类型仍然缺失(例如'SendGrid.Email/accounts')

答案 1 :(得分:0)

您可以将Providers - List API$expand=resourceTypes/aliases查询参数一起使用,以提供所需的一切。

您可以通过以下方式获取所有资源类型 1.在返回的每个提供者中追加namespaceresourceTypes[*].resourceType 2.每个别名的名称已经是资源类型名称

这是一个简单的nodejs脚本,用于将所有资源类型分类到一个文件中

const fs = require('fs');

var a = <resource-provider-api-response-as-json-object>;

let final = [];

var b = a.value.forEach(p => {
  let ns = p.namespace;

  let rsts = p.resourceTypes.map(rst => ns + '/' + rst.resourceType);
  final = final.concat(rsts);

  p.resourceTypes.forEach(rst => {
    let aliases = rst.aliases.map(a => a.name)

    final = final.concat(aliases);
  });
});

final.sort();

fs.writeFile("random.data", final.join('\n'), function(err) {
  if(err) {
      return console.log(err);
  }

  console.log("The file was saved!");
}); 

此外,如果您在安装bashaz的情况下使用jq,则可以运行此:)

az provider list --expand resourceTypes/aliases | jq '[ .[].namespace + "/" + .[].resourceTypes[].resourceType , .[].resourceTypes[].aliases[]?.name ] | unique | sort' | less

您也可以将输出也通过管道传输到文件中,以便在其他脚本等中使用。

答案 2 :(得分:0)

here对于资源提供者也可以标记整个列表,here对于类型和操作也可用