【Azure Developer】Python 获取 Azure 中订阅(subscription)信息,包含ID, Name等

问题描述

在Azure AD中注册一个Applicaiton后,对其进行授权,能够查看所有订阅的ReadOnly权限,然后,是否可以同通过Python代码,在完成Authorization后(使用Client ID, Client Secret),List能查看到所有的订阅信息(包含ID和名称等)?

 

问题答案

可以的。

在Azure SDK for Python中,有 SubscriptionsOperations 类,可以 List 出所有的Subscription对象。 

SubscriptionsOperations Class,You should not instantiate this class directly. Instead, you should create a Client instance that instantiates it for you and attaches it as an attribute. 

List : Gets all subscriptions for a tenant. (https://docs.microsoft.com/en-us/python/api/azure-mgmt-subscription/azure.mgmt.subscription.operations.subscriptionsoperations?view=azure-python#list---kwargs-)

 

示例代码(把其中AAD认证相关信息替换即可)

复制代码
from azure.identity import ClientSecretCredential
from azure.mgmt.resource import SubscriptionClient
from msrestazure.azure_cloud import AZURE_CHINA_CLOUD 

credentials = ClientSecretCredential(client_id='', client_secret='', tenant_id='',authority=AZURE_CHINA_CLOUD.endpoints.active_directory)

subscription_client = SubscriptionClient(credentials, base_url=AZURE_CHINA_CLOUD.endpoints.resource_manager, credential_scopes=["https://management.chinacloudapi.cn/.default"])

subscription_list=subscription_client.subscriptions.list()

for subscription in list(subscription_list):
   print(f"{subscription.subscription_id}   {subscription.display_name}")
复制代码

 

参考资料

SubscriptionsOperations Class : https://docs.microsoft.com/en-us/python/api/azure-mgmt-subscription/azure.mgmt.subscription.operations.subscriptionsoperations?view=azure-python

 

posted @   路边两盏灯  阅读(260)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示