You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

无需Azure CLI,如何通过Python SDK/API编程登录Azure?

无需Azure CLI的Python Azure服务主体认证方案

你可以直接使用Azure官方Python SDK中的azure-identity库实现服务主体认证,完全不需要依赖Azure CLI,以下是具体步骤和代码示例:

1. 安装必要依赖

首先安装认证及资源管理相关的Python包:

pip install azure-identity azure-mgmt-resource

2. 认证代码示例

使用服务主体的客户端ID、客户端密钥、租户ID完成认证,并指定目标订阅:

from azure.identity import ClientSecretCredential
from azure.mgmt.resource import SubscriptionClient

# 替换为你的实际凭证信息
TENANT_ID = "<tenant_id>"
CLIENT_ID = "<user_credentials>"  # 对应CLI命令中的-u参数
CLIENT_SECRET = "<password>"      # 对应CLI命令中的-p参数
SUBSCRIPTION_ID = "<subscription_id>"

# 创建服务主体凭证实例
credential = ClientSecretCredential(
    tenant_id=TENANT_ID,
    client_id=CLIENT_ID,
    client_secret=CLIENT_SECRET
)

# 验证认证并获取订阅信息(示例操作)
subscription_client = SubscriptionClient(credential)
target_subscription = subscription_client.subscriptions.get(SUBSCRIPTION_ID)

print(f"已成功认证并切换到订阅: {target_subscription.display_name} (ID: {target_subscription.subscription_id})")

关键参数对应说明

  • CLIENT_ID:对应你原CLI命令中-u后的服务主体ID
  • CLIENT_SECRET:对应原CLI命令中-p后的服务主体密钥
  • TENANT_ID:对应原CLI命令中--tenant后的租户ID
  • SUBSCRIPTION_ID:对应原CLI命令中az account set -s后的订阅ID

额外说明

  • 如果需要操作其他Azure服务(如存储、虚拟机等),只需安装对应管理包(如azure-mgmt-storage),并使用同一个credential对象初始化对应服务的客户端即可。
  • 生产环境中建议通过环境变量或密钥管理服务存储凭证,避免硬编码明文信息。

内容的提问来源于stack exchange,提问作者Timmy Suntichaiwakin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 22:12:33