- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个 Azure CLI 脚本,它在 Cloud Shell 中运行得很好,但当我尝试将其包含在 devops 发布管道中时遇到了麻烦。出于调试目的,我将脚本简化为仅以服务主体身份登录,然后检索版本...
az login --service-principal -u http://[Service Principal name] -p [Service Principal password] --tenant [Service Principal tenant GUID]
az --version
...但仍然会出现同样的错误。
以下是我的 Azure CLI 任务的属性:
脚本类型:Shell
脚本位置:内联脚本
内联脚本:[同上]
脚本参数:
在脚本中访问服务主体详细信息:false
使用全局 Azure CLI 配置:false
工作目录:
标准错误失败:false
启用:true
出现错误时继续:false
*
环境变量:
错误是:
2020-06-15T12:46:39.8710944Z ##[error]Error Code: [1]
2020-06-15T12:46:39.8724737Z ##[error]Error: Azure login failed
2020-06-15T12:46:39.8728448Z ##[error]Script failed with error: Get Token request returned http error: 401 and server response: {"error":"invalid_client","error_description":"AADSTS7000222: The provided client secret keys are expired. Visit the Azure Portal to create new keys for your app, or consider using certificate credentials for added security: https://learn.microsoft.com/azure/active-directory/develop/active-directory-certificate-credentials
Trace ID: d0f42793-739e-4ce9-9118-5049086aa800
Correlation ID: 2ad50471-9c2a-4c02-a4d0-189efad2f0c8
Timestamp: 2020-06-15 12:46:39Z","error_codes":[7000222],"timestamp":"2020-06-15 12:46:39Z","trace_id":"d0f42793-739e-4ce9-9118-5049086aa800","correlation_id":"2ad50471-9c2a-4c02-a4d0-189efad2f0c8","error_uri":"https://login.microsoftonline.com/error?code=7000222"}
我能够使用 Azure Cloud Shell 作为此服务主体进行身份验证,因此我很困惑为什么我显然无法在发布管道中执行相同的操作。
* 我尝试过使用 Continue on error: true ,尽管任务完成了,但输出中仍出现相同的错误。
最佳答案
要在 Azure CLI 中使用服务主体,无需手动登录。
正确的方法,请按照以下步骤操作。
1.从错误消息来看,您的服务主体的客户端 key
(即客户端 key
)已过期。所以你需要先检查一下,导航到azure portal -> Azure Active Directory
-> 应用程序注册
-> 所有应用程序
-> 找到与您的服务主体相关的 AD 应用程序 -> 证书和 secret
-> 检查 secret 是否过期。如果已过期,只需点击新建客户端 key
即可创建一个新客户端 key 并保存该值。
2.在 devops 中,导航到项目设置
-> 服务连接
-> 新服务连接
-> Azure 资源Manager
-> 服务主体(手动)
。
然后用您的服务主体修复选项,您可以从应用程序注册页面中的 AD 应用程序获取值。 服务主体 ID
是应用程序(客户端)ID
,服务主体 key
是客户端 secret
。
订阅 ID
和 订阅名称
是您想要使用 Azure CLI 访问的内容,您可以在 azure 门户中找到它们。
输入值后 -> 验证
-> 验证并保存
。
3.在您的 Azure CLI
任务中 -> Azure 资源管理器连接
-> 在步骤 2 中选择服务连接。在我的示例中,我测试获取 Web我的订阅中的应用程序带有 az webapp show --name xxxx --resource-group xxxx
(注意:无需手动使用 az login
,它将自动使用在服务连接中配置的服务主体登录)。
然后运行它并检查结果,它工作正常。
关于azure - 使用服务主体 - invalid_client 从发布管道运行 Azure CLI 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62390138/
我试图实现的目标: iOS 客户端向后端发送 JWT token 。 后端 (Java) 调用 https://appleid.apple.com/auth/token验证 token 。 到目前为止
我正在开发一个受 OAuth2 身份验证保护的基本 grails 应用程序——code here .它只不过是 spring-security 和 spring-security-oauth 插件对于
我已经设置了一个在 IIS 中运行的 IdentityServer3 实例。 var validators = new List> { new
我正在尝试验证 Connect2id使用 Go test 进行设置,我收到以下错误。 "Client authentication failed: Missing client authenticat
我面临一个非常糟糕的问题,因为我阅读了很多指南和教程,但没有任何效果。 结果总是一样的:{"error":"invalid_client"} 我得到了代码、identityToken 和我需要的一切—
美好的一天, 我在获取访问 token 时遇到问题。我已按照此处的指南进行操作:http://developers.box.com/oauth/并且已经获取了我的 client_id、client_s
我正在尝试使用 IdentityServer3,但不知道为什么我总是收到“invalid_client”错误,无论我做什么。 这是我正在使用的代码: //Startup.cs (Auth c# pro
http://localhost:3000/oauth/token { "error": "invalid_client", "error_description": "Client authenti
store_token = context.acquire_token_with_device_code(resource_uri, code, client_id) File "/Users/j
我已在我的网络服务器上安装了 Google Drive Realtime API 示例文件,如下 these instructions ,包括在 Cloud Console 中生成 client_id
我正在为我的应用程序使用 Google Apps API,并尝试使用 OAuth2 对其进行授权。我使用 Google API 控制台创建了一个项目和其中的一个应用程序。我使用以下 URL 进行授权:
我正在使用带有 django-oauth-toolkit 的 django rest 框架。当我在本地主机上请求访问 token 时,它会给我访问 token ,如下所示 ~/django_app$
我有一个使用 ASP.NET Identity 运行的 IdentityServer4 应用程序。我想使用它,以便其他应用程序的用户可以通过我的远程身份服务器登录。 我已使用以下设置在身份服务器中配置
我正在使用带有 django-oauth-toolkit 的 django rest 框架。当我在本地主机上请求访问 token 时,它会给我访问 token ,如下所示 ~/django_app$
我在使用 Amazon Cognito 中的授权代码流时遇到困难。我正在尝试构建的工作流程如下: 用户使用内置 Cognito UI 进行身份验证。 Cognito 使用授权码重定向回来。 我将代码发
我有一个旧项目,试图从谷歌分析中检索数据。 它不工作,所以我想找出问题所在。 找到了在服务器端使用 Analytics 的示例代码。 scope = ['https://www.googleapi
我们正在使用 ShareKit对于在 youtube 上分享视频,代码工作正常但现在出现错误 YouTube authentication finished with error:Error Dom
关闭。这个问题需要更多focused .它目前不接受答案。 想改进这个问题吗? 更新问题,使其只关注一个问题 editing this post . 关闭 3 年前。 Improve this qu
我正在使用 python 社交身份验证在我的应用程序上实现谷歌登录。但是我得到以下错误 Error: invalid_client The OAuth client was not found. 我已
我正在尝试使用 spotifyr 包从 Spotify 中提取数据,但是任何需要访问 token 的函数都不起作用(例如 get_my_recently_played(limit = 5))。运行时出
我是一名优秀的程序员,十分优秀!