能否使用服务账户证书登录Azure Portal网页端?
能否用服务账户证书登录Azure Portal?
答案是可以,不过Azure Portal本身不直接支持上传证书文件登录服务主体(即你所说的服务账户),但可以通过以下两种实用方法实现:
方法1:借助Azure CLI生成Portal登录链接
- 先通过Azure CLI完成服务主体的证书登录(这一步你已经熟练操作):
az login --service-principal -u <你的应用程序ID> -p <证书文件路径或证书数据> --tenant <你的租户ID> - 登录成功后,执行以下命令生成带权限令牌的Azure Portal登录链接:
az account get-access-token --query "accessToken" -o tsv | xargs -I {} echo "https://portal.azure.com/#@<你的租户ID>/?token={}" - 将生成的完整链接复制到浏览器打开,即可直接以该服务主体的身份访问Azure Portal,浏览它有权限的所有资源。
方法2:为服务主体配置交互式登录(需额外配置)
如果想要更贴近原生登录的体验,可以给服务主体开启交互式登录能力:
- 用拥有Azure AD管理员权限的账户登录Azure Portal,找到对应的Azure AD应用注册
- 进入“认证”页面,添加“移动和桌面应用”平台,并勾选“允许公共客户端流”
- 之后可以通过Azure AD PowerShell模块导入证书获取登录会话,或者用工具生成会话后跳转Portal,但这种方法需要额外配置,操作复杂度比第一种高。
注意:服务主体的权限范围决定了你在Portal中能查看和操作的资源,和CLI登录时的权限完全一致。
内容的提问来源于stack exchange,提问作者Antebios
相关产品推荐
相关产品推荐

