Azure DevOps Kubernetes服务连接报错7000222,如何查找应用ID?
解决Azure DevOps Kubernetes服务连接客户端密钥过期后查找应用ID的问题
方法1:直接从Azure DevOps服务连接详情获取
- 打开你的Azure DevOps项目,点击左下角的项目设置(齿轮图标)。
- 进入服务连接页面,找到流水线中使用的那个Kubernetes服务连接。
- 点击该服务连接的名称进入详情页,在页面中找到服务主体ID字段,这个就是对应的应用ID(客户端ID)。
方法2:通过Azure CLI查询关联的服务主体
如果服务连接详情里没找到,用Azure CLI来查:
- 先从服务连接详情里记下对应的Azure订阅ID。
- 打开Azure CLI,执行
az login登录到你的Azure租户。 - 执行以下命令列出该订阅下的服务主体,替换
你的服务连接名称关键词为服务连接的部分名称:az ad sp list --query "[?contains(displayName, '你的服务连接名称关键词')].{名称:displayName, 应用ID:appId}" --output table - 或者通过订阅的角色分配来查找,替换
你的订阅ID:
这里的az role assignment list --subscription 你的订阅ID --query "[?principalType=='ServicePrincipal'].{主体名称:principalName, 应用ID:principalId}" --output table应用ID就是你要找的客户端ID。
方法3:检查流水线完整日志
有些情况下,流水线的完整日志(非简化版)可能会显示未被屏蔽的应用ID,你可以去流水线的执行记录里查看完整日志输出,搜索相关关键词找线索。
找到应用ID后,直接去Azure门户的应用注册页面,搜索这个ID就能定位到对应的应用,然后更新客户端密钥即可。
内容的提问来源于stack exchange,提问作者Sohlae
相关产品推荐
相关产品推荐

