我需要列出所有订阅的 Azure 帐户中的 Azure SQL 服务器。 我需要在一次调用中列出所有订阅的它们,或者是否有其他方法可以实现此目的,例如使用 Azure 帐户的脚本(除了 API 调用之外)?请帮忙。如果还提供脚本,那就真的很有帮助了。
我知道使用 Azure Rest API 这是可能的,但我们一次只能列出一个订阅。但我希望所有订阅都能同时得到回复。
感谢@Peter Bons 的评论。
是的,您可以在 Resource Graph Explorer 中查看结果。
如果您想使用 CloudShell,请检查下面的 Bash 脚本以获取 SQL 资源列表。
打开
Azure Cloud Shell
,
您需要拥有其他订阅的读取权限才能列出资源。
在 Bash 中,运行以下命令来获取 SQL 查询列表
az sql server list
sub_ids=$(az account list --all --query '[].id' -o tsv)
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
输出:
由于我没有其他订阅的授权,因此出现以下错误。
确保您具有读取其他订阅所需的权限。