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

无有效服务连接无法部署至Azure订阅,如何创建有效连接?

解决学生订阅下Azure DevOps服务连接创建及授权问题

一、确认订阅权限

  • 登录Azure门户,进入你的学生订阅,检查自身角色:进入订阅→访问控制(IAM)→角色分配,确认你拥有参与者或更高权限,否则无法创建服务连接或授权资源。

二、手动创建应用注册类型服务连接(绕过托管身份引导)

学生订阅默认引导托管身份,你可以手动选择服务主体(手动)类型创建:

  1. 打开Azure DevOps项目,进入项目设置 → 服务连接 → 新建服务连接
  2. 选择Azure资源管理器,点击下一步
  3. 选择服务主体(手动),点击下一步
  4. 先在Azure门户创建应用注册:
    • 打开Azure门户,搜索“应用注册” → 新注册
    • 填写名称(例如Flask-WebApp-Deploy),支持账户选择仅限此组织目录中的账户(匹配学校订阅)
    • 注册完成后,进入应用注册的证书和密码 → 客户端密码 → 新建客户端密码,设置过期时间,保存生成的密码值(仅显示一次,务必记录)
    • 回到应用注册概述,复制应用程序(客户端)ID和目录(租户)ID
  5. 回到Azure DevOps服务连接创建页面:
    • 填入租户ID、客户端ID、客户端密码
    • 选择你的学生订阅ID和名称
    • 填写服务连接名称(需和Pipeline中$(azureServiceConnectionId)变量值完全一致)
    • 勾选“允许所有管道使用此连接”,点击验证并保存

三、授权服务连接访问Web App资源

创建完服务连接后,必须给它分配Web App的访问权限:

  1. 打开Azure门户,进入你的Flask Web App资源
  2. 进入访问控制(IAM) → 添加 → 添加角色分配
  3. 角色选择网站参与者(或参与者,权限更全)
  4. 分配对象选择用户、组或服务主体,搜索你刚才创建的应用注册名称,选中后点击保存

四、检查Pipeline变量配置

确保你的Pipeline变量azureServiceConnectionId的取值,和你创建的服务连接名称完全一致(注意大小写敏感)。

替代方案:使用托管身份服务连接(如果无法创建应用注册)

如果学校订阅禁止创建应用注册,可改用托管身份:

  1. 在Azure DevOps创建托管身份类型的服务连接:
    • 进入项目设置→服务连接→新建服务连接→Azure资源管理器→托管身份→下一步
    • 选择你的学生订阅,填写服务连接名称,保存
  2. 给托管身份分配Web App权限:
    • 进入Web App的IAM→添加角色分配,角色选参与者
    • 分配对象选择托管身份,搜索Azure DevOps的托管身份(名称格式通常为你的DevOps项目名称-托管身份),选中后保存

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.14 05:43:11