azure - 如何列出 Azure 租户中的所有资源?
问题描述
我在 Azure 租户中有多个订阅,我想列出租户中的所有资源(IP 地址、VM 等)。这与列出所有订阅中的资源相同吗?
我们可以轻松地列出订阅中的所有资源,并使用服务主体访问它。但是,当您尝试为租户执行此操作时会出现一些问题。是否可以创建适用于整个租户或租户中所有订阅的服务主体或等效项(取决于第一个问题的答案),从而允许使用脚本列出所有资源?
编辑:实际上,我真正想做的是使用 python 脚本列出 Azure 租户中的所有公共 IP:
def get_public_ips(self):
"""@returns: All public ip adresses in the ressource defined by the service principal"""
ips=[]
rmc = get_client_from_auth_file(ResourceManagementClient, auth_path=PATH+"azure_creds.json")
for r in rmc.resources.list(filter="resourceType eq 'Microsoft.Network/publicIPAddresses'", expand='True'):
#There were no way to get the ip adress directly...
ip = rmc.resources.get_by_id(r.id, "2019-09-01")
ips.append(ip.properties['ipAddress'])
return common.sanitize_ips_list(ips)
该脚本已经可以列出所有 IP,但它使用服务主体进行身份验证:https ://docs.microsoft.com/en-us/python/api/msrestazure/msrestazure.azure_active_directory?view=azure-python
我想知道如何对整个租户做同样的事情。这个活动可以吗?相同的脚本脚本是否可以通过简单地使用另一种身份验证方式来工作,即使用对租户的整个资源具有读取权限的身份验证实体?
谢谢
解决方案
推荐阅读
- php - 从不同于我正在工作的 PHP 服务器发送 mail()
- c# - 为什么派生类中不调用该方法
- excel - 为什么我在打破公式时会出错?
- c# - null 的可空日期时间验证
- java - Makefile:致命错误:jni.h:没有这样的文件或目录
- mysql - 如何使用 Play JSON 为 MySQL 创建 Doobie Meta 实例?
- java - JPA:如何仅与 ID 而不是对象建立关系?
- python-3.x - 在单类汽车上训练,但预测其他类
- visual-studio-code - 在 VS Code 中,有没有办法打开所有有合并冲突的文件?
- javascript - 添加播放按钮以触发javascript时间滑块?