列出 Azure 帐户中所有订阅的 Azure 资源

问题描述 投票:0回答:1

我需要列出所有订阅的 Azure 帐户中的 Azure SQL 服务器。 我需要在一次调用中列出所有订阅的它们,或者是否有其他方法可以实现此目的,例如使用 Azure 帐户的脚本(除了 API 调用之外)?请帮忙。如果还提供脚本,那就真的很有帮助了。

我知道使用 Azure Rest API 这是可能的,但我们一次只能列出一个订阅。但我希望所有订阅都能同时得到回复。

azure subscription
1个回答
0
投票

感谢@Peter Bons 的评论。

是的,您可以在 Resource Graph Explorer 中查看结果。

如果您想使用 CloudShell,请检查下面的 Bash 脚本以获取 SQL 资源列表。

打开

Azure Cloud Shell
enter image description here

  • 您需要拥有其他订阅的读取权限才能列出资源。

  • 在 Bash 中,运行以下命令来获取 SQL 查询列表

 az sql server list
  • 首先将所有订阅放入一个变量中
sub_ids=$(az account list --all --query '[].id' -o tsv)
  • 循环订阅 ID 以获取 SQL Server 列表。
sub_ids=$(az account list --all --query '[].id' -o tsv)
for sub_id in $sub_ids; 
do
echo "List of SQL Servers for Subscription ID: $sub_id"     
  
az sql server list --subscription $sub_id --query '[].{SQLServer: name, ResourceGroup: resourceGroup, Location: location}' --output table
    
done

输出:enter image description here

由于我没有其他订阅的授权,因此出现以下错误。

enter image description here

确保您具有读取其他订阅所需的权限。

© www.soinside.com 2019 - 2024. All rights reserved.